

# SSH または GUI を使用して Mac インスタンスに接続する
<a name="connect-to-mac-instance"></a>

SSH またはグラフィカルユーザーインターフェイス (GUI) を使用して Mac インスタンスに接続できます。

複数のユーザーが同時に OS にアクセスできます。ポート 5900 の画面共有サービスが組み込まれているため、通常、1:1 user:GUI セッションがあります。macOS 内で SSH を使用すると、`sshd_config` ファイルの [最大セッション] 制限まで、複数のセッションがサポートされます。

## SSH を使用したインスタンスへの接続
<a name="mac-instance-ssh"></a>

Amazon EC2 Mac インスタンスは、デフォルトではリモートルート SSH を許可しません。ec2-user アカウントは、SSH を使用してリモートでログインするように設定されています。ec2-user アカウントにも **sudo** 権限があります。インスタンスに接続したら、他のユーザーを追加できます。

SSH を使用したインスタンスへの接続をサポートするには、SSH アクセスを許可するキーペアとセキュリティグループを使用してインスタンスを起動し、インスタンスにインターネット接続があることを確認します。インスタンスに接続するときに、キーペアの `.pem` ファイルを指定します。

SSH クライアントを使用して Mac インスタンスに接続するには、次の手順に従います。インスタンスの接続でエラーが発生した場合は、[Amazon EC2 Linux インスタンスへの接続に関する問題のトラブルシューティング](TroubleshootingInstancesConnecting.md)を参照してください。

**SSH を使用してインスタンスに接続するには**

1. コマンドラインで**ssh**と入力して、ローカルコンピュータに SSH クライアントがインストールされていることを確認します。コンピュータがコマンドを認識しない場合は、お使いのオペレーティングシステム用の SSH クライアントを検索し、インストールします。

1. インスタンスのパブリック DNS 名を取得します。Amazon EC2 コンソールを使用して、[**詳細**] タブと [**ネットワーク**] タブの両方でパブリック DNS 名を確認できます。AWS CLI を使用して、[describe-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html) コマンドを使用してパブリック DNS 名を見つけることができます。

1. インスタンスの起動時に指定したキーペアの `.pem` ファイルを見つけます。

1. 次の **ssh** コマンドを使用してインスタンスに接続し、インスタンスのパブリック DNS 名と `.pem` ファイルを指定します。

   ```
   ssh -i /path/key-pair-name.pem ec2-user@instance-public-dns-name
   ```

パスワード認証は、パスワードのブルートフォース攻撃を防ぐために無効になっています。SSH 設定を変更する前に、`/usr/local/aws/ec2-macos-init/init.toml` を開いて `secureSSHDConfig` を `false` に設定します。

## インスタンスのグラフィカルユーザーインターフェイス (GUI) に接続する
<a name="mac-instance-vnc"></a>

VNC、Apple Remote Desktop (ARD)、または Apple Screen Sharing アプリケーション (macOS に付属) を使用してインスタンスの GUI に接続するには、以下の手順に従います。

**注記**  
macOS 10.14 以降では、画面共有が[システム環境設定](https://support.apple.com/guide/remote-desktop/enable-remote-management-apd8b1c65bd/mac)で有効になっている場合のみ制御できます。

**ARD クライアントまたは VNC クライアントを使用してインスタンスに接続するには**

1. ローカルコンピュータに、ARD をサポートしている ARD クライアントまたは VNC クライアントが、インストールされていることを確認します。macOS では、組み込みの画面共有アプリケーションを利用できます。インストールされていない場合は、お使いのオペレーティングシステム向けの ARD を検索し、インストールします。

1. ローカルコンピュータから、[SSH を使用してインスタンスに接続します](#mac-instance-ssh)。

1. 次のように **passwd** コマンドを使用して、ec2-user アカウントのパスワードを設定します。

   ```
   [ec2-user ~]$ sudo passwd ec2-user
   ```

1. 次のコマンドを使用して macOS スクリーン共有をインストールして起動します。

   ```
   [ec2-user ~]$ sudo launchctl enable system/com.apple.screensharing
   sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.screensharing.plist
   ```

1. **exit** と入力して Enter キーを押して、インスタンスとの接続を切断します。

1. コンピュータから、次の **ssh** コマンドを使用してインスタンスに接続します。前のセクションで示したオプションに加えて、ポート転送を有効にしローカルポート 5900 のすべてのトラフィックをインスタンスの ARD サーバーに転送する場合は、**-L** オプションを使用します。

   ```
   ssh -L 5900:localhost:5900 -i /path/key-pair-name.pem ec2-user@instance-public-dns-name
   ```

1. ローカルコンピュータから、ARD をサポートしている ARD クライアントまたは VNC クライアントを使用して、`localhost:5900` に接続します。例えば、macOS で画面共有アプリケーションを次のように使用します。

   1. **[検索]** を開いて、**[移動]** を選択してください。

   1. **[サーバーに接続]** を選択してください。

   1. **[サーバーアドレス]** フィールドに、`vnc://localhost:5900` と入力してください。

   1. プロンプトに従って、**ec2-user** を使用して ec2-user アカウント用に作成したユーザー名とパスワードでログインします。

## Mac インスタンスで macOS の画面解像度を変更する
<a name="mac-screen-resolution"></a>

ARD または ARD をサポートする VNC クライアントを使用して EC2 Mac インスタンスに接続したら、[displayplacer](https://github.com/jakehilborn/displayplacer) などの公開されている macOS ツールやユーティリティのいずれかを使用して macOS 環境の画面解像度を変更できます。

**displayplacer を使用して画面解像度を変更するには**

1. displayplacer をインストールします。

   ```
   [ec2-user ~]$ brew tap jakehilborn/jakehilborn && brew install displayplacer
   ```

1. 現在の画面情報と可能な画面解像度を表示します。

   ```
   [ec2-user ~]$ displayplacer list
   ```

1. 希望の画面解像度を適用します。

   ```
   [ec2-user ~]$ displayplacer "id:<screenID> res:<width>x<height> origin:(0,0) degree:0"
   ```

   例えば、次のようになります。

   ```
   RES="2560x1600"
   displayplacer "id:69784AF1-CD7D-B79B-E5D4-60D937407F68 res:${RES} scaling:off origin:(0,0) degree:0"
   ```