Amazon Linux 2를 실행하는 Amazon EC2 인스턴스에 GUI를 설치하려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2021년 4월 20일

Amazon Linux 2를 실행하는 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스에 그래픽 사용자 인터페이스(GUI)를 설치하려고 합니다. 어떻게 해야 합니까?

간략한 설명

계속하기 전에 우선 GUI 수동 설치에 대한 대안 중 하나를 고려하십시오.

  • MATE가 사전 설치된 상태로 제공되는 Amazon Linux 2 AMI에서 시작합니다. 자세한 내용은 Amazon Linux 2 MATE 데스크톱 연결 구성을 참조하세요.
  • 지원되는 모든 디바이스에서 위치와 시간에 관계없이 필요한 데이터, 애플리케이션 및 리소스에 액세스할 수 있도록 지원하는 완전관리형 영구 데스크톱 가상화 서비스인 Amazon WorkSpaces 사용을 시작합니다. 자세한 내용은 제품 홈페이지를 참조하십시오.
  • 다양한 네트워크 조건에서 클라우드 또는 데이터 센터에서 모든 디바이스로 스트리밍하는 원격 데스크톱 및 애플리케이션을 제공하는 안전한 방법을 고객에게 제공하는 고성능 원격 디스플레이 프로토콜인 NICE DCV 사용을 시작합니다. 자세한 내용은 제품 홈페이지를 참조하십시오.

수동 GUI 설치를 계속하려면, 다음을 수행합니다.

  1. Amazon Linux 2에 추가로 사용할 수 있는 GNOME 2 기반의 가벼운 GUI인 MATE 데스크톱 환경을 설치합니다. MATE에 대한 자세한 내용은 MATE 데스크톱 환경 웹 사이트를 참조하세요.
  2. TigerVNC와 같은 가상 네트워크 컴퓨팅(VNC) 서비스를 설치합니다. TigerVNC에 대한 자세한 내용은 tigervnc.org 웹 사이트를 참조하세요.
  3. VNC를 사용하여 GUI에 연결합니다.
  4. (선택 사항) VNC에 대한 암호 인증을 비활성화합니다.
  5. (선택 사항) Chromium이나 Firefox 등의 웹 브라우저를 설치합니다. Chromium에 대한 자세한 내용은 chromium.org 웹 사이트를 참조하십시오. Firefox에 대한 자세한 내용은 mozilla.org 웹 사이트를 참조하십시오. Chromium과 Firefox는 모두 X86 버전에서만 사용할 수 있습니다.

참고: 이 지침은 Amazon Linux 2에만 적용됩니다. 실행 중인 버전을 확인하려면 다음 명령을 실행하십시오.

$ grep PRETTY_NAME /etc/os-release
PRETTY_NAME="Amazon Linux 2"

GUI를 사용하여 EC2 macOS 인스턴스에 액세스하는 방법에 대한 자세한 내용은 GUI를 통해 내 Amazon EC2 Mac 인스턴스에 액세스하려면 어떻게 합니까?를 참조하십시오.

해결 방법

시작하기 전에

1.    SSH를 사용하여 인스턴스에 EC2-사용자로 연결합니다.

인스턴스는 퍼블릭 서브넷에 있어야 하며 퍼블릭 IP 주소 또는 탄력적 IP 주소를 통해 액세스할 수 있어야 합니다. 또는 프라이빗 IP를 통해 인스턴스에 액세스할 수 있는 AWS VPN 또는 AWS Direct Connect를 사용하여 연결을 설정할 수 있습니다. 이러한 지침은 배스천 호스트를 사용하는 환경에는 적용되지 않습니다. 보안상의 이유로 VNC 서버에 대한 트래픽은 SSH를 사용하여 터널링됩니다. 보안 그룹에서 VNC 포트를 열지 않는 것이 가장 좋습니다.

2.    sudo yum update를 실행하여 인스턴스를 업데이트하고 인스턴스를 재부팅합니다. 업데이트 및 재부팅을 하지 않으면 다음의 단계를 실행할 때 예기치 않은 결과가 발생할 수 있습니다.

MATE 데스크톱 환경 설치

