사전 조건

PuTTY을(를) 사용하여 Linux 인스턴스에 연결하려면 먼저 다음 사전 요구 사항을 완료하십시오.

  • PuTTY 설치

    PuTTY 다운로드 페이지에서 PuTTY를 다운로드하여 설치합니다. 이미 이전 버전의 PuTTY가 설치되어 있다면 최신 버전을 다운로드하는 것이 좋습니다. 전체 제품군을 설치해야 합니다.

  • 인스턴스의 ID 보기

    Amazon EC2 콘솔을 사용하여 인스턴스의 ID를 볼 수 있습니다([Instance ID] 열에서). describe-instances(AWS CLI) 또는 Get-EC2Instance(Windows PowerShell용 AWS 도구) 명령을 사용할 수도 있습니다.

  • 인스턴스의 퍼블릭 DNS 이름 보기

    Amazon EC2 콘솔을 사용해서 사용자의 인스턴스에 대한 퍼블릭 DNS를 얻을 수 있습니다([Public DNS (IPv4)] 열 확인. 이 열이 숨겨진 경우는 [Show/Hide] 아이콘을 클릭하고 [Public DNS (IPv4)]를 선택). describe-instances(AWS CLI) 또는 Get-EC2Instance(Windows PowerShell용 AWS 도구) 명령을 사용할 수도 있습니다.

  • (IPv6 전용) 인스턴스의 IPv6 주소를 얻습니다.

    인스턴스에 IPv6 주소를 할당했다면 퍼블릭 IPv4 주소나 퍼블릭 IPv4 DNS 호스트 이름 대신 IPv6 주소를 사용하여 인스턴스에 연결할 수도 있습니다. 로컬 컴퓨터에 IPv6 주소가 있고 IPv6를 사용하도록 컴퓨터를 구성해야 합니다. Amazon EC2 콘솔을 사용하여 인스턴스의 IPv6 주소를 얻을 수 있습니다([IPv6 IPs] 필드 확인). describe-instances(AWS CLI) 또는 Get-EC2Instance(Windows PowerShell용 AWS 도구) 명령을 사용할 수도 있습니다. IPv6에 대한 자세한 내용은 IPv6 주소 단원을 참조하십시오.

  • 프라이빗 키 찾기

    인스턴스를 시작할 때 지정한 키 페어를 찾기 위해 .pem 파일의 컴퓨터 상 위치에 대한 정규화된 경로를 얻습니다.

  • 인스턴스를 시작하는 데 사용한 AMI의 기본 사용자 이름을 가져옵니다

    • Amazon Linux AMI의 경우 사용자 이름은 ec2-user입니다.

    • Centos AMI의 경우 사용자 이름은 centos입니다.

    • Debian AMI의 경우 사용자 이름은 admin 또는 root입니다.

    • Fedora AMI의 경우 사용자 이름은 ec2-user 또는 fedora입니다.

    • RHEL AMI의 경우 사용자 이름은 ec2-user 또는 root입니다.

    • SUSE AMI의 경우 사용자 이름은 ec2-user 또는 root입니다.

    • Ubuntu AMI의 경우 사용자 이름은 ubuntu 또는 root입니다.

    • ec2-user 및 root를 사용할 수 없는 경우 AMI 공급자에게 문의하십시오.

  • IP 주소에서 인스턴스로의 인바운드 SSH 트래픽 활성화

    인스턴스와 연관된 보안 그룹이 IP 주소로부터 들어오는 SSH 트래픽을 허용하는지 확인하십시오. 기본 보안 그룹은 기본적으로 들어오는 SSH 트래픽을 허용하지 않습니다. 자세한 내용은 Linux 인스턴스의 인바운드 트래픽 권한 부여 단원을 참조하십시오.





Install Ubuntu Desktop on AWS EC2

I assume that you already set up a VM on EC2 by choosing Ubuntu Server AMI.

First, install Ubuntu Desktop on the server instance by running the following command.

