参考サイト
[Windows+Linux]RDP+Ubuntuを使った開発環境構築
AWS Systems Managerでオンプレ環境のWindowsを管理する
【AWS】「AWS SystemsManager」経由でWindowsサーバにリモートデスクトップ接続する方法
環境
接続元:Windows10 Pro
接続先:Jetson(Ubuntu 18.04.6)
作業内容
AWS設定
SystemsManagerアクティベーション作成
・[AWS/SSMメニュー/ノード管理/ハイブリッドアクティベーション]選択
・アクティベーションの作成
- アクティベーションの説明:Activation Test
- インスタンス制限:1
- IAMロール:実行ロールを作成
- 有効期限:未指定(1日後)
- インスタンス名:Jetson-remote
・出力されたCodeとIDをメモ
IAM 作成
・グループの作成
- グループ名:任意
- 権限
- AmazonSSMFullAccess
- AmazonEC2ReadOnlyAccess
・ユーザー作成
- ユーザー名:任意
- アクセスの種類:プログラムによるアクセス
- グループ:上記で作成したグループ
・ユーザ情報が記載されている.csvをダウンロード
Access key ID と Secret access keyをメモ
インスタンス枠の設定(標準↔高度)
※高度なインスタンス枠(有料)でないとセッション接続ができない
・[AWS/SSMメニュー/ノード管理/フリートマネージャー]選択
・画面右寄り
[アカウント管理/インスタンス枠の設定]選択
→[アカウント設定の変更]
Linux設定
リモート環境設定
・xrdpのインストール
$sudo apt install xserver-xorg-core xorgxrdp xrdp $cat <<EOF > ~/.xsessionrc >export GNOME_SHELL_SESSION_MODE=ubuntu >export XDG_CURRENT_DESKTOP=ubuntu:GNOME >export XDG_DATA_DIRS=/usr/share/ubuntu:/usr/local/share:/usr/share:/var/lib/snapd/desktop >export XDG_CONFIG_DIRS=/etc/xdg/xdg-ubuntu:/etc/xdg >EOF $sudo sed -e 's/^new_cursors=true/new_cursors=false/g' -i /etc/xrdp/xrdp.ini $cat <<EOF | \ >sudo tee /etc/polkit-1/localauthority/50-local.d/xrdp-color-manager.pkla >[Neto\workmanager] >Identity=unix-user:* >Action=org.freedesktop.color-manager.create-device >ResultAny=no >ResultInactive=no >ResultActive=yes >EOF $sudo systemctl restart xrdp $sudo systemctl restart polkit
IPアドレス確認
$ip -4 a
Windowsから接続確認
・リモートデスクトップ接続の起動(検索:RDP)
・確認したIPアドレスを入力
※Ubuntu 側でログアウトしている必要あり。複数ユーザーでの同時ログインは可能
SSM Agent インストール
・curl インストール(必要なら)
$sudo apt install curl
・SSM Agentダウンロード→インストール
※プロキシ無し
$mkdir /tmp/ssm $curl https://s3.amazonaws.com/ec2-downloads-windows/SSMAgent/latest/debian_arm64/amazon-ssm-agent.deb -o /tmp/ssm/amazon-ssm-agent.deb $sudo dpkg -i /tmp/ssm/amazon-ssm-agent.deb $sudo service amazon-ssm-agent stop $sudo amazon-ssm-agent -register -code "activation-code" -id "activation-id" -region "region" $sudo service amazon-ssm-agent start
※activation-code と activation-idはSystemsManagerアクティベーション作成で取得
※region はアクティベーションを作成したアカウントの登録地
AWSログイン画面の右上、アカウント名の左に表示されている
初期値が東京じゃなかったりするので注意
・インスタンスの確認
[AWS/AWS Systems Manager/ノード管理/フリートマネージャー]選択
→マネージドノードの一覧にノードが増える
Windows設定
環境設定
・AWS CLIインストール
・SSMプラグインインストール
セッション開始
>aws configure AWS Access Key ID [None]: <Access key ID> AWS Secret Access Key [None]: <Secret Access Key> Default region name [None]: ap-northeast-1 Default output format [None]: JSON >aws ssm start-session --tartget <ノードID> --document-name AWS-StartPortForwardingSession --parameters "portNumber=3389, localPortNumber=13389"
※Access key ID とSecret access keyはユーザー作成時に取得
※ノードIDはフリートマネージャーで確認
※高度なインスタンス(有料)でないとアクセス不可→設定方法
Starting session with SessionId: <xxxxx> Port 13389 opened for sessionId <xxxxx> Waiting for connections...
と出れば接続成功
リモートデスクトップ開始
・リモートデスクトップ接続を起動
・コンピューター名に「localhost:13389」と入力