いろいろやってみるにっき

てきとーに生きている奴の日記

https化に伴い、表示できなくなっているリンクについて修復中。
2018年から遡って修正し、2015年分まで修正完了。


Hyper-Vで動かしたAmazon Linux 2にxrdp接続してみる

やっぱり不便だ、Windows側のVS Codeからの操作。

 

 

コンテナの中もVS Codeで操作したい

Dockerのコンテナ内に入るとviを使うことになる。結局VS Codeが使えずに面倒である。OSが異なるのでRemote-Containersも使えない。

f:id:shigeo-t:20201026094758p:plain

f:id:shigeo-t:20201026094841p:plain

まあ、そりゃそうだ。

 

ググってみると多段にsshを設定する方法があった。これが正当な接続だろう。AWS上であれこれ環境を作る必要もなくVS Codesshだけで解決する。

qiita.com

 

でも、せっかくのオンプレミスなので別の方法を試してみることに。AWSの技術ドキュメントがあった。

aws.amazon.com

 

要約すると、Amazon Linux 2側は下記の通り。

  1. MATE をインストール
  2. TigerVNC をインストール

そしてWindows側(macOSLinuxでも同)は下記の通り。

  1. TigerVNCをインストール
  2. sshでトンネリング
  3. TigerVNCで接続

Windows側でVNCは使いたくない。sshトンネリングもめんどくさいしな。いや、同じLAN内ならトンネリング無しでも接続できそうな気はする。試さないけど。

 

ということでVNCの代わりにxrdpにする。xrdpはCentOS7で実績があるのだよ。

shigeo-t.hatenablog.com

 

Amazon Linux 2側のインストールや準備作業

MATEインストール

AWSの技術ドキュメントに従い、次のコマンドを実行する。

sudo amazon-linux-extras install mate-desktop1.x

sudo bash -c 'echo PREFERRED=/usr/bin/mate-session > /etc/sysconfig/desktop'

 

epelインストール

オレのCentOS 7にxrdpを入れてWindows RTからアクセスする - いろいろやってみるにっきによれば次はepelのインストール。

下記のコマンドを入れていく。上にも書いた通りスーパーユーザで実施する。

rpm -Uvh https://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-2.noarch.rpm

# vi /etc/yum.repos.d/xrdp.repo

viでの作成内容は下記の通り。

[xrdp]

name=xrdp
baseurl=http://li.nux.ro/download/nux/dextop/el7/x86_64/

enabled=1
gpgcheck=0

 

ところが上記のamazon-linux-extrasコマンドの実行結果ではこのようにepelはamazon-linux-extrasコマンドでインストール可能。

23 tomcat8.5 available \
[ =8.5.31 =8.5.32 =8.5.38 =8.5.40 =8.5.42 =8.5.50
=stable ]
24 epel available [ =7.11 =stable ]
25 testing available [ =1.0 =stable ]

 

せっかくここでCentOS7用の最新を調べていたのに。

dl.fedoraproject.org

f:id:shigeo-t:20201026100631p:plain

 

amazon-linux-extrasコマンドでインストールできるものはamazon-linux-extrasコマンドでインストールしたほうがAmazon Linux 2でうまく動く可能性が高いのでamazon-linux-extrasコマンドでインストールする。

sudo amazon-linux-extras install epel

 

xrdpとTigerVNCのインストール

次はxrdpとTigerVNCのインストール。上でVNCを使いたくないと書いたが、xrdpの依存先がTigerVNCなので、Amazon Linux 2側にはインストールする。

sudo yum -y install xrdp tigervnc-server

 

xrdpの起動と確認

systemctlで起動する。

sudo systemctl start xrdp.service

 

3389ポートが使えるかどうかはnetstatコマンドで。

