Xrdpは、Microsoftリモートデスクトッププロトコル(RDP)のオープンソース実装であり、リモートシステムをグラフィカルに制御できます。 RDPを使用すると、リモートマシンにログインして、ローカルマシンにログインした場合と同じように実際のデスクトップセッションを作成できます。
このチュートリアルでは、CentOS8にXrdpサーバーをインストールして構成する方法について説明します。
オープンソースの代替手段を好む場合は、VNCをチェックしてください。
デスクトップ環境のインストール#
通常、Linuxサーバーにはデスクトップ環境がインストールされていません。接続するマシンにGUIがない場合、最初のステップはGUIをインストールすることです。それ以外の場合は、この手順をスキップしてください。
GnomeはCentOS8のデフォルトのデスクトップ環境です。リモートマシンにGnomeをインストールするには、次のコマンドを実行します
sudo dnf groupinstall "Server with GUI"
システムによっては、Gnomeパッケージと依存関係のダウンロードとインストールに時間がかかる場合があります。
Xrdpのインストール#
XrdpはEPELソフトウェアリポジトリで利用できます。システムでEPELが有効になっていない場合は、次のように入力して有効にします。
sudo dnf install epel-release
Xrdpパッケージをインストールします:
sudo dnf install xrdp
インストールプロセスが完了したら、Xrdpサービスを開始し、起動時に有効にします。
sudo systemctl enable xrdp --now
Xrdpが実行されていることを確認するには、次のように入力します。
sudo systemctl status xrdp
出力は次のようになります:
● xrdp.service - xrdp daemon
Loaded: loaded (/usr/lib/systemd/system/xrdp.service; enabled; vendor preset: disabled)
Active: active (running) since Sun 2020-02-02 18:30:43 UTC; 11s ago
...
Xrdpの構成#
構成ファイルは/etc/xrdp
にあります ディレクトリ。基本的なXrdp接続の場合、構成ファイルに変更を加える必要はありません。 Xrdpは、デフォルトのX Windowデスクトップ(この場合はGnome)を使用します。
メインの構成ファイルの名前はxrdp.ini
です。 。このファイルはセクションに分割されており、セキュリティアドレスやリスニングアドレスなどのグローバル構成設定を設定したり、さまざまなxrdpログインセッションを作成したりできます。
構成ファイルに変更を加えるときはいつでも、Xrdpサービスを再起動する必要があります:
sudo systemctl restart xrdp
Xrdpはstartwm.sh
を使用します Xセッションを起動するファイル。別のXWindowデスクトップを使用する場合は、このファイルを編集してください。
デフォルトでは、Xrdpはポート3389
でリッスンします すべてのインターフェイスで。 CentOSマシンでファイアウォールを実行している場合(常に実行する必要があります)、Xrdpポートでのトラフィックを許可するルールを追加する必要があります。
通常、特定のIPアドレスまたはIP範囲からのみXrdpサーバーへのアクセスを許可する必要があります。たとえば、192.168.1.0/24
からの接続のみを許可するには 範囲に、次のコマンドを入力します:
sudo firewall-cmd --new-zone=xrdp --permanent
sudo firewall-cmd --zone=xrdp --add-port=3389/tcp --permanent
sudo firewall-cmd --zone=xrdp --add-source=192.168.1.0/24 --permanent
sudo firewall-cmd --reload
ポート3389
へのトラフィックを許可するには どこからでも以下のコマンドを使用してください。セキュリティ上の理由から、どこからでもアクセスできるようにすることはお勧めしません。
sudo firewall-cmd --add-port=3389/tcp --permanent
sudo firewall-cmd --reload
セキュリティを強化するために、ローカルホストでのみリッスンするようにXrdpを設定し、ポート3389
でローカルマシンからのトラフィックを安全に転送するSSHトンネルを作成することを検討してください。 同じポートのサーバーに送信します。
もう1つの安全なオプションは、OpenVPNをインストールし、プライベートネットワークを介してXrdpサーバーに接続することです。
Xrdpサーバーへの接続#
Xrdpサーバーが構成されたので、ローカルXrdpクライアントを開き、リモートCentOS8システムに接続します。
Windowsユーザーは、デフォルトのRDPクライアントを使用できます。 Windowsの検索バーに「リモート」と入力し、「リモートデスクトップ接続」をクリックします。これにより、RDPクライアントが開きます。 [コンピュータ]フィールドにリモートサーバーのIPアドレスを入力し、[接続]をクリックします。
ログイン画面で、ユーザー名とパスワードを入力し、[OK]をクリックします。
ログインすると、デフォルトのGnomeデスクトップが表示されます。次のようになります:
これで、キーボードとマウスを使用して、ローカルマシンからリモートデスクトップとの対話を開始できます。
macOSを使用している場合は、MacAppStoreからMicrosoftリモートデスクトップアプリケーションをインストールできます。 Linuxユーザーは、RemminaやVinagreなどのRDPクライアントを使用できます。