2011-11-16 雨,雨の夜道は暗くて怖い [長年日記]
_1 TigerVNC
今後の自動化を見据えてできるだけCUIで済ませたいところだが,GUIの方がラクな(もしくはGUIしかできない)場合があるのでVNCを設定.今時はTigerVNCというパッケージが入っているみたい.
yum経由でパッケージをインストールし,おもむろに
# vncserver
として起動.初回起動時はパスワードが聞かれるので入力.パスワードはvncpasswdコマンドを実行して設定するのも可.パスワード設定せずにサービス起動しようとするとNGになるので注意.せっかくなのでWindowsにインストールするクライアントもTigerVNCにしてみた.特に理由はない.接続しようとするも
A socket operation was attempted to an unreachable host. (10065)
とエラーメッセージが出てうまくいかない.どうもホスト側のFirewallで弾かれている様子.いろいろ調べて辿り着いたのが以下の内容.
# cat /etc/sysconfig/iptables # Firewall configuration written by system-config-firewall # Manual customization of this file is not recommended. *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 5902 -j ACCEPT ★ -A INPUT -m state --state NEW -m tcp -p tcp --dport 5903 -j ACCEPT ★ -A INPUT -j REJECT --reject-with icmp-host-prohibited ☆ -A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT #
最初★行を☆行の後ろに書いてたのが原因.順番を変えると無事ポート開放できた.REJECTしたらあとは受け付けないのね.このあたりの知識が乏しいのが辛い.
でTigerVNCの設定は
VNCSERVERS="2:root 3:tmuneda" VNCSERVERARGS[2]="-geometry 1024x700" VNCSERVERARGS[3]="-geometry 1024x700"
のように.VNCSEVERSに起動したいセッションを並べて記述.またそれぞれのセッションを起動する際の引数もそれぞれ記述.VNCSERVERARGS[X]の X がVNCSERVERSで記述した数字に該当する引数として利用される.上記の例の場合,2がroot,3がtmunedaに使用される.
あとはクライアント側からポート5902にアクセスするとrootで,5903にアクセスするとtmunedaでGUIが利用可能になる.
_2 VNCのクライアント・サーバーでクリップボードを共有する
クライアント側のブラウザで調べた内容をサーバー側のあちこちにコピペするために.これにはvncconfigを使う.vncconfig(1)に
When run with no options, it runs as a kind of "helper" application for Xvnc. Its main purpose when run in this mode is to support clipboard transfer to and from the VNC viewer(s). Note that without a running instance of vncconfig there will be no clipboard support.
とある.どこで起動するようにしているのか知らないが,VNCでログインすると勝手に立ち上がっててくれるのでそのまま利用している.かなり便利.