외부에서 서버에 접속하기 위해 ssh를 세팅해줘야한다.
우선 ubuntu의 계정에 접속하여 마우스 오른쪽 키를 누르고 터미널을 열어준다.
sudo apt update
sudo apt install openssh-server
sudo systemctl status ssh
ssh 상태를 확인한다.
active (running)으로 되어 있으면 정상 작동중인 것이다.
ssh 접속을 허용한다
sudo ufw allow ssh
sudo ufw status
그러면 이제 외부에서 ssh 접속을 위한 준비는 어느정도 완료되었다.
ssh 세팅까지 완료되었다면 이제는 ip를 설정해줘야 한다.
WOL기능 활성화까지 염두해두고 있기 때문에 유선랜으로 되어있지만, 해당 기능을 사용하지 않을 경우 wifi를 이용해도 상관없다.
설정에서 Network에 들어간다.(wifi를 이용하는 경우 Wi-Fi)
사용하고 있는 네트워크에서 오른쪽의 톱니바퀴를 누르고 IPv4로 들어간다.
IPv4 Method를 Manual로 바꾸고 Addresses에서
Address는 자신이 이 컴퓨터에 부여할 ip주소를 설정하다(보통 iptime 공유기를 설치하면 192.168.0.1에 공유기가 부여되고 192.168.0.2부터는 공유기에 접속하는 기기들에게 부여한다)
필자는 특별한 의미없이 192.168.0.47에 부여했고 Netmask는 255.255.255.0 을 입력하고 Gateway에는 공유기 주소인 192.168.0.1을 입력하고
DNS에는 톱니바퀴를 눌렀을 때 Details에 있는 DNS값을 복사했다.
그러면 ubuntu에서 준비는 끝났다.
우선 필자가 사용하는 공유기는 iptime 공유기이다. 핵심적으로 필요한 기능 공유기에서 지원하는 DDNS 기능이다. 공유기에 따라 조금씩 다를 수 있으니 유의하기를 바란다.
iptime 공유기는 192.168.0.1 로 접속하면 공유기 환경 설정을 변경할 수 있다.
관리도구에 들어가서 DDNS 설정을 누르고
호스트이름에 사용하고자 하는 주소 이름을 적고
사용자ID에 자신이 사용하는 이메일 주소를 적는다.
예를 들어 호스트 이름에 abcde라고 적는다면(물론 다른 사람이 사용하고 있지 않아야한다)
abcde.iptime.org를 통해 공유기에 접속할 수 있다.
보통 숫자로 된 ip가 유동적으로 바뀌는 것에 대비해서 ddns를 사용하면 변경된 숫자 주소를 반영하기 때문에 이 방법을 사용한다.
이제 포트포워딩을 해줘야한다.
보통 ssh서버는 기본값으로 22번 포트를 사용한다.
NAT/라우터 관리의 포트포워드 설정에 들어가서
192.168.0.47(우분투 부여 ip)에 내부포트(ssh 22번 포트)를 공유기의 10222포트와 연결시켜주었다.
특별히 10222로 해준 이유는 없고, 사용되는 포트가 겹치지 않게 큰 숫자로 부여했다.
이제 putty 등을 사용하여 외부에서 접속해보자.
(필자는 스마트폰 어플인 Termius 또한 활용하고 있다)
그림은 이해를 돕기 위해 abcde.iptime.org를 사용했다. 필자는 실제로는 abcde를 사용하지 않는다. 각자 자신이 만든 주소를 사용하자
그러면 putty를 통해서 접속이 완료되었다.