はじめに
CentOS7、CentOS6、Ubuntu18.04LTS の GNOME Desktop に、VNCでリモートデスクトップ接続できるようにします。
GNOME Desktopインストール
もし、まだGNOME Desktopがインストールされていない場合は、下記コマンドでインストール、有効化しておきます。
(for CentOS7)
$ sudo yum groups install "GNOME Desktop"
(for CentOS6)
$ sudo yum groupinstall "Desktop" "General Purpose Desktop"
(for Ubuntu)
$ sudo apt update
$ sudo apt install ubuntu-gnome-desktop
$ sudo systemctl enable gdm
$ sudo systemctl start gdm
VNC Server インストール
パッケージインストール
(for CentOS7, CentOS6)
$ sudo yum install tigervnc-server tigervnc
(for Ubuntu)
$ sudo apt install tigervnc-standalone-server
VNC アカウント設定
VNC サーバーに接続するための VNC アカウントを追加します。ログインしたい Linux ユーザーで下記コマンドを実行してパスワードを登録します。
$ vncpasswd
VNC 表示設定を調整する
TigerVNCが使用するデフォルトの GUI 環境は GNOME になっていませんので、GNOME デスクトップが表示されるよう調整します。
$ vi ~/.vnc/xstartup
~/.vnc/xstartup
dbus-launch --exit-with-session gnome-session &
ファイアウォール無効化・許可
TigerVNCServer の :1 はポート 5901 を listen します。リモートから接続できるよう、今回はファイアウォールを無効化します。
(for CentOS7)
$ sudo systemctl stop firewalld
$ sudo systemctl disable firewalld
(for CentOS6)
$ sudo service iptables stop
$ sudo chkconfig iptables off
(for Ubuntu)
$ sudo ufw disable
VNC 起動コマンドと停止コマンドの準備
vncserver コマンドで VNC サーバーを起動する際、ディスプレイ番号「:1」や画面解像度、色数も指定できます。毎回これらを入力するのが煩わしいときは、下記のようにエイリアスを ~/.bashrc に追記して適用しておきます。
また、VNCサーバーホストにリモート接続するために、localhost 以外からの接続も許可するため、-localhost no
も指定しておくと良いでしょう。
$ vi ~/.bashrc
~/.bashrc
(for CentOS7, CentOS6)
# VNC Server settings
alias vncstart='vncserver :1 -geometry 1920x1080 -depth 24'
alias vncstop='vncserver -kill :1'
(for Ubuntu)
# VNC Server settings
alias vncstart='vncserver :1 -localhost no -geometry 1920x1080 -depth 24'
alias vncstop='vncserver -kill :1'
$ source ~/.bashrc
VNC 起動コマンドと停止コマンドの実行
(VNC サーバーを起動する)
$ vncstart
(VNC サーバーを停止する)
$ vncstop