コマンドラインのマニュアル

Man » xauth マニュアルオンライン - xauth マニュアルページの詳細なオンラインドキュメント

🌍
xauth - X 認証ファイルユーティリティ

概要

xauth [ -f authfile ] [ -vqibn ] [ コマンド 引数 ... ]

説明

xauth プログラムは、X サーバーへの接続に使用される認証情報を編集および表示するために使用されます。通常、このプログラムは、あるマシンから認証レコードを抽出し、別のマシンにマージするために使用されます(リモートログインまたは他のユーザーへのアクセス権の付与の場合)。コマンド(以下に説明)は、対話的に、xauth コマンドラインで、またはスクリプトで入力できます。このプログラムは、generate コマンドが使用される場合を除き、X サーバーに連絡しません。通常、xauth は、最初に認証ファイルエントリを作成するために使用されません。X サーバーを開始するプログラム(多くの場合、xdm または startx)がその処理を行います。

オプション

次のオプションは、xauth で使用できます。これらは個別に(例:-q -i)または組み合わせて(例:-qi)指定できます。

-f authfile

このオプションは、使用する認証ファイルの名前を指定します。デフォルトでは、xauth は XAUTHORITY 環境変数で指定されたファイル、またはユーザーのホームディレクトリにある .Xauthority ファイルを使用します。

-q      このオプションは、xauth が静かに動作し、不要なステータスメッセージを出力しないことを示します。これは、xauth コマンドがコマンドラインで指定された場合、または標準出力がターミナルにリダイレクトされない場合にデフォルトです。

-v      このオプションは、xauth が詳細な動作を行い、さまざまな操作の結果を示すステータスメッセージ(たとえば、読み込まれたレコードまたは書き込まれたレコードの数)を出力することを示します。これは、xauth が標準入力からコマンドを読み取り、標準出力がターミナルにリダイレクトされる場合にデフォルトです。

-i      このオプションは、xauth が任意の認証ファイルロックを無視することを示します。通常、xauth は、他のプログラム(通常は xdm または別の xauth)によってロックされた認証ファイルを読み込んだり編集したりしません。

-b      このオプションは、xauth が続行する前に任意の認証ファイルロックを解除しようとすることを示します。このオプションは、古いロックをクリーンアップするためだけに使用してください。

-n      このオプションは、xauth がホスト名を解決しようとせず、認証ファイルに格納されているホストアドレスを常に表示することを示します。

-V      このオプションは、xauth 実行可能ファイルのバージョン番号を表示します。

コマンド

次のコマンドを使用して、認証ファイルを操作できます。

add displayname protocolname hexkey

指定されたディスプレイ、プロトコル、およびキーデータのエントリが、認証ファイルに追加されます。データは、各ペアが 1 オクテットを表す、偶数の長さの 16 進数の文字列として指定されます。各ペアの最初の桁はオクテットの上位 4 ビットを示し、ペアの 2 番目の桁は下位 4 ビットを示します。たとえば、32 文字の hexkey は 128 ビットの値を表します。単一のピリオッドのみで構成されるプロトコル名は、MIT-MAGIC-COOKIE-1 の省略形として扱われます。


generate displayname protocolname [trusted|untrusted]
[timeout seconds] [group group-id] [data hexdata]

このコマンドは、add コマンドと似ています。主な違いは、ユーザーがキーデータを指定する必要がある代わりに、displayname で指定されたサーバーに接続し、SECURITY 拡張機能を使用して、承認ファイルに保存するキーデータを取得することです。サーバーに接続できない場合、または SECURITY 拡張機能をサポートしていない場合、コマンドは失敗します。それ以外の場合は、指定されたディスプレイに対して、指定されたプロトコルを使用して、承認ファイルに承認エントリが追加されます。単一のドットのみで構成されるプロトコル名は、MIT-MAGIC-COOKIE-1 の省略形として扱われます。

trusted オプションを使用すると、この承認を使用して接続するクライアントは、通常どおりディスプレイ全体を自由に操作できます。untrusted を使用すると、この承認を使用して接続するクライアントは信頼できないものと見なされ、信頼できるクライアントが所有するデータや信頼できるクライアントが操作するデータを盗んだり改ざんしたりすることができなくなります。信頼できないクライアントに課せられる制限の詳細については、SECURITY 拡張機能の仕様を参照してください。デフォルトは untrusted です。

timeout オプションは、この承認が有効になる秒数を指定します。この期間よりも長く承認が使用されず(これに接続するクライアントがいない場合)、サーバーは承認を破棄し、それを使用して接続しようとする将来の試みは失敗します。サーバーによって行われるパージは、承認ファイルから承認エントリを削除するものではないことに注意してください。デフォルトのタイムアウトは 60 秒です。