$ sudo apt-get install ubuntu-desktop

Reboot the VM instance.

Next, install VNC server on the VM.

$ sudo apt-get install tightvncserver

After installation, launch VNC server (as a non-root user):

$ vncserver :1

The first time you run VNC server, it will ask you for VNC password. The VNC password should be at least 6 characters and up to 8 characters long. If the typed password is longer than that, only the first 8 characters will be used.

Once VNC server is launched successfully, it will create ~/.vnc directory and configuration files in it. A log file for VNC server will be located at ~/.vnc/*.log







윈도우에서 Ubuntu (AWS EC2) GUI 이용

윈도우에서 AWS EC2에 올린 Ubuntu를 GUI로 접속할 일이 있었다.

그리고 몇 시간의 시도 끝에 해결!

[ubuntu] sudo apt-get update
[ubuntu] sudo apt-get install ubuntu-desktop

설치를 시도하면 알겠지만, ubuntu-desktop의 용량이 크다. (2G 넘었나?)

좀 더 작은 용량만으로 하고 싶다면 필수 패키지만 설치하는 방법이 있다. (작동은 똑같이 됨!

[ubuntu] sudo aptitude install --without-recommends ubuntu-desktop

이제 나머지 필요한 것들도 설치하자.

[ubuntu] sudo apt-get install tightvncserver gnome-panel gnome-settings-daemon metacity nautilus gnome-terminal

설치가 끝났다면 초기 세팅 파일을 만들기 위해 한번 VNC서버를 작동하자. (아마 비밀번호를 입력하라고 하는데 잘 기억해뒀다가 나중에 GUI접속을 할 때 사용하면 된다.)

[ubuntu] vncserver :1

그리고 설정파일을 수정하자.

[ubuntu] vi~/.vnc/xstartup

아래와 같이 수정해주면 된다.

#!/bin/sh

export XKL_XMODMAP_DISABLE=1
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey

vncconfig -iconic &
gnome-panel &
gnome-settings-daemon &
metacity &
nautilus &
gnome-terminal &

변경된 사항을 반영하기 위해 서버를 끄고 다시 시작해주자.

[ubuntu] vncserver -kill :1
[ubuntu] vncserver :1

설정을 다 했으면 이제 SSH 터널을 설정해줘야 한다.

Putty를 켜서 EC2에 접속을 설정해둔 것을 LOAD한 후 다음과 같이 수정하자.

EC2에 접속하기 위해 사용하는 것을 Load! 해주자
1.1.1.1 대신 서버 IP주소를 입력해주고 Add 버튼을 누르면 된다.

이제 우리 로컬 5902포트에서 서버의 5901포트를 들어갈 수 있게 되는 것이다! 이제 AWS Management Console의 Security Groups 탭에 가서 5901포트틀 사용하겠다고 말해주면 된다.

마지막으로 Tight-VNC를 다운받아서 localhost::5902로 접속하면 된다.

localhost::5902로 접속을 누르고 위에서 설정했던 비밀번호를 입력하면 된다.

localhost::5902 로 접속하는 것은 Putty Configuration 을 통해서 먼저 EC2 에 접속 해놓은 다음에 연결이 가능한데 Remote Host: EC2_IP:5901   을 직접 기입하면 Putty Configuration 을 띄울 필요 없이 바로 원격 접속잉 가능하다

접속이 잘 안되면 

vncserver 를 kill 했다가 다시 켜보자

ref : https://docs.aws.amazon.com/ko_kr/AWSEC2/latest/UserGuide/putty.html
ref : http://xmodulo.com/how-to-set-up-ubuntu-desktop-vm-on-amazon-ec2.html
ref : https://medium.com/@ggomma/%EC%9C%88%EB%8F%84%EC%9A%B0%EC%97%90%EC%84%9C-ubuntu-aws-ec2-gui-%EC%9D%B4%EC%9A%A9-ee2567a85d8f


+ Recent posts