藤田と申します。 私もこのあたりの話に興味があるのでいろいろためしました。 remote_host : X クライアント local_host : X サーバ ということで書いています。 両方共 Vine Linux を想定しています。 Date: Fri, Jul 15, 2005 at 01:29:09PM +0900 Subject: [vine-users:072429] startx からX を立ち上げると xserverrc を読みません Message-Id: <42D73B95.9040607@xxxxxxxxxx> > 吉見と申します。 > > linux 3.1 を使っています。 > > 仕事場で使用しているマシンで、リモートマシンで走らせるXクライアントをX > window 上に開かせる必要があります。 という目的だけであるなら、ssh のポートフォワーディングで可能です。 Xクライアント側が Vine Linux なら ssh で local_host から remote_host に ログインした時に user@remote_host% echo $DISPLAY <remote_host>:10.0 の様に、remote_host の 6010 ポートに X プロトコルを投げるように なっているようです。 6010 は ssh でフォワーディングされ local_host の 6000 につながっているようです。 このため、X クライアント側ではただたんに、 user@remote_host% kterm とするだけで、X サーバ側(local_host)に表示されました。 > ログインはテキストで行い、そこでstartx で起動します。 > しかし、xauth などの設定を行ってもできません。 > > 具体的には、 > ○ ps eaxwf |grep /usr/X11R6/bin/X > とすると、以下のように表示される > 3607 ? S 268:27 \_ /usr/X11R6/bin/X :0 -dpi 96 > -nolisten tcp > > ○ remote マシンで、kterm -display local:0.0 としてもエラーになる。 > > などです。X クライアントが使用するポート 6000 が開いていないのです。セ > キュリティ上は問題あるようですが、仕事上リモートマシンのクライアントの表 > 示ができないと困るのです。 > > > 詳しくしらべると、原因はstartxにあることがわかりました。 > startxはシェルスクリプトで、引数をつくってxinitを呼んでいるのですが、そ > のなかで、 > > serverargs="-dpi 96 -nolisten tcp" > > として -nolisten tcp をセットしています。 これを外せば X11 をそのまま通すことができますが、セキュリティ上 よくないと言われています。 (略) > 逃げ方としては、 > (A) startx を書き換えて nolisten tcp をはずす 私は当初、(A)で回避していましたが、いろいろ調べて行くうちに ssh の forwarding で大丈夫であることがわかりました。 (後略)