AI 탐구노트

Ubuntu 24.04 ssh server 커스텀 포트 설정 본문

기술 팁

Ubuntu 24.04 ssh server 커스텀 포트 설정

42morrow 2024. 9. 10. 16:12

 

새로 Ubuntu 24.04를 설치했고 원격 접속을 위한 설정을 해 봅니다. 

주로 원격접속에 많이 사용되는 vnc, rdp, ssh 가운데 여기서는 ssh server 구성을 통한 ssh 연결을 하는 과정을 적어 봅니다. 

아래 내용에 포함되어 있지만 우분투 24.04에서 이전과 달라진 부분 (ssh.socket) 이 있어서 왜 안 되는지 몰라서 계속 해메다가 검색을 통해 해답을 찾았습니다. 괜한 시행착오를 몇 번이나 했었네요... -_-;

 

SSH 서버 설치 및 설정

 

SSH 서버 설치

많이 사용하는 Openssh 서버를 설치합니다. 

# Openssh 서버 설치
$ sudo apt install openssh-server

# 서비스 상태 확인. service load 상태가 disabled 일 것임
$ sudo systemctl status ssh

 

 

기존 ssh 서버 설정 파일 수정

 

기존 ssh 서버 설정 파일을 백업하고 사용할 포트번호와 루트 계정 접근 권한 제한 등 개인적인 설정을 합니다. 

# 기존 설정 백업 
$ sudo mv /etc/ssh/sshd_config /etc/ssh/sshd_config_backup

# 설정 파일 수정
$ sudo vi /etc/ssh/sshd_config 

Port 8022   		# 기본 port값 변경 (원하는대로)
PermitRootLogin no  # 주석 해제 후 no로 값 변경
MaxAuthTries 6      # 주석 해제
PubkeyAuthentication yes  # 주석 해제

 

 

ssh 서비스 재시작 및 상태 확인

설정이 완료되면 ssh 서버를 재시작합니다. 주의할 것은... 24.04에서 이전과 달라진 부분이 있다는 것입니다. daemon-reload를 하지 않으면 ssh 서버가 재시작되지 않는 문제가 있었습니다. ssh.socket과 관련된 것이라는데... 그걸 몰라서 계속 설정을 다시 수정하고 재시도 해보는 삽질을 했습니다. 

# 서비스 재시작 및 상태 확인
$ sudo systemctl daemon-reload  # 이전과 달라진 부분. 시행착오 계속 했음 T^T
$ sudo systemctl restart ssh 
$ sudo systemctl status ssh

# 서비스 포트 확인 (8022 구동 여부)
$ netstat -ntl 
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 0.0.0.0:8022            0.0.0.0:*               LISTEN
tcp6       0      0 :::8022                 :::*                    LISTEN
...

 

방화벽 접근 허용 

방화벽 또한 기본 설치되어 있는 ufw 를 이용합니다. 기본은 비활성화되어 있는데 가능하면 활성화해 두고 쓰시는게 좋습니다. 사용도 간편해서... 

# 방화벽 허용 (ufw 이용)
$ sudo ufw enable 
$ sudo ufw allow 8022/tcp
$ sudo ufw status

$ sudo ufw status
목적                         동작          출발
--                         --          --
8022/tcp                   ALLOW       Anywhere
8022/tcp (v6)              ALLOW       Anywhere (v6)

 

이렇게 되면 연결 준비는 다 끝납니다. 원격에서 터미널이나 SSH 클라이언트 도구를 이용해 접속하면 됩니다.