ウェブサイト検索

Debian 11/10 に TigerVNC VNC サーバーをインストールして設定する |


VNC は仮想ネットワーク コンピューターの略です。これは、リモート フレーム バッファ プロトコル (RFB) を使用するグラフィカル デスクトップ共有システムです。 VNC を提供するソフトウェア サービスは数多くあります。その中には、TigerVNC、Vino、VNC4server、TightVNC などがあります。

TigerVNC は、Linux ベースのデスクトップをリモートで制御またはアクセスするために使用される、無料のオープンソース VNC サーバーです。これにより、リモート システム上のグラフィカル アプリケーションと対話できるようになります。これにより、コマンドラインにまだ慣れていないユーザーでも、リモート サーバー上のファイル、ソフトウェア、設定を簡単に管理できるようになります。

このガイドは、Debian 11 に TigerVNC VNC サーバーをインストールして設定するのに役立ちます。デビアン10。

前提条件をセットアップします。

このガイドを正常に完了するには、次のものが必要です。

  1. debian 11/10 サーバー
  2. VNC クライアントをインストールするローカル コンピューター。

ステップ 1: Debian 11/10 サーバーにデスクトップ環境をインストールする

デフォルトでは、Debian 11/10 サーバーにはデスクトップ環境がありません。 TigerVNC がリモート システムを制御できるようにするには、サーバーに GUI をインストールする必要があります。以下のようにサーバーにデスクトップ環境を追加します。

まず、Tasksel をインストールする必要があります。このツールを使用すると、Debian システムにデスクトップ環境を簡単にインストールできます。

sudo apt update
sudo apt install tasksel -y 

Tasksel がインストールされたら、次のコマンドを使用して起動します。

sudo tasksel 

このウィンドウが表示されるはずです。

ここでは、キーボードの上下矢印キーを使用してナビゲートすることで、任意のデスクトップ環境を自由に選択、ダウンロード、インストールできます。スペースキーを使用して項目を選択します。選択した項目は以下のように「* 」付きで表示されます。このガイドではGnome デスクトップを使用することを選択しました。

Enter を押してインストールに進みます。インストールが完了したら、グラフィカル ターゲットで起動するようにシステムを設定する必要があります。

sudo systemctl set-default graphical.target 

ここで、変更を適用するために Debian 11/10 システムを再起動します。

sudo systemctl reboot

ステップ 2: Debian 11/10 に TigerVNC サーバーをインストールする

TigerVNC はデフォルトの Debian パッケージ リポジトリで利用でき、次のコマンドを使用して簡単にインストールできます。

sudo apt install tigervnc-standalone-server tigervnc-common tightvncserver

依存関係ツリー:

Building dependency tree... Done
Reading state information... Done
The following additional packages will be installed:
  libfile-readbackwards-perl
The following NEW packages will be installed:
  libfile-readbackwards-perl tigervnc-common tigervnc-standalone-server
0 upgraded, 3 newly installed, 0 to remove and 4 not upgraded.
Need to get 1,126 kB of archives.
After this operation, 3,148 kB of additional disk space will be used.
Do you want to continue? [Y/n] y

TigerVNC がインストールされている場合、デスクトップにアクセスするために VNC パスワードを設定する必要があります。

非 root ユーザーに切り替えて、VNC パスワードを設定します。 非 root ユーザー を自分の非 root ユーザー名に置き換えます。

su - non-root-username
vncpasswd

以下のように任意のパスワードを設定する必要があります。パスワードは 6 文字以上にする必要があります。

You will require a password to access your desktops.
Password:Enter your Password
Verify: Re-enter your Password
Would you like to enter a view-only password (y/n)? n

上記の設定を行ったら、次のコマンドを使用して VNC サーバーを起動します。

vncserver -localhost no

サンプル出力:

/usr/bin/xauth:  file /home/thor/.Xauthority does not exist

New Xtigervnc server 'debian.techview.domain.com:1 (debian)' on port 5901 for display :1.
Use xtigervncviewer -SecurityTypes VncAuth,TLSVnc -passwd /home/debian/.vnc/passwd debian.techview.domain.com:1 to connect to the VNC server.

起動に失敗した場合は、次を実行します。

