본문 바로가기
IT & 블로그

AWS Lightsail 방화벽 설정, SSH 포트 우회하기 - 워드프레스 필수 설정

by 토로로로롱 2023. 12. 2.
반응형

워드프레스 블로그를 개설하고 꼭 해야 하는 AWS Lightsail 방화벽 설정에 대해 알아보겠습니다. 방화벽 설정은 내 블로그의 보안을 위해 꼭 필요한 설정입니다. 그중에서 많이 놓칠 수 있는 것에 대해 소개합니다. 악의적인 공격의 대상이 되고 공격을 받았을 때 위험성이 큰 ssh 포트에 대한 방화벽 설정 하는 방법입니다. 방화벽 설정을 통해 나의 소중한 블로그를 악의적인 공격으로부터 지킬 수 있습니다. 아래는 로컬머신에서 ssh 접속하는 방법입니다. 이번 아마존 라이트세일 방화벽 설정 방법을 보기 전에 꼭 알아야 할 설정입니다. 아직 보지 않으셨다면 이전 글부터 따라오는 것을 추천드립니다.

 

AWS Lightsail 방화벽 설정해야하는 이유

AWS Lightsail 은 자체적으로 방화벽을 제공하지 않습니다. 그렇기 때문에 사용자가 직접 설정해주어야 합니다. 보안 강화나 불필요한 트래픽 차단등을 위해 필요합니다. AWS Lightsail에서 방화벽 설정을 통해 서버의 보안, 안전성과 성능을 향상해주기도 합니다. 방화벽 설정은 인터넷에 연결된 서버에 꼭 필요한 일입니다.

 

AWS Lightsail IPv4 방화벽 설정

아마존 라이트세일에 로그인하여 만들어 놓은 wordpress instance의 Network Tab 에서 방화벽을 설정합니다.

AWS Lightsail Wordpress instance 의 network 탭 있는 'IPv4Firewall'에 보면 각 프로토콜 별 포트 설정과 규칙 설정을 할 수 있습니다. 여기를 통해 방화벽 설정을 합니다. 이 중에 ssh 프로토콜에 방화벽 설정하는 방법과 ssh port 우회하는 방법입니다.

로컬 머신에서 인스턴스로 ssh 접속할 때 사용하는 포트가 변경하지 않으면 22번입니다. 그래서 따로 방화벽 설정이나 포트 우회를 하지 않으면 22번 포트를 통한 악의적인 공격의 대상이 되기 쉽습니다. 그래서 이 22번 포트에 대한 변경이 필요합니다.

 

 

AWS Lightsail 방화벽 설정 SSH port 우회

AWS Lightsail 방화벽 설정 SSH port 우회방법 #1
AWS Lightsail 방화벽 설정 SSH port 우회방법 #1

 

우선 우회할 포트를 만들어 줍니다. 위 그림과 같이 입력합니다. Application은 Custom, Protocol 은 TCP, Port는 0~65535 사이에서 원하는 포트 번호를 입력하면 됩니다.

 

 

AWS Lightsail 방화벽 설정 SSH port 우회방법 #2
AWS Lightsail 방화벽 설정 SSH port 우회방법 #2

 

custom포트를 추가하고 나면 위 그림 2처럼 새로 생성된 포트가 확인이 됩니다. 이렇게 되면 우선 AWS Lightsail instance에서 해야 하는 설정은 끝입니다. 다음은 ssh 접속을 하겠습니다.

 

 

라이트세일 방화벽 설정 SSH port 우회방법 #3
라이트세일 방화벽 설정 SSH port 우회방법 #3

 

로컬머신에서 내 AWS Lightsail instane에 SSH 접속을 합니다. 그림 3과 같이 바로 접속이 됩니다. 그리고 아래의 명령어를 입력해 줍니다. 

$ sudo vim /etc/ssh/sshd_config

라이트세 방화벽 설정 SSH port 우회방법 #4
라이트세 방화벽 설정 SSH port 우회방법 #4

 

위 명령어를 입력하면 sshd_config 파일이 열립니다. 여기에 아래 두줄을 입력하고 저장을 해주면 됩니다. 콘솔 vim 명령이 익숙하지 않으면 어려울 수 있는데 아래 순서로 하면 됩니다. 코드를 넣는 위치는 맨 윗부분 #주석 한 단락이 끝나는 위치면 됩니다. 정확한 위치가 필요한 것은 아닙니다. 저는 #default value 아래 #AddressFamily any 위에 넣어주었습니다.

소문자 i를 눌러 편집 모드로 전환합니다. 그리고 아래의 코드 두 줄을 위에서 이야기한 위치에 입력합니다. 그리고 esc를 누르고 wq! 를 입력 후 enter 키로 빠져나오면 됩니다. 

include /etc/ssh/sshd_config, d/. conf

port 1234

 

port 이후 1234 대신 각자가 AWS Lightsail 포트 설정에서 만든 custom 포트에 적은 값을 넣어줍니다. 저는 1234로 만들었기 때문에 이에 맞추어 써주었습니다.

라이트세일 방화벽 설정 SSH port 우회방법 #5
라이트세일 방화벽 설정 SSH port 우회방법 #5

 

그리고 마지막으로 sshd를 다시 시작해 주기 위해 아래의 명령어를 입력합니다. 이렇게 하면 AWS Lightsail instance ssh. 에서 방화벽 설정을 위해 해줘야 하는 일은 끝입니다. 

$sudo service sshd restart

 

방화벽 설정 확인

라이트세일 방화벽 설정 확인
라이트세일 방화벽 설정 확인

 

이제 방화벽이 잘 설정이 되었나 확인해 보겠습니다. ssh에 다시 접속을 시도해 봅니다. 그럼 위 그림과 같이 'ssh: connect to host ~~ port 22: Connection refused'라는 메시지가 나오면서 ssh 접속이 되지 않습니다. 이렇게 되면 잘 설정된 것입니다. 이제 기본 22번 포트로는 내 인스턴스로 ssh 접근이 불가능하다는 의미입니다.

ssh 접근은 어떻게 하면 될까요. 어렵지 않습니다. 기존 ssh 접속 명령어에서 끝에 '-p 1234'만 추가로 붙여 주면 됩니다. 그럼 기존과 똑같이 접속이 되는 것을 확인할 수 있습니다. 

 

방화벽 설정 마무리 - port 삭제

라이트세일 방화벽 설정 마무리
라이트세일 방화벽 설정 마무리

 

이제 필요하지 않은 기존의 22번 포트는 완전히 삭제해 주겠습니다. 다시 라이트세일 인스턴스의 네트워크 탭에 들어갑니다. 그리고 ssh 끝에 있는 휴지통 아이콘을 선택해 삭제해 주면 됩니다.

 

결론

오늘은 아마존 라이트세일 방화벽 설정 ssh port 우회 설정 방법에 대해 알아보았습니다. 티스토리나 네이버 블로그와 다르게 워드프레스 블로그는 자체 호스팅 서비스를 통해 운영이 됩니다. 그렇기 때문에 번거롭기는 하지만 이렇게 방화벽을 설정해 주어야 내가 올린 소중한 포스트나 사진등의 블로그 자산을 지킬 수 있습니다. 한번만 하면 이후 또 해주지 않아도 되기 때문에 천천히 따라 해보시면서 꼭 설정하시기를 권장합니다.

 

반응형

댓글