AWS/EC2

[ Ec2 ] EC2 Linux서버 Port 변경

BigCo 2023. 9. 6. 13:46

안녕하세요 오늘은 EC2 서버에 포트번호를 변경하는 실습을 해보겠습니다.

포트번호는 크게 3가지로 나눌 수 있다.
1.  0번 ~ 1023번 : 잘 알려진 포트 ( well-known port )
2. 1024번 ~ 49151번 : 등록된 포트 ( registered port )
3.  49152번 ~ 65535번 : 동적 포트 ( dynamic port )

말 그대로 잘 알려진 포트, Well known port는 SSH/22, Telnet/23 등등, 그리고 등록된 포트로 윈도우에서 자주 사용하는 RDP/3389 포트 등 많은 포트들이 존재합니다.

 

이러한 포트들은 누구든 알고 있어서 보안에 취약할 수 있습니다. 예를 들어 제가 Public subnet에 bastion 서버를 타고 내부서버로 들어갈 수 있도록 아키텍처를 구성했습니다. 과연 제가 몇 번 포트로 인바운드 설정을 해놨을까요??
당연히 22번 포트를 열어줘서 SSH접근을 하도록 설정을 해줬을 겁니다. 이렇게 해커들은 잘 알려진 포트를 많은 사람들이 사용한다는 약점을 이용해서 서버들의 IP, 혹은 나의 IP만 탈취하면  22번 포트로 얼마든지 내부 서버로 들어갈 수 있습니다.

 

임의의 포트를 정해서 사용하면  간단하게 보안을 올릴 수 있습니다.
예들들어 보안접속에 많이 사용하는 SSH 22번 포트를 사용자지정 tcp 55522번 포트로 지정해 놓으면 해커들이 바뀐 포트번호를 몰라서 침입에 어려움을 줄 수 있습니다.

 

 

포트번호 변경

포트 변경하는 방법은 간단합니다.
포트변경을 위해 인스턴스에 접속합니다.

해당 경로로 들어가서 21라인에 #을 제거한 후 자신이 임의로 지정한 포트번호를 기입해 주시고 저장해 줍니다.

vim /etc/ssh/sshd_config

// ssh데몬 재시작
systemctl restart sshd

 

 

인스턴스의 SG의 인바운드 설정을 편집해 줍니다.
원래는 SSH 22번 포트였으나 위에서 정한 임의의 포트 56722번으로 설정합니다. 소스IP에는 내 IP, 사내 IP를 적용시켜 사용하는 것이 보안에 더 좋습니다.

 

이렇게 임의의 포트를 사용하여 서버에 접속을 했습니다.

 

감사합니다.