group オプションは、この承認を使用して接続するクライアントが属するアプリケーショングループを指定します。アプリケーショングループ拡張機能の仕様を参照して、詳細を確認してください。デフォルトでは、アプリケーショングループには属しません。

data オプションは、サーバーが承認を生成するために使用するデータを指定します。ただし、これは承認ファイルに書き込まれるデータと同じではありません。このデータの解釈は、承認プロトコルによって異なります。hexdata は、add コマンドで説明されている hexkey と同じ形式です。デフォルトは、データを送信しないことです。

[n]extract filename displayname...

指定された各ディスプレイの承認エントリは、指定されたファイルに書き込まれます。nextract コマンドを使用すると、エントリは非バイナリ形式で書き込まれ、セキュアな電子メールなどの方法で送信できるようになります。抽出されたエントリは、merge コマンドと nmerge コマンドを使用して読み戻すことができます。ファイル名が単一のダッシュの場合、エントリは標準出力に書き込まれます。


[n]list [displayname...]

指定されたディスプレイ(またはディスプレイ名が指定されていない場合はすべて)の認証エントリが標準出力に出力されます。nlistコマンドが使用された場合、エントリはnextractコマンドで使用される数値形式で表示されます。そうでない場合は、テキスト形式で表示されます。キーデータは常に、addコマンドの説明に記載されているように、16進形式で表示されます。

[n]merge [filename...]

指定されたファイルから認証エントリを読み込み、認証データベースにマージして、既存のエントリを上書きします。nmergeコマンドが使用された場合、extractコマンドの説明に記載されている数値形式が使用されます。ファイル名が単一のハイフンだけで構成されている場合、標準入力が読み込まれます(ただし、既に読み込まれていない場合)。

remove displayname...

指定されたディスプレイに一致する認証エントリが、権限ファイルから削除されます。

source filename

指定されたファイルは、実行するxauthコマンドを含むスクリプトとして扱われます。空白行と先頭がシャープ記号(#)で始まる行は無視されます。単一のハイフンを使用して標準入力を指定できます(ただし、既に読み込まれていない場合)。

info 認証ファイルの説明、変更が行われたかどうか、およびxauthコマンドがどこから読み込まれているかが標準出力に出力されます。

exit 変更が行われた場合、権限ファイルが書き出され(許可されている場合)、プログラムが終了します。ファイルの終わりは、暗黙の終了コマンドとして扱われます。

quit 変更を無視してプログラムが終了します。これは、割り込み文字を押すことでも実行できます。

version xauth実行ファイルのバージョン番号が表示されます。

help [string]

指定された文字列で始まるすべてのコマンド(または文字列が指定されていない場合はすべてのコマンド)の説明が標準出力に出力されます。

? 有効なコマンドの短いリストが標準出力に出力されます。

ディスプレイ名

^ dd[n]extract[n]list[n]merge、およびremoveコマンドで使用されるディスプレイ名は、DISPLAY環境変数および一般的な-displayコマンドライン引数と同じ形式を使用します。ディスプレイ固有の情報(画面番号など)は不要であり、無視されます。同じマシン上の接続(ローカルホストソケット、共有メモリ、およびインターネットプロトコルホスト名localhostなど)は、hostname/unix:displaynumberとして参照されるため、異なるマシンに対するローカルエントリを1つの権限ファイルに保存できます。

xauthの最も一般的な使用方法は、現在のディスプレイのエントリを抽出して別のマシンにコピーし、リモートマシンのユーザーの権限ファイルにマージすることです。

%  xauth extract - $DISPLAY | ssh otherhost xauth merge

次のコマンドは、サーバー:0に連絡して、MIT-MAGICCOOKIE-1プロトコルを使用して認証を作成します。この認証で接続するクライアントは信頼されません。 % xauth generate :0 .


環境

この xauth プログラムは、以下の環境変数を使用します。

XAUTHORITY
-f オプションが使用されていない場合に、使用する認証ファイルの名前を取得します。

HOME
XAUTHORITY が定義されていない場合に、ユーザーのホームディレクトリを取得します。

ファイル

$HOME/.Xauthority
XAUTHORITY が定義されていない場合のデフォルトの認証ファイル。

関連項目

X(7), Xsecurity(7), xhost(1), Xserver(1), xdm(1), startx(1), Xau(3)。

バグ

セキュリティの低いネットワークを使用しているユーザーは、マシン間で認証エントリをコピーする際に、暗号化されたファイル転送メカニズムを使用するように注意する必要があります。同様に、MIT-MAGIC-COOKIE-1 プロトコルは、セキュリティの低い環境ではあまり役に立ちません。追加のセキュリティに関心のあるサイトは、Kerberos などの暗号化された認証メカニズムを使用する必要がある場合があります。

現在、プロトコル名にスペースは許可されていません。本当に奇妙な場合には、引用符を追加することができます。

著者

ジム・フルトン、MIT X コンソーシアム