Virtual Network Computing (VNC) プロトコルは、リモート デスクトップ管理の基礎の XNUMX つです。 完全にグラフィカルなデスクトップとともに、サーバーをリモートでシームレスに実行できます。 ここでは、Ubuntu で VNC サーバーをセットアップする方法を示します。 また、VNC サーバーに接続して、必要に応じて機能させる方法についても説明します。
Ubuntu でローカル VNC サーバーをホストする
Ubuntu で VNC サーバーを起動する最も簡単な方法の XNUMX つは、 "リモートデスクトップ". バージョン 16.04 以降、Ubuntu はローカル ネットワーク上でデスクトップを共有するための基本的でありながら高度な機能を備えています。
Ubuntu リモート デスクトップを使用するには、[Win] を押してから、[設定] と入力する必要があります。 これにより、ほとんどの設定を見つけることができる配布コントロール パネルが開きます。

次に、ウィンドウの左上隅にある虫眼鏡アイコンをクリックする必要があります。 これにより、アクセスしたい設定の名前を指定できる小さな検索ボックスが表示されます。 ここで、タイプ 「共有する」。

完了したら、カテゴリをタップする必要があります 「共有する」 ウィンドウの左側のサイドバーにあります。 これにより、Ubuntu の共有ポリシーを制御できる一連のメニューが開きます。 リモート デスクトップ ポリシーにアクセスするには、メニューを押す必要があります "リモートデスクトップ".

そうすると、小さなオーバーレイ ウィンドウが読み込まれ、マシンのリモート デスクトップ サービスを変更して有効にすることができます。 リモート セッションを開始するには、オプションを有効にする必要があります "リモートデスクトップ".

次に、あなたも選択する必要があります 「レガシー VNC プロトコルを有効にする」. これにより、接続されたクライアントがデバイスと適切に通信できるようになります。

最後に、オプションを選択する必要があります "リモコン". デフォルトでは、Ubuntu リモート デスクトップは、リモート ゲストがマシンのキーボードとマウスを制御することを許可しません。 このオプションを有効にすると、この制限が回避されます。

注: Windows にも付属しています。 ネイティブのリモート デスクトップ ソフトウェア。 これらを上手に活用する方法をご紹介します.
リモートサーバーに TigerVNC を使用する
Ubuntu のリモート デスクトップ機能は基本的なタスクには便利ですが、最大の制限機能の XNUMX つは、ローカル ネットワークでしか機能しないことです。 これは、自宅の外でマシンを制御したい場合や、リモートの仮想プライベート サーバーを制御したい場合に問題になる可能性があります。
この点で、TigerVNC はオフショア ネットワークで機能する VNC プロトコルの効率的で堅牢な実装です。 を使用してリモートでアプリを転送する以外 SSH 、さまざまなプラットフォームやさまざまなネットワーク条件でデスクトップ コンピューター全体を共有する簡単な方法を提供することを目的としています。 たとえば、Linux VPS 上に VNC サーバーを作成し、ローカルの Windows マシンからアクセスすることができます。

それとは別に、TigerVNC の開発者は、ソフトウェアがデフォルトで安全になるように設計しました。 これは、TigerVNC を簡単にデプロイして、サーバーとそのクライアント間のすべてのデータを暗号化できることを意味します。
Ubuntu に TigerVNC をインストールする
TigerVNC サーバーを展開する最初のステップは、ソフトウェアのコピーをマシンにインストールすることです。 これを行うには、まずシステムを更新してアップグレードする必要があります。
sudo apt update && sudo apt upgrade

次に、次のコマンドを実行して TigerVNC をインストールする必要があります。
sudo apt install Tigervnc-standalone-server ssh xterm dbus-x11

VNC サーバーのパスワードを作成する
TigerVNC をインストールすると、サーバーのマスター パスワードを作成できるようになります。 これを行うには、次のコマンドを実行する必要があります。
vncpasswd
このコマンドは、新しいサーバーのパスワードを入力できるブラインド プロンプトを表示します。 ここでのパスワードの最小長は 6 文字であることに注意してください。

次に、パスワードを求められます 「展示のみ」. このオプションを使用すると、ゲストにデバイスのキーボードとマウスの制御を与えることなく、デスクトップを共有できます。 私の場合、このオプションを 「ん」

Ubuntu で TigerVNC を構成して実行する
マスター パスワードを設定すると、VNC サーバーのユーザー固有のポートを構成できるようになります。 そうすることで、異なるクライアント間で並行してデバイスを共有できます。
これを行うには、開く必要があります 「/etc/tigervnc/vncserver.users」 お気に入りのテキスト エディターを使用して:
須藤ナノ /etc/tigervnc/vncserver

入ったら、サーバーに追加するユーザー用のスペースを作成する必要があります。 これを行うには、 Alt + /、 その後、 入力します。
その後、VNC サーバーに関連付けるユーザーを追加できます。 ほとんどの場合、TigerVNC で新しいユーザーを追加するための一般的な構文は次のようになります。
:display=ユーザー名
- 表示値は、特定のディスプレイ ポートに偽のモニター デバイスを作成するように TigerVNC に指示します。 たとえば、値を次のように設定します。 「:1」 サーヴァントに告げる VNC 作成 「仮想画面」 入港中 1.
- ユーザー名の値は、TigerVNC に偽の監視デバイスを特定のユーザーに割り当てるように指示します。 私の場合、次の行を書きます。 1 = ラム 任命します 「仮想画面」 ユーザー アカウントのポート 1。

