Help us understand the problem. What is going on with this article?

CentOS 7でVNCサーバを構築してみた

More than 5 years have passed since last update.

インテルのNUCでCentOS7をディスプレーなしで運用するために、VNCサーバを構築した時のメモです。

VNCサーバのインストール

yumで tigervnc-server をインストールします。

$  yum install tigervnc-server

VNCサーバのパスワード設定

vncpasswdコマンドでVNCサーバのパスワードを設定します。

$ vncpasswd
Password:
Verify:

VNCサーバのサービス設定

CentOS7からはsystemctlでサービスの設定を行う必要があります。
まず、/etc/systemd/system 配下に、VNCサーバのユニットファイルをコピーするか(ユーザが複数の場合)、または、シンボリックリンクを作成します(ユーザが1人の場合)。

$ cd /etc/systemd/system
ln -s /lib/systemd/system/vncserver@.service vncserver@:1.service

次に、ユニットファイルを編集します。

$ vi vncserver@:1.service

ユニットファイル内で <USER> と記述されている個所をVNCサーバのログインユーザ名に書き換えます。

[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=/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 || :'

VNCサーバのサービスの有効化

systemctlコマンドで、サービスの自動起動を有効化と再起動を行います。

$ systemctl daemon-reload
$ systemctl enable vncserver@:1
$ systemctl restart vncserver@:1

ファイアーウォールの設定

firewall-cmdでVNCサーバとクライアントの通信を許可する設定を行います。

$ firewall-cmd --permanent --zone=public --add-service=vnc-server
$ firewall-cmd --reload
$ firewall-cmd --list-all

VNCクライアントからの接続確認

UltraVNC ViewerなどのVNCクライアントから、ポート番号 5901 を指定して、VNCサーバに接続できることを確認します。

VNC.png

認証ダイアログが表示されたら、vncpasswdコマンドで設定したパスワードを入力してログインします。

VNCAU.png

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away