[ec2-user@amazonlinux2 ~]$ sudo netstat -antup | grep xrdp
tcp 0 0 0.0.0.0:3389 0.0.0.0:* LISTEN 8234/
xrdp
tcp 0 0 127.0.0.1:3350 0.0.0.0:* LISTEN 8233/xrdp-sesman

RDPの3389ポートは使える。

 

今回は下記の通りあっさりつながったが、ファイアウォールで邪魔されているようなら次の設定。

疎通確認してCentOS 7のファイアーウォールで止まっているようだったら、下記のコマンドを実施。

# firewall-cmd --permanent --zone=public --add-port=3389/tcp
# firewall-cmd --reload

 

 

自動起動の設定は下記のsystemctlコマンドで。

sudo systemctl enable xrdp.service

 

Windows側の接続確認

mstsc.exeで接続

mstsc.exeを起動しVMIPアドレスを指定し、[接続(N)]をクリックする。

f:id:shigeo-t:20201026102738p:plain

ダイアログが出る。[はい(Y)]をクリック。

f:id:shigeo-t:20201026102214p:plain

あっさりつながった。ユーザとパスワードはsshで使用しているユーザと同じ。

f:id:shigeo-t:20201026102258p:plain

 

しかし文字化け

ログインしてみると文字化けwww。

f:id:shigeo-t:20201026103041p:plain

こういうときはiOSMicrosoft謹製のRD Clientで接続してみる。しかし文字化け。f:id:shigeo-t:20201026104353p:plain

ということはフォントが解決できていないっていうことになる。

 

フォントをインストールして文字化け解消

インストールする。

sudo yum -y install vlgothic-*

実行結果は下記の通り。

[ec2-user@amazonlinux2 ~]$ sudo yum update -y
読み込んだプラグイン:langpacks, priorities, update-motd
275 packages excluded due to repository priority protections
No packages marked for update
[ec2-user@amazonlinux2 ~]$ sudo yum -y install vlgothic-*
読み込んだプラグイン:langpacks, priorities, update-motd
275 packages excluded due to repository priority protections
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ vlgothic-fonts.noarch 0:20130607-2.amzn2 を インストール
---> パッケージ vlgothic-p-fonts.noarch 0:20130607-2.amzn2 を インストール
--> 依存性解決を終了しました。

依存性を解決しました

========================================================================================================================
Package アーキテクチャー バージョン リポジトリー 容量
========================================================================================================================
インストール中:
vlgothic-fonts noarch 20130607-2.amzn2 amzn2-core 2.2 M
vlgothic-p-fonts noarch 20130607-2.amzn2 amzn2-core 2.2 M

トランザクションの要約
========================================================================================================================
インストール 2 パッケージ

総ダウンロード容量: 4.4 M
インストール容量: 7.9 M
Downloading packages:
(1/2): vlgothic-fonts-20130607-2.amzn2.noarch.rpm | 2.2 MB 00:00:00
(2/2): vlgothic-p-fonts-20130607-2.amzn2.noarch.rpm | 2.2 MB 00:00:00
------------------------------------------------------------------------------------------------------------------------
合計 1.2 MB/s | 4.4 MB 00:00:03
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
インストール中 : vlgothic-p-fonts-20130607-2.amzn2.noarch 1/2
インストール中 : vlgothic-fonts-20130607-2.amzn2.noarch 2/2
検証中 : vlgothic-fonts-20130607-2.amzn2.noarch 1/2
検証中 : vlgothic-p-fonts-20130607-2.amzn2.noarch 2/2

インストール:
vlgothic-fonts.noarch 0:20130607-2.amzn2 vlgothic-p-fonts.noarch 0:20130607-2.amzn2

完了しました!

 

そして接続確認。少しメニューとかのフォントが直るまで数秒掛かるが問題ない。またフォントを解決している間マウスポインタが見えなかったが、それも時間が解決する。

f:id:shigeo-t:20201026105927p:plain

 

VNCの描画が気に入らないのでRDP接続出来てよかった。

X Windowハンドブック