1.    MATE 패키지를 설치합니다.

sudo amazon-linux-extras install mate-desktop1.x

2.    MATE를 모든 사용자에 대한 기본 데스크톱으로 정의합니다.

sudo bash -c 'echo PREFERRED=/usr/bin/mate-session > /etc/sysconfig/desktop'

TigerVNC 설치

1.    TigerVNC 서버를 설치합니다.

sudo yum install tigervnc-server

2.    이 사용자에 대해 6~8자를 포함하는 VNC 관련 암호를 구성합니다. 보기 전용 암호를 입력할지 묻는 메시지가 표시되면 “n”을 누릅니다.

vncpasswd

3.    VNC가 보안 SSH 터널을 사용할 때만 액세스할 수 있도록 로컬 호스트에 대한 VNC 네트워크 액세스를 제한합니다.

tigervnc 구성 디렉터리 생성:

sudo mkdir /etc/tigervnc

localhost 옵션을 포함하는 필수 구성 파일 생성:

sudo bash -c 'echo localhost > /etc/tigervnc/vncserver-config-mandatory'

4.    디스플레이 번호 1에서 VNC 서버를 시작하고 부팅 시 항상 시작되도록 합니다.

systemd 단위를 생성합니다.

sudo cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@.service

sed 명령을 사용하여 새 단위에서 모든 USERec2-user로 바꿉니다.

sudo sed -i 's/<USER>/ec2-user/' /etc/systemd/system/vncserver@.service

systemd 관리자 구성을 다시 로드합니다.

sudo systemctl daemon-reload

서비스를 활성화합니다.

sudo systemctl enable vncserver@:1

서비스를 시작합니다.

sudo systemctl start vncserver@:1

VNC를 사용하여 GUI에 연결

1.    아직 설치되지 않은 경우 로컬 컴퓨터에 TigerVNC 소프트웨어를 설치합니다. TigerVNC는 Windows, Linux 및 macOS에서 사용할 수 있습니다. 다운로드에 액세스하려면 TigerVNC 웹 사이트를 참조하십시오.

Linux: tigervnc 패키지는 여러 배포판의 리포지토리에서 사용할 수 있으며, 해당 패키지 관리자를 사용하여 설치할 수 있습니다.

macOS: TigerVNC-x.y.z.dmg를 다운로드하고 설치합니다. 여기에서 x.y.z는 최신 버전을 나타냅니다.
Windows:
tigervnc64-x.y.z.exe(64비트) 또는 tigervnc-x.y.z.exe(32비트)를 다운로드하고 설치합니다. 여기에서 x.y.z는 최신 버전을 나타냅니다.

2.    로컬 컴퓨터에서 로컬 포트 5901/TCP(VNC)의 모든 트래픽을 인스턴스의 VNC 서버로 전달하는 터널을 생성하는 동안 SSH를 사용하여 인스턴스에 연결합니다.

Linux 및 macOS

SSH를 사용하여 인스턴스에 연결할 때 -L 파라미터를 추가하여 포트 전달을 활성화합니다. PEM_FILE을 프라이빗 키로 바꾸고 INSTANCE_IP를 인스턴스의 퍼블릭 IP 또는 프라이빗 IP로 적절하게 바꿉니다.

ssh -L 5901:localhost:5901 -i PEM_FILE ec2-user@INSTANCE_IP

Windows

PuTTY와의 연결을 열 때 포트 전달을 구성하고, 연결을 엽니다.    연결 메뉴에서 SSH를 선택한 다음 터널을 선택합니다.    소스 포트 필드에 5901을 입력합니다.    localhost:5901대상 필드에 입력합니다.     추가를 선택합니다.

3.    로컬 컴퓨터에서 TigerVNC Viewer를 엽니다. VNC 서버의 호스트 이름을 묻는 메시지가 표시되면 localhost: 1을 입력한 다음 여기에 연결합니다.

4.    TigerVNC 설치 섹션의 2단계에서 설정한 VNC 암호를 입력합니다. 연결이 안전하지 않다는 알림이 표시되면 무시하세요. 암호화된 SSH 터널을 사용하여 VNC 서버에 액세스하고 있습니다.

