안녕하세요, 오늘은 AWS에서 VPN을 사용해 보안을 강화하는 방법에 대해 알아보겠습니다.
VPN 이란
VPN(가상 사설망, Virtual Private Network)은 인터넷을 통해 원격 위치의 네트워크에 안전하게 연결할 수 있도록 해주는 기술입니다. 데이터를 암호화하여 전송함으로써 정보 유출 위험을 줄이고, 네트워크 트래픽을 보호하는 역할을 합니다.
특히 AWS와 같은 클라우드 환경에서는 VPN을 통해 내부 리소스에 안전하게 접근하거나, 온프레미스 데이터센터와 클라우드를 연결하는 데 활용할 수 있습니다. VPN을 사용하면 공용 네트워크를 통한 통신도 마치 사설망처럼 안전하게 보호할 수 있어 보안 요구 사항이 높은 환경에서 유용합니다.
OpenVPN 배포하는 법
이번 글에서는 OpenVPN을 이용해 AWS 환경에서 VPN을 구성하고 사용하는 방법을 다루어 보겠습니다.
먼저 VPC는 구성되어 있다는 전제 하에 진행하겠습니다.
*본 글은 3 tier 구성의 VPC를 이용하였습니다. VPN을 사용하실 것이라면 public subnet, private subnet은 필수입니다!
OpenVPN은 AWS Marketplace에서 제공되는 제품이라 쉽고 간편하게 사용할 수 있다는 장점이 있습니다 :)
1. OpenVPN EC2 생성
이름은 본인이 구별 가능한 이름으로 편하게 넣어주세요. 저는 보통 '서비스-openvpn'으로 작성합니다.
이제 이미지를 선택할 차례인데요! 아래 그림과 같이 OpenVPN 서버가 이미지로 제공되고 있습니다.
이후로는 평소에 EC2 생성하시는 대로 설정해주면 됩니다.
인스턴스 유형은 t2.medium 으로 생성하였는데, 3명이서 사용하였을 때는 small도 충분했어요! VPN이 끊기면 안되니 널널하게 설정하는 것을 추천드립니다.
네트워크 설정에서 주의하여야 할 점은 public subnet에 연결해야 한다는 것입니다. 인터넷 게이트웨이와 연결되어 있는 서브넷입니다 :)
추가로 인스턴스를 재시작할때마다 IP는 서브넷 안에서 계속 변경되니 인스턴스를 자주 재시작하는 환경이라면 고정 IP를 할당해주는 것을 권장합니다.
필요한 트래픽이 적용되어 있는 보안그룹도 자동으로 생성됩니다!
스토리지는 기본으로 잡아주시면 됩니다. 저는 20~30GB로 진행하였습니다.
인스턴스를 생성하고 접속해보면, 다음과 같이 시작됩니다.
OpenVPN 설정을 할 것인지 묻는 글입니다. yes를 입력하고 진행해줍니다.
중간에 DNS traffic이 VPN에 연결되어 있는지 확인하는 부분이 있는데, 이를 yes로 눌러주세요.
이후로는 패스워드를 만드셔도 되고(대문자, 특수문자 포함),
enter를 누르면 자동 생성이 되니 복사하고 사용하시면 됩니다!
OpenVPN 설정하는 법
이제 다음과 같이 https://<ec2 주소>:943으로 접속하시면 됩니다.
아이디는 기본적으로 openvpn으로 생성됩니다.
OpenVPN 앱과, Yourself 버튼을 눌러 .opvn 파일을 다운받습니다.
이를 OpenVPN 앱에 등록해주면 다음과 같이 연결된 화면을 확인할 수 있습니다.
이제 제대로 연결이 되었는지 확인해보겠습니다.
첫번째 사진은 EC2 private ip로 ping을 보내보았을 때입니다. 제대로 연결되어 있음을 확인할 수 있습니다.
*ping 트래픽인 ICMP가 열려있어야 합니다.
두번째 사진은 OpenVPN을 켰을 때 MySQL Workbench를 이용하여 데이터베이스에 접속한 화면입니다.
세번째 사진은 OpenVPN을 다시 끄고, 데이터베이스에 접속한 화면입니다.
OpenVPN을 이용하여 내부망에 접속할 수 있음을 확인할 수 있었습니다.
OpenVPN은 AWS에서 이미지를 이용해 쉽게 생성이 가능하다는 장점이 있고, VPN 사용자들마다 개별 계정을 부여할 수도 있어서 보안적으로 꽤 괜찮은 선택이라고 생각합니다.
지금까지 AWS에서 OpenVPN을 이용해 VPN 접속을 하는 방법을 알아보았습니다. 이 글이 도움이 되었기를 바라며 이만 글 마치겠습니다.
🍋 더 궁금한 점이 있으시다면 언제든 댓글 남겨주세요! 🍋
'Study & Article > 인프라 (클라우드)' 카테고리의 다른 글
AWS S3 Pre-Signed URL 정리: 서버 낭비 없이 파일 업로드/다운로드하기 (3) | 2025.02.24 |
---|---|
[AWS] Amazon Bedrock을 통한 생성형 AI 활용 실습 참여 후기 (2) | 2024.11.07 |