madebychung

[Linux/rocky]ssh 포트번호 변경 본문

system

[Linux/rocky]ssh 포트번호 변경

mdchung 2023. 2. 6. 17:35

ssh 의 기본 포트는 22번 

22번 포트로 접속시도를 하기 때문에 임의의 포트번호로 변경하여 보안강화!

22번포트에서 → 20022 임의 포트번호 로 변경

포트번호 변경을하게 되면 사용하고 있는 접근제어시스템 혹은 방화벽설정에 의해 접근이 불가할 수도 있다.

그래서 나는 안전하게 22번 20022번 포트번호 접근을 모두 확인 후에 22번 을 빼주는 방식으로 진행했다.

1.known port → unknown port 번호정하기 

2.ssh 포트번호 20022추가 하기

3.방화벽 보안그룹등 설정 확인하기

4.20022 포트옵션으로 접근 가능한지 확인 

5.Instance 및 보안그룹 , 방화벽 22번 포트 제거  

 

1.known port → unknown port 번호정하기 

서비스 known port unknown port
SSL 22 20022
RDP 3389 23389
MySQL/MariaDB 3306 23306

2.ssh 포트번호 20022추가 하기

1.sshd_config 파일 복사본 생성(실제 프로젝트에서 안전 또 안전,,,이므로,,,)
$ sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config_bak

2.포트 추가, 기존 포트22 주석 제거하여 활성화 후 port 20022 추가
$ sudo vi /etc/ssh/sshd_config
원본
#port 22
수정 # 주석 제거
port 22
port 20022 #추가

3. sshd 서비스 재시작
$ sudo systemctl restart sshd.service

4. 20022 포트 오픈 확인
$ netstat -tlpn

tcp        0      0 0.0.0.0:20022           0.0.0.0:*               LISTEN      -

3.방화벽 보안그룹등 설정 확인하기

프로젝트에서 설정한 방화벽과 

SG 보안그룹 설정

SG설정

수신 tcp 20022포트 ipv4 (사용지) 

접속할 인스턴스에 보안그룹 적용

4.20022 포트옵션으로 접근 가능한지 확인 

> ssh -i 개인키.pem user@접속할인스턴스ip -p 20022

public 존의 인스턴스는 공인ip  , private 존의 인스턴스는 베스천호스트등 별도로 들어가야 함 

 

 

 

5.Instance 및 보안그룹 , 방화벽 22번 포트 제거  

4.과정을통해 2022포트의 접속이 확인된다면 22번 포트를 보안그룹 및 방화벽 , sshd_config 수정 

1. port 22 제거
$ sudo vi /etc/ssh/sshd_config

원본
port 22
port 20022 
수정
#port 22 주석추가 
port 20022 

2. sshd 서비스 재시작
$ sudo systemctl restart sshd.service

방화벽 22번 제거 ,

SG 보안그룹 22 번 포트 제거 

 

방화벽과 보안그룹 잘 확인하세요~!

테스트 안하고 냅다 22번포트 날리면 눈물남