MATE 데스크톱 환경이 표시됩니다.

(선택 사항) VNC에 대한 암호 인증 비활성화

VNC 암호 인증 비활성이 가장 좋은 방법은 아닙니다. 인스턴스에 연결하기 위해 SSH를 사용할 수 있는 모든 사용자는 터널을 생성하고 VNC 데스크톱에 액세스할 수 있습니다. 단일 사용자 인스턴스이고(즉, 다른 사용자가 로그인할 수 없음) VNC에 대한 암호 인증을 비활성화하려면 다음 단계를 따릅니다.

1.    VNC 서버의 보안 유형 설정을 없음으로 변경합니다.

echo SecurityTypes=None >> ~/.vnc/config

2.    VNC 서버를 다시 시작합니다.

sudo systemctl restart vncserver@:1

(선택 사항) 웹 브라우저 설치 (X86만 해당)

AWS는 Amazon Linux 2 리포지토리에서 Chromium 또는 Firefox와 같은 웹 브라우저를 제공하지 않습니다. 이러한 브라우저 중 하나를 설치하려면 아래 단계를 따르십시오. AWS는 타사 소스에서 설치된 소프트웨어에 대한 지원을 제공하지 않음을 기억하십시오.

아래 지침은 64비트 Intel 및 AMD 프로세서(x86_64) 기반 EC2 인스턴스에 적용됩니다. 이러한 타사 소스는 Graviton 프로세서(aarch64) 기반 인스턴스를 지원하지 않습니다. 인스턴스의 아키텍처를 확인하려면 다음 명령을 실행합니다.

$ uname -m
x86_64

Chromium(Google Chrome의 오픈 소스 프로젝트)을 설치하려면 다음을 수행하십시오.

1.    EPEL 리포지토리를 활성화합니다. 자세한 내용은 Fedoraproject.org 웹 사이트의 EPEL 설명서를 참조하십시오.

sudo amazon-linux-extras install epel

2.    Chromium 패키지를 설치합니다.

sudo yum install chromium

Chromium은 Applications, Internet, Chromium Web Browser 아래 MATE에 설치됩니다.

Mozilla Firefox(현재 사용자만 해당)를 설치하려면 다음을 수행하십시오.

1.    Linux 64비트용 최신 Firefox 버전을 로컬 컴퓨터에 다운로드합니다. 다운로드에 액세스하려면 mozilla.org 웹 사이트를 참조하십시오.

2.    Firefox를 다운로드한 후, 파일을 인스턴스에 복사합니다. 지침은 각 Linux Windows 전용 웹 사이트를 참조하십시오.

3.    파일 콘텐츠의 압축을 풉니다. 아래 명령은 파일이 ec2-user의 홈 디렉터리에 있음을 나타냅니다. 필요에 따라 경로 및 Firefox 버전을 변경합니다.

tar jxf ~/firefox-xx.y.tar.bz2 -C ~/

4.    vim 또는 즐겨 사용하는 편집기를 사용하여 데스크톱 아이콘을 만듭니다. 다음의 예시와 같은 내용으로 ~/Desktop/Firefox.desktop 파일을 생성합니다.

[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Icon=/home/ec2-user/firefox/browser/chrome/icons/default/default128.png
Icon[en_US]=/home/ec2-user/firefox/browser/chrome/icons/default/default128.png
Name[en_US]=Firefox
Exec=/home/ec2-user/firefox/firefox
Comment[en_US]=Firefox web browser
Name=Firefox
Comment=Firefox web browser
GenericName[en_US.UTF-8]=Firefox web browser
Categories=Network;WebBrowser;

5.    데스크톱에서 4단계에서 생성한 아이콘을 사용하여 Firefox를 시작합니다.

6.    애플리케이션 시작 프로그램이 신뢰할 수 있는 것으로 표시되지 않는다는 메시지가 표시되면 신뢰할 수 있는 항목으로 표시를 선택한 다음 더블 클릭하여 Firefox를 엽니다.


이 문서가 도움이 되었습니까?


결제 또는 기술 지원이 필요합니까?