tigervncserver -xstartup /usr/bin/xterm

TigerVNC サービスが実行されているかどうかを確認します。

$ vncserver -list 
TigerVNC server sessions:

X DISPLAY #	RFB PORT #	PROCESS ID	SERVER
:1         	5901      	1452      	Xtigervnc

ステップ 3: TigerVNC を構成します。

TigerVNC の構成を変更するので、まずポート 5901 で実行されている TigerVNC サービスを停止する必要があります。

$ vncserver -kill :1
Killing Xtigervnc process ID 1452... success!

xstartup ファイルに変更を加える前に、元のファイルのバックアップを作成する必要があります。

mv ~/.vnc/xstartup ~/.vnc/xstartup.bak

ファイルが存在しない場合は、そのまま Vim テキスト エディタを使用して新しい xstartup ファイルを作成します。 sudo apt install vim を使用して、Debian 11/10 に vim をインストールします。ここでは、デスクトップ環境 (Gnome 環境) で動作するように TigerVNC を構成します。

vim  ~/.vnc/xstartup

このファイルには、VNC サーバーの起動または再起動時に自動的に実行されるコマンドが含まれています。以下の行をファイルに追加します。

Gnome デスクトップ環境を使用した場合、ファイルは次のように表示されるはずです。

#!/bin/sh
xrdb $HOME/.Xresources
vncconfig -iconic &
dbus-launch --exit-with-session gnome-session &

xfce4 のデスクトップ環境を使用していた場合、ファイルは次のようになります。

#!/bin/bash
xrdb $HOME/.Xresources
startxfce4 &

ファイルを保存して終了します。以下のようにファイルを実行可能にします。

sudo chmod u+x  ~/.vnc/xstartup 
sudo chmod 777 ~/.vnc/xstartup

VNCサーバーを起動します。

vncserver

ステップ 4: VNC デスクトップに安全に接続します。

デフォルトでは、VNC は接続時に安全なプロトコルを使用しません。このガイドでは、SSH トンネルを使用して Debian 11/10 サーバーに接続します。次に、VNC クライアントに直接接続の代わりにトンネルを使用するように指示します。

まず、VNC のローカルホスト接続を安全に転送する SSH 接続をローカル マシン上に作成します。

Linux、macOS ターミナルでは、次のコマンドを実行します。

ssh -L 5901:127.0.0.1:5901 -N -f -l debian -t server_ip

上記のコードでは、L- はバインド ポートを指定します。ここでは、リモート サーバーのポート 5901 をローカル マシンの5901 ポートにバインドしています。

コードでは、debian をリモート ログインの非 root ユーザー名に置き換え、server_ip をサーバーの IP アドレスに置き換える必要があります。

SSH 接続を中断せずに、以下の手順に進みます。

次に、VNC クライアントを使用してリモート サーバーに接続します。ローカル マシンに VNC クライアントをインストールします。このガイドでは、公式 RelaVNC ダウンロード ページからダウンロードしたRealVNC クライアントを使用します。

あるいは、以下のように Wget を使用してパッケージをダウンロードします。

##On Debian/Ubuntu
wget https://downloads.realvnc.com/download/file/viewer.files/VNC-Viewer-6.22.207-Linux-x86.deb

##On RHEL/CentOS/Rocky Linux 8
https://www.realvnc.com/download/file/viewer.files/VNC-Viewer-6.22.207-Linux-x64.rpm

ダウンロードしたパッケージをマシンにインストールします。

##On Debian/Ubuntu
sudo apt install ./VNC-Viewer-6.22.207-Linux-x86.deb

##On RHEL/CentOS/Rocky Linux 8
sudo yum localinstall VNC-Viewer-6.22.207-Linux-x64.rpm

公式 RealVNC ダウンロード ページでは、Windows、macOS、Linux、Raspberry Pi、iOS、Android、Solaris、HP-UX、および AIX システム用の VNC クライアントをダウンロードしてインストールできます。

以下のように、ローカル マシンのターミナルから VNC クライアントを起動します。

vncviewer localhost:1

このポップアップウィンドウが表示されます。

[続行] をクリックします。次に、前に設定した VNC デスクトップのパスワードを要求する以下のウィンドウが表示されます。

