AWS WorkspacesにLinuxからアクセスする

会社でAWS Worksapcesを使えるようになったので、家のLinux (Xubuntu 18.04)からアクセスするようにした際のメモ。
Web Clientってのもあるが、うちのChromeからだと繋がらなかったので、Teradici PCoIP Clientを使った。

参考にしたのはここ
Connecting to Amazon WorkSpaces Using a Linux Client

やることは、

  1. EC2で PCoIP Connection Manager (PCM)インスタンスを立てる
  2. VPCセキュリティグループの設定をする
  3. sshでEC2にアクセスしてPCMの設定をする
  4. LinuxにPCoIP Clientをインストールする
  5. Linux ClientからPCM経由でWorkspacesにアクセスする

つまり、Linuxから直接アクセスするんではなくて、中継用のEC2が必要。

1. EC2で PCoIP Connection Manager (PCM)インスタンスを立てる

AWS Marketplaceからデプロイできます。
Teradici PCoIP Connection Manager for Amazon WorkSpaces

私1人しか使わないので、インスタンスタイプはt2.microにしました。
t2.mediumが推奨となってますが、目下t2.microで何の不自由もなし。

インスタンスを立てたらキーペアをダウンロードしておく。

あと、インスタンス立てた直後はVMにパブリックIPがないので、Elastic IPでパブリックIPアドレスを割り当てておく。

2.VPCセキュリティグループの設定をする

PCMのための「穴あけ」設定をします。
セキュリティグループ設定で、下記のインバウンド/アウトバウンドを許可します。

インバウンド:

SSH 22 TCP
HTTPS 443 TCP
DHCP 67/68 UDP

アウトバウンド

Kerberos 88 TCP
HTTPS 443 TCP
PCoIP 4172 TCP/UDP
DNS 53 UDP
NTP 123 UDP
HTTP 80 TCP
DHCP 67/68 UDP

あとは、Workspaces側のVPCセキュリティグループ設定に対して、上記のアウトバウンド許可をインバウンド許可として設定してください。
ま、WorkspacesとPCMを同じVPCセキュリティグループに入れるってのもアリですが、そこらへんは本題じゃないので適宜。

3. sshでEC2にアクセスしてPCMの設定をする

sshでEC2につなぎます。
キーペアは1.でEC2を立てた時に作った奴です。
ユーザー名は「administrator」です。

$ ssh -i mykey.pem administrator@192.0.2.1

繋がったら、必要項目を入力して行きます。
分かりづらかったのが、Extra DNS servers: という項目で、何のDNSだ?と思ったらWorkspacesが所属するActive DirectoryのDNSでした。
AWS Workspacesの管理画面に書いてあります。

4. LinuxにPCoIP Clientをインストールする

まずはaptのレポジトリを追加する。

$ wget -O teradici-repo-latest.deb https://downloads.teradici.com/ubuntu/teradici-repo-$(lsb_release -cs)-latest.deb
$ sudo apt install ./teradici-repo-latest.deb

/etc/apt/sources.list.d/pcoip.listを編集して、bionic-standardの行をコメントアウトして、bionic-devの行を有効可

#deb [arch=amd64] https://downloads.teradici.com/ubuntu bionic-stable non-free
deb [arch=amd64] https://downloads.teradici.com/ubuntu bionic-dev non-free

そしてインストール

$ sudo apt update
$ sudo apt install pcoip-client

5. Linux ClientからPCM経由でWorkspacesにアクセスする

PCoIP Clientを起動します。
デスクトップメニューにもあるし、ターミナルから起動も可能です。

$ pcoip-client &

EC2(PCM)のIPアドレス・ID・パスワードを入力して接続します。

これでうちのLinuxからもAWS WorkspacesのWindowsデスクトップにアクセス出来るようになりました。