独自の VNC サーバー構成を作成する
これが完了すると、VNC ユーザーの構成ファイルを作成できるようになります。 これを行うには、次のコマンドを実行する必要があります。
nano /home/$USER/.vnc/xstartup

次に、TigerVNC の実行時にデフォルトの環境変数を自動的にロードする短いスクリプトを作成する必要があります。
#!/bin/bash PATH=/usr/bin:/usr/sbin unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS exec /usr/bin/gnome-session
- コードの最初の行は、リモート デスクトップ セッションの PATH 変数を設定します。 これは、TigerVNC セッションがデバイスから PATH 変数を継承しないためです。 「起源」。
- XNUMX 行目と XNUMX 行目は、現在のリモート デスクトップ セッションがマシンからのセッション変数を使用しないことを保証します。 「起源」。
- コードの XNUMX 行目は、リモート デスクトップで GNOME デスクトップ環境を起動します。 通常のデーモンとは異なり、このプロセスを fork する必要はありません。
完了したら、を押して新しい構成ファイルを保存できます Ctrl + O 、その後 Ctrlキー+ X.

最後に、新しい構成ファイルに正しい実行ビットが含まれていることを確認してください。 これを行うには、次のコマンドを実行します。
chmod u+x /home/$USER/.vnc/xstartup
TigerVNC サービスを作成して開始する
構成ファイルが完成したら、VNC サーバー用の SystemD サービスを作成できます。 これにより、起動時に TigerVNC サービスを自動的に起動できます。
開始するには、最初に適切な SystemD サービス ファイルを作成する必要があります。 「/etc/systemd/システム:」
須藤ナノ /etc/systemd/system/[メール保護]
次に、構成ファイルをロードするこのサービス ファイル内に小さなスクリプトを記述する必要があります。
[Service] Type=forking User=ramces Group=ramces WorkingDirectory=/home/ramces ExecStart=/usr/bin/vncserver -localhost no :%i ExecStop=/usr/bin/vncserver -kill :%i [Install] WantedBy=マルチユーザーのターゲット
その後、 を押して新しいサービスファイルを保存できます Ctrl + O 、その後 Ctrlキー+ X.

その後、GUI を無効にしてデバイスを再起動する必要があります。 次のコマンドを使用して、これらのアクションの両方を実行できます。
sudo systemctl set-default マルチユーザー sudo 再起動
最後に、systemctl を介して新しい SystemD 設定をリロードして有効にすることができます。
sudo systemctl daemon-reload sudo systemctl enable vncserver@1 sudo systemctl start vncserver@1

TigerVNC クライアントをインストールする
この VNC サーバーに接続できるようにするには、別のマシンに VNC クライアントが必要です。 TigerVNC クライアントを使用できます。
sudo apt install Tigervnc-viewer

次に、VNC サーバーとクライアントの間に SSH リンクを作成します。 これにより、VNC 接続がエンドツーエンドで暗号化されます。
ssh -L 5901:192.168.68.155:5901 [メール保護]

次に、TigerVNC クライアントを使用して VNC サーバーの仮想画面に接続できます。
vncviewer 192.168.68.155:5901
一方、Ubuntu のリモート デスクトップ機能を介してマシンに接続している場合は、ポートの値を省略する必要があります。
vncビューアー192.168.68.155

よくある質問
Q 1. リモート VNC サーバーにフォントが表示されません。
答え。 この問題は、サーバーのキャッシュの問題が原因である可能性が最も高いです。 これを修正するには、デスクトップ環境に必要なすべてのフォントがインストールされていることを確認する必要があります。
たとえば、実行できます sudo apt install Fonts-dejavu Font-dejavu-extra 最新の環境で使用されるいくつかの基本的なフォントをインストールします。
Q 2. TigerVNC クライアントに黒い画面が表示されます。
答え。 これは多くの問題が原因である可能性がありますが、この問題の最も一般的な原因は、物理 Xorg 画面と仮想 Xorg 画面の間の競合です。
デフォルトでは、TigerVNC は複数の Xorg インスタンスをサポートしていません。 その結果、サーバーでデスクトップ環境を使用している場合、VNC サーバーは仮想ビューを共有できません。 Ubuntu でこれを修正するには、sudo gnome-session-quit を実行します。
Q 3. SSH を使用せずに VNC サーバーに安全にアクセスできますか?
答え。 はい。 SSH に依存せずに TigerVNC を使用することが可能です。 ただし、TigerVNC のデフォルトの接続方法は安全性が低いことに注意することが重要です。
これを知った上でできる解決策の XNUMX つは、証明書を作成することです。 OpenSSLの ローカル。 これにより、VNC 接続に暗号化されたチャネルを引き続き使用できます。 X509 証明書を取得したら、次を実行できます。 vncviewer [メール保護] -X509CA /パス/to/cert.pem VNC サーバーに接続するには。






