CentOS7でVNC Serverを設定した際のメモです。
以下のアカウントで設定することを前提に進めていきます。
- アカウント名 : admin
インストール
rootでログインし、tigervnc-serverをインストールします。
yum install tigervnc-server
VNCサーバの設定
1番をadminに割り当てます。まず、1番用の設定ファイル「vncserver@:1.service」を作成します。
cp /usr/lib/systemd/system/vncserver@.service /usr/lib/systemd/system/vncserver@:1.service
次に、「vncserver@:1.service」を編集します。「」をアカウント名に書き換えます。
1.service
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i"
PIDFile=/home/<USER>/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
その後、サービスに登録します。
systemctl daemon-reload
VNCユーザの設定
対象のユーザのアカウントでログインします。そして、環境設定用ファイルを作成します。
cd ~/.vnc/
vi xstartup #ファイル作成
chmod +x xstartup
内容を編集します。
~/.vnc/xstartup
#! /bin/sh
exec gnome-session &
パケットフィルタリングの設定
ひとまず、ローカル(192.168.1.*)から接続できるように設定します。
firewall-cmd --permanent --add-rich-rule='rule family=ipv4 service name=vnc-server source address="192.168.1.0/24" accept'
VNCサービスの起動と自動起動の設定
サービスの起動。
systemctl start vncserver@:1.service
自動起動の設定。
systemctl enable vncserver@:1.service
サービスの起動の確認。
systemctl is-active vncserver@:1.service
注意メモ
- 本体の方で、対象のアカウントでGUIにログインしていると、VNCで繋いだときに、真っ暗になります。