Linux(redhat)のGUIをWindowsからリモート操作する方法

すぐに忘れるのでメモ。
Linuxサーバを操作するときはteratermとかでアクセスすることがほとんどですが、
たまにLinuxのGUIでの操作が必要になる時があります。
そんな時に、VNC Viewrを使って接続する設定内容です。

1. VNC Viewrをダウンロード
http://www.realvnc.com/
から
VNC for Windows 5.0.6 32/64-bit exe 6.9 MB
をダウンロードし、Windows端末にインストールします。
VNC Viewerのみインストールで問題ないです。

以下はLinuxサーバ(Redhat5.7)での設定。

2. /root/.bashrcの編集
一番下にPATH=$PATH:/usr/local/bin を追記する。

[root@OPPAI ~]# vi /root/.bashrc 

# .bashrc 

# User specific aliases and functions 

alias rm='rm -i' 
alias cp='cp -i' 
alias mv='mv -i' 

# Source global definitions 
if [ -f /etc/bashrc ]; then 
        . /etc/bashrc 
fi 
HISTTIMEFORMAT='%y/%m/%d %H:%M:%S ' 
export HISTSIZE=10000 
PATH=$PATH:/usr/local/bin 

3. vncpasswd でパスワード設定
VNC で操作したいユーザでログインし、ターミナルより下記コマンドを入力する。

[root@OPPAI ~]# vncserver :1 

You will require a password to access your desktops. 

Password: 
Verify: 

New 'OPPAI.local:1 (root)' desktop is OPPAI.local:1 

Creating default startup script /root/.vnc/xstartup 
Starting applications specified in /root/.vnc/xstartup 
Log file is /root/.vnc/OPPAI.local:1.log 

4. /etc/sysconfig/vncserversの設定

ファイルの内容は以下を参考に設定。
VNCSERVERS=”1:hoge1user 2:hoge2user”
# hoge1userのVNCオプション
VNCSERVERARGS[1]=”-geometry 1024×768″

[root@OPPAI ~]# vi /etc/sysconfig/vncservers 

# The VNCSERVERS variable is a list of display:user pairs. 
# 
# Uncomment the lines below to start a VNC server on display :2 
# as my 'myusername' (adjust this to your own).  You will also 
# need to set a VNC password; run 'man vncpasswd' to see how 
# to do that. 
# 
# DO NOT RUN THIS SERVICE if your local area network is 
# untrusted!  For a secure way of using VNC, see 
# . 

# Use "-nolisten tcp" to prevent X connections to your VNC server via TCP. 

# Use "-nohttpd" to prevent web-based VNC clients connecting. 

# Use "-localhost" to prevent remote VNC clients connecting except when 
# doing so through a secure tunnel.  See the "-via" option in the 
# `man vncviewer' manual page. 

# VNCSERVERS="2:myusername" 
# VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -nohttpd -localhost" 
VNCSERVERS="1:root" 
VNCSERVERARGS[1]="-geometry 1024x768" 

5. /root/.vnc/xstartup の編集

頭の方にある Uncomment the following two lines for normal desktop の下2行の # を削除して、有効にする。

[root@OPPAI ~]# vi /root/.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 &

6. 起動
下記コマンドで起動する。

[root@OPPAI ~]# /sbin/service vncserver start 

7. port解放

[root@OPPAI ~]# vi /etc/sysconfig/iptables

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5900 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCEPT

[root@OPPAI ~]# /etc/init.d/iptables restart

あとは、Windows端末にもどってVNC Viewerを起動し、
[IPアドレス]:1を入力すればOKです。

VNC接続画面

以上