CentOS 5.5でVNCサーバーの設定

CentOS5.5 x86-64でのVNCサーバーの設定メモ。個人的過ぎるメモ。

xinetdをつかって、必要なときだけ接続できるように設定。

rderaさんのCentOS5.3にVNCでアクセスできるようにした。がまとまっててよかったので参考にさせていただきました。

以下その抜粋と、一部修正(5.5と5.3だと微妙に違うのかな?)

2011/03/15: 設定が間違っていたので修正

管理者で必要なものをインストール

yum install xinetd vnc vnc-server

/etc/services に以下を追加

  vnc 5900/tcp # VNC Server

※5900番ポートで待ち受け

※GUIだと、「システム」→「管理」→「サーバーの設定」→「サービス」でいけそう(要検証)

/etc/xinetd.d/ に「vnc」で起動ファイルを作成( /etc/xinetd.d/vnc

service vnc
{
        disable         = no
        socket_type     = stream
        wait            = no
        user            = nobody
        instance        = 3
        server          = /usr/bin/Xvnc
        server_args     = -inetd -query localhost -once -geometry 800x600 -depth 16 -SecurityTypes None
        only_from       = 192.168.1.0/24 127.0.0.1
        log_on_success  += DURATION
        log_on_failure  += HOST
}

※詳細は参考サイト参照

※server_args の行は勝手に改行されやすいので、保存前に一行になっているか確認(これ気づくのに時間がかかった)

※localhostをサーバーのIPにしないと、GUIで管理者以外でログインし、管理者権限まで昇格できない

※-depth 24にしても16と大差ないから24でいいかも。綺麗だし

※Login画面をローカルと同じにするには、GUIからの方が楽。「システム」→「管理」→「ログイン画面」で変更可

/etc/gdm/custom.conf でGnomeが使えるようにとセキュリティの設定。

[security]
AllowRemoteRoot=false

[xdmcp]
Enable=true

[gui]

[greeter]
IncludeAll=false

Firewallで 5900/tcp を許可

※GUIなら「システム」→「管理」→「セキュリティレベルとファイヤーウォールの設定」で変更

※CUIなら管理者権限で「setup」を実行。「ファイヤーウォールの設定」→「カスタマイズ」で変更

ここで再起動して設定終了。

あとはクライアントからアクセスしてつながればOK.

だめならファイヤーウォールの設定が合っているか、 /etc/xinetd.d/vnc で変な改行がないかを確認。