Linux で、リモートデスクトップ (VNC) を使ってリモートからアクセスする方法

Fedora Core 5 のディストリビューションを使っている場合には、vino-server というリモートデスクトップのサーバが入っているので、サーバ側はそのまま使えばよい。しかしこのとき、設定に関して以下のような注意が必要である。
  1. VNC では、ポート 5900-5999 を使う。これは、5901 がリモートデスクトップ1、5902 がデスクトップ2…というように対応しているからである。従って、ファイアーウォールをオンにしているような場合には、メニューの デスクトップ-管理-セキュリティレベルとファイアウォール の設定で、以下の図のようにポート 5900-5999 を空けてあげる必要がある。 Screenshot_Security_Level_Settings.png
  2. サーバに接続できたとしても、画面が表示されない場合は、 デスクトップ-設定-リモートデスクトップ で、以下の画面で「承認が必要」がチェックされていると、クライアントからアクセスされたサーバは自身の画面に「拒否/許可」のダイアログを出すこととなり、許可のボタンが人為的に押されない限りクライアントからはアクセスできないため、このチェックをはずしておく。 Screenshot_Remote_Desktop_Settings.png
さて、Fedora Core 5 の場合は、上の vino だけでも VNC クライアントからアクセスできるはずだが、Fedora Core 5 付属の vino-server を使わないで、VNC サーバを使う方がより一般的だろう。 依然としてファイアウォールのポート 5900-5999 は空けた上で、Fedora Core 5 の場合は、以下の手順で設定する。
  1. デスクトップ-管理-サーバ設定-サービス より、以下のように vncserver をチェックする。 Screenshot_Services_Settings.png
  2. /etc/sysconfig/vncservers を設定する(こんなこと書くと怒られそうだけど、root でアクセスしたい場合)。
    VNCSERVERS="1:root"
    VNCSERVERARGS[1]="-geometry 1024x768 -nolisten tcp -nohttpd"
  3. vncpasswd コマンドで VNC のパスワードを設定する。
    $ vncpasswd
  4. 一度 VNC サーバを起動する。
    $ service vncserver start
  5. 以下のように、~/.vnc/xstartup ファイルを修正する。
    $ vi ~/.vnc/xstartup

    #!/bin/sh

    # Uncomment the following two lines for normal desktop:
    # unset SESSION_MANAGER
    exec /etc/X11/xinit/xinitrc

    [ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
    [ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
    #xsetroot -solid grey
    #vncconfig -iconic &
    #xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
    #twm &
    gnome-session &
  6. VNC サーバを再起動する。
    $ service vncserver restart
Updated: 2006/10/30 Created: 2006/08/05
トラックバック URL: https://perltips.twinkle.cc/trackback/116
いつもいつも大変役に立ちました.ありがとうございます.
Posted by M J (未認証ユーザ) on 2007/06/19(火) 00:00
CentOSでリモートデスクトップ
Trackback from GarageMemo: CentOS5にデフォルトでインストールされているvino-serverを使えば煩わしい設定をせずにクライアントからVNCクライアントで接続するだけで遠隔......
Posted by GarageMemo (未認証ユーザ) on 2007/07/20(金) 01:09
ログオフすると再接続が出来ません。
VNCで接続したあとログオフすると、再度、VNCで接続しようとすると接続できません。 何か設定が必要でしょうか。 ログオフにた時にVNCサービスが停止したのではと思い、 試しに、サーバ側のVNCサービスを停止してみたところ、VNCで接続できました。
Posted by fu (未認証ユーザ) on 2008/12/04(木) 17:37