인증서 및 키 생성
OpenVPN easy-rsa를 사용하여 서버 및 클라이언트 인증서와 키를 생성한 다음, 서버 인증서와 키를 ACM에 업로드합니다.
1.
OpenVPN easy-rsa 리포지토리를 로컬 컴퓨터에 복제하고 easy-rsa/easyrsa3 폴더로 이동
git clone https://github.com/OpenVPN/easy-rsa.git
cd easy-rsa/easyrsa3
Shell
복사
2.
아래 프로세스를 따라 server와 client의 인증서와 키를 생성
./easyrsa init-pki
./easyrsa build-ca nopass
./easyrsa build-server-full server nopass
./easyrsa build-client-full client1.domain.tld nopass
SQL
복사
3.
pki 폴더 내에 아래와 같이 생성된 것을 확인가능
ACM 인증서 업로드
위에 생성한 인증서와 키를 통해 AWS Certificate Manager로 들어와서 서버와 클리언트 인증서를 생성해줍니다.
인증서 본문 : .crt
인증서 프라이빗 키 : .key
인증서 체인 : ca.crt
인증서 생성이 완료되면 아래와 같이 표시되며 도메인 이름이 반드시 존재해야 합니다.
해당 인증서를 통해 VPN 통신을 하게됩니다.
클라이언트 VPN 엔드포인트 생성
VPC → 클라이언트 VPN 엔드포인트 → 생성을 클릭합니다.
상호 인증 사용을 체크해줍니다.
외부 인터넷 엑세스가 필애효다마녀 분할 터널 활성화를 체크해줍니다.
클라이언트 IPv4 CIDR : 기존 VPC 내에 설정된 CIDR와 중복되지 않게 설정해줍니다.
서버 인증서 ARN : 기존에 생성한 서버 인증서
클라이언트 인증서 ARN : 클라이언트 인증서
VPC ID : 내부 통신이 필요한 VPC를 선택해줍니다.
생성 후 10분 정도 소요됩니다.
클라이언트 구성 다운로드
대상 네트워크 연결에 적절한 대상을 설정해주세요.
라우팅 테이블은 기본 VPC에 의해 설정되어 있습니다.
아래와 같이 Available 상태를 확인했다면 클라이언트 구성 다운로드를 클릭하여 .ovpn 파일을 받습니다.
.ovpn 파일 수정
받아온 .ovpn 파일 내에 아래와 같이 클라이언트 인증서 값과 함께 추가해줍니다.
<cert>
{{클라이언트 인증서}}
</cert>
<key>
{{클라이언트 키}}
</key>
Bash
복사
AWS VPN Client
아래 링크를 통해 AWS Client VPN을 설치합니다.
AWS VPN Client → 파일 → 프로필 관리 → 프로필 추가 → 생성한 .ovpn 파일 추가 → 연결
연결이 되면 동일 VPC 내 존재하는 엔드포인트를 접속 할 수 있게된다.