「Xhost」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(参照の項目を追加)
33行目: 33行目:
   
 
を {{ic|~/.bashrc}} ファイルに追加してください。こうすることで、ターミナルを起動するたびにコマンドが実行されるようになります。ホームディレクトリにまだ {{ic|.bashrc}} ファイルがない場合は、この行だけ追加して作成してもかまいません。もし {{ic|> /dev/null}} を追加しない場合、ターミナルを起動するたびに、''access control disabled, clients can connect from any host''' というメッセージが表示されますが、これは現在問題なく root として ''your_software'' を実行できることを確認するためのものです。
 
を {{ic|~/.bashrc}} ファイルに追加してください。こうすることで、ターミナルを起動するたびにコマンドが実行されるようになります。ホームディレクトリにまだ {{ic|.bashrc}} ファイルがない場合は、この行だけ追加して作成してもかまいません。もし {{ic|> /dev/null}} を追加しない場合、ターミナルを起動するたびに、''access control disabled, clients can connect from any host''' というメッセージが表示されますが、これは現在問題なく root として ''your_software'' を実行できることを確認するためのものです。
  +
  +
== 参照 ==
  +
  +
* [https://github.com/mviereck/x11docker/wiki/X-authentication-with-cookies-and-xhost-(%22No-protocol-specified%22-error)#xhost X authentication with cookies and xhost ("No protocol specified" error)]

2023年2月9日 (木) 03:20時点における版

Xhost の man ページより:

xhost プログラムは、X サーバへの接続が許可されるホスト名とユーザー名をリストに追加・削除する。ホストの場合には、このプログラムはプライバシー制御とセキュリティの基本的な仕組みを提供する。これはマシンの悪用を制限することはできるが、ワークステーション環境 (ユーザ1人) に対して十分であるに過ぎない。もっと洗練された方法を必要とする環境においては、(ホスト単位でなく) ユーザーに基づく機構の実装をするか、プロトコルにおいて他の認証データをサーバに渡すためのフックを使用しなければならない。

詳しくは xhost(1) を見てください。

インストール

xorg-xhost パッケージをインストールしてください。

使用方法

警告: このコマンドにより、あらゆるローカルユーザーが X のスクリーンへのアクセス権を与えられます。ユーザーが一人なら問題ないかもしれませんが、複数ユーザーがいる環境では普通問題です。X スクリーンに root でのアクセスを許可したいなら、$XAUTHORITY 環境変数を設定するのが望ましいです。既定では sudo あるいは su (su - ではありません) に設定されています。

sudo や su で実行されるアプリケーションにグラフィカルサーバー (X セッションまたはコンピュータースクリーン) へのアクセス権を与えるには、ターミナルを開いて通常ユーザーで以下を入力してください (su - は使わないでください):

$ xhost +local:

X 画面へのアクセスを制限する、通常状態に戻すには:

$ xhost -

xhost + は X 認証を完全に無効にします。自分が何をしているのか本当にわかっていない場合、それを しない でください。

The 'cannot connect to X server :0.0' output

警告: 以下のコマンドはアクセス制御を無効化するため、システム上のあらゆるユーザー (X をネットワーク上で動作させている場合、ネットワーク上のユーザー) が特に認証をしなくても $DISPLAY にアクセスできるようになります。X サーバーの中で他のユーザーがアプリケーションを起動できるようになるので注意してください (キーロガーなどを起動させられる可能性があります)。

上記のコマンド xhost + は、瞬間的ではありますが、この出力を取り除きます。多くの方法の中で、この問題を永続的に取り除く方法の1つは

xhost + >/dev/null

~/.bashrc ファイルに追加してください。こうすることで、ターミナルを起動するたびにコマンドが実行されるようになります。ホームディレクトリにまだ .bashrc ファイルがない場合は、この行だけ追加して作成してもかまいません。もし > /dev/null を追加しない場合、ターミナルを起動するたびに、access control disabled, clients can connect from any host' というメッセージが表示されますが、これは現在問題なく root として your_software を実行できることを確認するためのものです。

参照