スキップしてコンテンツを表示

GUI を使用して EC2 macOS インスタンスにアクセスする方法を教えてください。

所要時間2分
0

専用ホストに Amazon Elastic Compute Cloud (Amazon EC2) の macOS インスタンスがあります。グラフィカルユーザーインタフェイス (GUI) を使用してそのインスタンスにアクセスしたいです。

解決策

次の手順は、macOS Ventura 13.7.5、macOS Sonoma 14.7.5、および macOS Sequoia 15.4.1 でテストされています。

重要: リモートセッション中の場合も、SSH セッションを実行してください。

EC2 macOS インスタンスに接続します。

SSH を使用して Amazon EC2 macOS インスタンスに接続します。

Linux

SSH を使用して ec2-user で EC2 macOS インスタンスに接続するには、次のコマンドを実行します。

ssh -i keypair_file ec2-user@Instance-Public-IP

注: keypair_file をキーペアに、Instance-Public-IP をインスタンスのパブリック IP アドレス に置き換えてください。

Windows

Windows 10 以降には、デフォルトで OpenSSH クライアントがインストールされています。OpenSSH クライアントを有効化するには、次の手順を実行します。

  1. [設定] を選択します。
  2. [アプリ] を選択し、[アプリと機能] を選択します。
  3. [オプション機能の管理] を選択します。
  4. [機能の追加] を選択し、[OpenSSH クライアント] を選択します。以前のバージョンの Windows を使用している場合は、Git Bash を使用して次のコマンドを実行します。
    ssh -i keypair_file ec2-user@Instance-Public-IP

注: インスタンスがパブリックサブネット内にある場合は、パブリック IP アドレスまたは Elastic IP アドレス経由でアクセス可能にします。プライベート IP アドレス経由でインスタンスに接続するには、踏み台サーバー (ジャンプサーバー) を使用します。または、AWS VPN または AWS Direct Connect を使用しても、プライベート IP アドレス経由でインスタンスへの接続を確立できます。macOS 画面共有サービスへのトラフィックをトンネリングするには、SSH の使用をおすすめします。また、セキュリティグループでは VNC ポートを開くことは推奨されません。

macOS 画面共有 SSH をインストールする

macOS インスタンスから macOS 画面共有 SSH をインストールして起動するには、次のコマンドを実行します。

sudo launchctl enable system/com.apple.screensharing
sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.screensharing.plist

次のコマンドを実行し、ec2-user のパスワードを設定します。

sudo passwd ec2-user

オペレーティングシステム (OS) がポート 5900 でリッスンしていることを確認します。

sudo lsof -i -n -P | grep TCP | grep 5900

ポート 5900 は VNC サーバーのデフォルト値です。

想定される出力:

launchd 1 root 15u IPv6 0xa78dfebd53aa990a 0t0 TCP *:5900 (LISTEN)
launchd 1 root 16u IPv4 0x7a1b35dd60e49ee6 0t0 TCP *:5900 (LISTEN)
launchd 1 root 19u IPv6 0xa78dfebd53aa990a 0t0 TCP *:5900 (LISTEN)
launchd 1 root 20u IPv4 0x7a1b35dd60e49ee6 0t0 TCP *:5900 (LISTEN)

セッションから退出します。

GUI を使用してインスタンスに接続する

GUI には、ローカルホストまたはインスタンスのパブリック IP アドレス/DNS から接続できます。

ローカルホストを使用する

注: GUI に接続する前に、ローカル Mac マシンで画面共有を無効化しなければならない場合があります。ローカルマシンの画面共有と Amazon EC2 接続の両方がポート 5900 を使用しようとする際、競合が発生する場合にこの必要が生じます。画面共有を無効にするには、[システム環境設定] を選択し、[一般][画面共有] を選択します。画面共有を [オフ] に設定します。

次の手順を実行します。

  1. 次のコマンドを実行し、VNC ポートへの SSH トンネルを作成します。
    ssh -i keypair_file -L 5900:localhost:5900 ec2-user@Instance-Public-IP
    注: keypair_file を SSH キーのパスに置き換えてください。Instance-Public-IP をインスタンスの IP アドレスまたは DNS 名に置き換えてください。なお、プライベートネットワーク経由で接続する場合は、プライベート IP アドレスも使用できます。
  2. VNC クライアントを使用して localhost:5900 に接続します。
    macOS
    macOS には VNC クライアントが組み込まれています。VNC ビューアにアクセスするには、Finder を開いて [移動][サーバへ接続] を選択します。キーボードショートカット CMD + K も使用できます。次に、[サーバのアドレス]vnc://localhost:5900 を入力します。
    Windows
    RealVNC Viewer などのサードパーティ製 VNC クライアントを使用できます。RealVNC Viewer クライアントを使用する場合は、[ファイル] ドロップダウンリストから [新規接続] を選択します。[VNC サーバー: localhost:5900、暗号化: VNC サーバーによる選択] で、[OK] をクリックします。TightVNC on Windows などの他のクライアントは、この解決策を使用できません。
    注: RealVNC Viewer に接続する際、認証エラーが発生する場合があります。この問題を解決するには、[暗号化] 設定を [優先有効] から [優先無効] に、または [優先無効] から [優先有効] に変更します。
    Linux
    Remmina などのサードパーティ製 VNC クライアントを使用できます。ツールのダウンロードについては、Remmina のウェブサイトで「Remmina のインストール方法」を参照してください。

パブリック IP アドレスまたは DNS を使用する

Mac で画面共有を有効にしたくない場合は、GUI から、パブリック IP アドレスまたは DNS 経由でインスタンスに接続します。

次のコマンドを実行します。

ssh -i keypair_file ec2-user@Instance-Public-IP

次に、「Localhost」セクションのステップ 2 の手順を実行し、VNC Viewer にアクセス、接続します。

vnc://Instance-Public-IP:5900 or vnc://Instance-DNS-address:5900

注: パブリック IP アドレス経由で接続する場合は、セキュリティグループルールでポート 5900 を許可します。

macOS GUI の起動後、作成した新しいパスワードを使用して ec2-user で macOS インスタンスのリモートセッションに接続します。

関連情報

Amazon Linux 2 を実行している Amazon EC2 インスタンスに GUI をインストールする方法を教えてください

SSH または GUI を使用して Mac インスタンスに接続する

amazon-ec2-mac-getting-started (GitHub のウェブサイト)

AWS公式更新しました 5ヶ月前
コメントはありません

関連するコンテンツ