Ubuntu SSH 포트 설정 및 연결

1. Ubuntu SSH 포트 개방

SSH 포트 개방을 위해서는 2가지 작업을 진행해야 합니다. 첫 번째는 ubuntu iptables에 22번 포트를 개방해야 하고 두 번째는 virtualbox의 포트를 포워드 해야 합니다. 만약 외부 ip를 사용해서 ubuntu를 설치 했다면 첫 번째 작업만 해도 무방합니다.
만약 호스트 PC가 공유기에 물려 있다면 DMZ 설정 및 포트 포워드로 22번 포트를 호스트 PC에 연결해야 외부에서 접속이 가능합니다.

1) 기본 환경 구성

지금부터 시작되는 내용은 다음과 같은 환경을 가정하고 진행합니다.

  • Virtual로 ubuntu가 설치됨
  • 호스트 PC는 내부 공유기로부터 IP를 할당
  • Virtual IP: 10.0.2.15

2) Iptables SSH 포트 허용

SSH 포트는 22을 사용합니다. Iptables에서 tcp 22번 포트를 사용하도록 열어줍니다.

  • -A : 체인에 추가
  • -p tcp : 프로토콜 tcp
  • -m tcp : tcp 일치, 확장일치
  • –dport : 포트번호
  • — j : 대상 점프
  • ACCEPT : 허용
sudo iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT

iptables에 체인이 등록되었는지 규칙을 출력합니다. 추가된 규칙을 저장하고 Reload 합니다.

sudo iptables -S
sudo netfilter-persistent save
sudo netfilter-persistent reload
[Step 1] ubuntu ssh 포트 추가

ubuntu의 IP를 확인하겠습니다. ip addr명령으로 IP를 확인하면 다음과 같이 출력되며 ubuntu의 IP가 10.0.2.15인 것으로 확인됩니다.

ip addr
[Step 2] ubuntu ip 확인

2. VirtualBox의 SSH 포트 포워딩

ubuntu의 SSH 포트 개방으로 Ubuntu의 연결은 허용되었지만 아직 호스트 컴퓨터에서는 접속을 할 수 없습니다. 호스트 컴퓨터에서 MobaXterm으로 ubuntu에 접속하기 위해서는 VirtualBox에서 포트를 포워딩 해야 합니다.

VirtualBox에서는 가상머신을 종료하지 않고 설정에서 포트 포위딩을 할 수 있습니다. 가상PC 설정의 네트워크를 클릭합니다.

virtualbox ssh
[Step 1] virtualbox 관리자 실행
virtualbox ssh
[Step 2] virtualbox 네트워크 설정

네트워크 Advanced를 확장하여 포트 포워팅 버튼을 클릭합니다.

virtualbox ssh
[Step 3] virtualbox 네트워크 포트 포워딩 추가

포트 포워팅 규칙을 추가하기 위해 오른쪽 상단의 플러스 아이콘을 클릭합니다. 이름[SSH], 프로토콜[TCP], 호스트 IP(로컬호스트로 접속하기 때문에 비워두어도 됩니다.)[ ], 호스트 포트[22], 게스트 IP(ubuntu IP는 ip addr 명령으로 확인할 수 있습니다.)[10.0.2.15], 게스트 포트[22]를 입력합니다.

virtualbox ssh
[Step 4] virtualbox ssh 포트(22) 포워딩 설정

3. MobaXterm으로 Ubuntu 터미널 접속

MobaXterm을 실행합니다. 아직은 등록된 Session이 없기 때문에 새로운 Session을 등록하기 위해 왼쪽 상단의 Session을 클릭합니다.

mobaxterm ssh
[Step 1] MobaXterm 실행

SSH를 사용해서 ubuntu에 접속하기 위해서 왼쪽 상단의 SSH를 클릭합니다.

mobaxterm ssh
[Step 2] MobaXterm ssh session

Remnote Host는 ubuntu IP가 아닌 호스트 PC의 IP를 의미합니다. Host IP는 cmd명령으로 호스트 PC의 터미널을 실행하고 ipconfig /all 명령으로 확인할 수 있습니다. 여기서는 localhost IP로 접속하기 때문에 127.0.0.1을 입력하겠습니다. OK 버튼을 클릭해서 창을 닫습니다.

mobaxterm ssh
[Step 3] MobaXterm ssh session 추가(localhost 및 host IP)

MobaXterm의 왼쪽 user session 부분에 127.0.0.1 세션이 추가된 것을 확인할 수 있습니다. 해당 세션을 더블 클릭해서 로그인 터미널이 나타나면 포트가 정상적으로 개방된 것입니다.

mobaxterm ssh
[Step 3] ubuntu 접속