正しいパスワードを入力すると、以下のようにリモート デスクトップに接続されます。表示されたユーザー名のパスワードを入力してログインします。

ここにいる間、サーバー上のファイル、設定、その他のタスクを管理できるようになります。

ステップ 5: VNC をシステムサービスとして実行する

ここで、他のサービスと同様にサービスを開始、停止、再起動できるように、VNC サーバーを systemd サービスとして構成します。これにより、起動時にサービスが自動的に開始されるように設定することもできます。

まず、/etc/systemd/system/[email という名前の systemd ファイルを作成します。

sudo vim /etc/systemd/system/[email 

ファイルに以下の行を追加し、ユーザー、グループ、作業ディレクトリ、および PID ファイル内のユーザーをユーザー名と一致するように置き換えます。

[Unit]
Description=Start TightVNC server at startup
After=syslog.target network.target

[Service]
Type=forking
User=debian
Group=debian
WorkingDirectory=/home/debian

PIDFile=/home/debian/.vnc/%H:%i.pid
ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800 :%i
ExecStop=/usr/bin/vncserver -kill :%i

[Install]
WantedBy=multi-user.target

ファイルを保存して閉じてから、デーモンをリロードします。

sudo systemctl daemon-reload 

次に、起動時にサービスが自動的に開始されるようにします。

sudo systemctl enable [email  

実行中のインスタンスを停止します。

vncserver -kill :1

次のコマンドを使用して VNC サービスを開始します。

sudo systemctl start [email 

サービスのステータスを確認します。

$ systemctl status vncserver@1
● [email  - Start TightVNC server at startup
   Loaded: loaded (/etc/systemd/system/[email ; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2021-08-29 05:08:30 EDT; 3s ago
  Process: 4948 ExecStartPre=/usr/bin/vncserver -kill :1 > /dev/null 2>&1 (code=exited, status=0/SUCCESS)
  Process: 4953 ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800 :1 (code=exited, status=0/SUCCESS)
 Main PID: 4961 (Xtigervnc)
    Tasks: 173 (limit: 4915)
   Memory: 154.8M
   CGroup: /system.slice/system-vncserver.slice/[email 
           ├─4961 /usr/bin/Xtigervnc :1 -desktop debian:1 (debian) -auth /home/debian/.Xauthority -geometry 1280x800 -depth 24 -rfbwait 30000 -rfbauth
           ├─4967 vncconfig -iconic
           ├─4968 /usr/lib/gnome-session/gnome-session-binary
           ├─4971 dbus-launch --exit-with-session gnome-session
           ├─4972 /usr/bin/dbus-daemon --syslog --fork --print-pid 5 --print-address 7 --session
           ├─4982 /usr/lib/at-spi2-core/at-spi-bus-launcher
           ├─4987 /usr/bin/dbus-daemon --config-file=/usr/share/defaults/at-spi2/accessibility.conf --nofork --print-address 3
           ├─4990 /usr/lib/at-spi2-core/at-spi2-registryd --use-gnome-session
           ├─4993 /usr/lib/gvfs/gvfsd
           ├─5000 /usr/lib/gvfs/gvfsd-fuse /home/debian/.gvfs -f -o big_writes
           ├─5022 /usr/bin/gnome-keyring-daemon --start --components=pkcs11
           ├─5046 /usr/lib/gnome-settings-daemon/gsd-power
................

次のコマンドを使用して、SSH トンネルを再度開始します。

ssh -L 5901:127.0.0.1:5901  debian server_ip

次に、vncviewer localhost:1 を使用して、Debian 10/11 サーバーへの新しい接続を作成します。これで、TigerVNC VNC を使用してリモート デスクトップ サービスを楽しむ準備が整いました。

結論。

乾杯! TigerVNC VNC サーバーを Debian 11 に正常にインストールして設定しました。 Debian 10。リモート Debian 11/10 サーバーにリモート デスクトップ アクセスできるようになりました。

さらにガイドを参照:

  • Debian に Guacamole リモート デスクトップをインストールして使用する
  • Debian に MongoDB 5 をインストールする方法
  • Debian 10 (Buster) から Debian 11 (Bullseye) へのアップグレード

関連記事: