「Xhost」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(→‎使用方法: 情報を更新)
(他言語へのリンクを追加)
 
(同じ利用者による、間の2版が非表示)
1行目: 1行目:
 
[[Category:X サーバー]]
 
[[Category:X サーバー]]
 
[[en:Xhost]]
 
[[en:Xhost]]
[[ko:Xhost]]
+
[[pt:Xhost]]
  +
[[ru:Xhost]]
 
Xhost の man ページより:
 
Xhost の man ページより:
   
24行目: 25行目:
 
{{ic|xhost +}} は X 認証を完全に無効にします。自分が何をしているのか本当にわかっていない場合、それを '''しない''' でください。
 
{{ic|xhost +}} は X 認証を完全に無効にします。自分が何をしているのか本当にわかっていない場合、それを '''しない''' でください。
   
==cannot connect to X server :0.0==
+
== The 'cannot connect to X server :0.0' output ==
   
{{Warning|以下のコマンドはアクセス制御を無効化するため、システム上のあらゆるユーザー (X をネットワーク上で動作させている場合、ネットワーク上のユーザー) が特に認証をしなくても $DISPLAY にアクセスできるようになります。X サーバーの中で他のユーザーがアプリケーションを起動できるようになるので注意してください (キーロガーなどを起動させられる可能性があります)。}}
+
{{Warning|以下のコマンドはアクセス制御を無効化するため、システム上のあらゆるユーザー (X をネットワーク上で動作させている場合、ネットワーク上のユーザー) が特に認証をしなくても $DISPLAY にアクセスできるようになります。X サーバーの中で他のユーザーがアプリケーションを起動できるようになるので注意してください (キーロガーなどを起動させられる可能性があります。)}}
   
  +
上記のコマンド {{ic|xhost +}} は、瞬間的ではありますが、この出力を取り除きます。多くの方法の中で、この問題を永続的に取り除く方法の1つは
上記の '''xhost +''' コマンドは一時的にしか効果がありません。永続的に問題を解決するには以下を {{ic|~/.bashrc}} ファイルに追加:
 
   
 
xhost + >/dev/null
 
xhost + >/dev/null
   
ターミナルを立ち上げるたびにコマンドが実行されるようになります。{{ic|>/dev/null}} を記述しなかった場合、ターミナルを起動するたびに次のようなメッセージが表示されます: ''access control disabled, clients can connect from any host''。
+
を {{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年4月13日 (木) 01:27時点における最新版

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 を実行できることを確認するためのものです。

参照