

# SSH 또는 GUI를 사용하여 인스턴스에 연결
<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 콘솔을 사용하여 [**세부 정보(Details)**]와 [**네트워킹(Networking)** 탭 모두에서 퍼블릭 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 Remote Desktop Sharing Desktop(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** 명령을 사용하여 인스턴스에 연결합니다. 이전 섹션에 표시된 옵션 외에도 **-L** 옵션을 사용하여 포트 전달을 활성화하고 로컬 포트 5900의 모든 트래픽을 인스턴스의 ARD 서버로 전달합니다.

   ```
   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. **Finder**를 열고 **실행**을 선택합니다.

   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"
   ```