본문 바로가기
OS/Linux

CentOS에서 SSH 포트 변경 방법

by Dev_카페인 2024. 6. 28.
반응형

CentOS에서 SSH 포트 변경 방법

SSH 포트를 변경하는 것은 서버 보안을 강화하는 중요한 방법 중 하나입니다. 기본적으로 SSH는 포트 22를 사용하지만, 이를 다른 포트로 변경함으로써 자동화된 공격 및 스캔을 피할 수 있습니다. 이 가이드에서는 CentOS에서 SSH 포트를 변경하는 방법을 단계별로 설명하겠습니다.

1. 새 포트 번호 선택

먼저 사용할 새 포트 번호를 선택합니다. 포트 번호는 1024와 65535 사이의 범위를 선택하는 것이 좋습니다.

여기서는 포트번호를 2222로 설정합니다.

2. SSH 설정 파일 수정

SSH 설정 파일을 편집하여 새 포트를 지정합니다. 다음 명령어를 사용하여 설정 파일을 엽니다:

sudo vi /etc/ssh/sshd_config

파일을 열고, #Port 22 항목을 찾아 주석을 제거한 후, 원하는 포트 번호로 변경합니다:

#Port 22
Port {정한 포트 번호}
 

변경 후 저장하고 파일을 닫습니다. (esc + :wq)

SSH
SSH Port

** 보안 추가 설정 ** 
ssh 로 root 접속을 차단하려면 아래 옵션을 활성화 한다.
  - 변경전 : #PermitRootLogin yes  <== 주석 해제 및 아래처럼 " no"로 수정 
  - 변경후 : PermitRootLogin no



3. SELinux 설정 변경 (SELinux 사용 시)

SELinux가 활성화된 경우, SSH의 새 포트를 허용하도록 SELinux 설정을 변경해야 합니다. 다음 명령어를 사용합니다:

sudo semanage port -a -t ssh_port_t -p tcp 2222

만약 semanage 명령이 없다면, 다음 명령어로 policycoreutils-python 패키지를 설치합니다:

sudo yum install policycoreutils-python -y

4. 방화벽 설정 변경

firewalld를 사용하는 경우, 새 포트를 허용하도록 방화벽 설정을 변경합니다.

firewalld를 사용하는 경우

sudo firewall-cmd --permanent --add-port=2222/tcp
sudo firewall-cmd --remove-service=ssh
sudo firewall-cmd --reload

iptables를 사용하는 경우

sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT
sudo service iptables save
sudo systemctl restart iptables

5. SSH 데몬 재시작

SSH 데몬을 재시작하여 변경 사항을 적용합니다:

sudo systemctl restart sshd

6. SSH 연결 테스트

변경된 포트를 사용하여 SSH 연결을 테스트합니다:

ssh -p 2222 username@hostname

username과 hostname을 실제 사용자 이름과 서버 주소로 바꿔 사용합니다.

7. 원격 서버에 대한 주의 사항

서버와의 연결이 끊어지지 않도록 하기 위해서는, 다음 사항들을 유의해야 합니다:

  1. 방화벽 규칙을 설정한 후, 새 포트로의 연결을 테스트합니다.
  2. SSH 데몬을 재시작한 후에도 기존의 연결이 끊어지지 않도록 합니다.
  3. sshd_config 파일을 편집할 때, 오타나 실수가 없는지 확인합니다.

 

결론

SSH 포트를 변경하는 것은 서버 보안을 강화하는 유용한 방법입니다. 기본 포트 22를 다른 포트로 변경하면 자동화된 공격 및 스캔을 피할 수 있습니다. 이 가이드에서는 CentOS에서 SSH 포트를 변경하는 방법을 단계별로 설명했습니다. 이 지침을 따라 SSH 포트를 성공적으로 변경하고, 보안을 강화할 수 있기를 바랍니다.

반응형