
AWS에서 주문형 일회용 OpenVPN 엔드포인트를 생성합니다.
[!CAUTION] 이 저장소는 더 이상 유지 관리되지 않습니다. 더 이상의 업데이트, 버그 수정 또는 지원이 제공되지 않습니다. 새 버전 https://github.com/ttlequals0/autowire 를 사용하세요.
모든 AWS 리전에서 OpenVPN 엔드포인트를 쉽게 생성할 수 있는 스크립트입니다. VPN 엔드포인트 생성은 단일 명령어로 완료되며 약 3분이 소요됩니다. 적절한 보안 그룹을 생성하고, 태그가 지정된 ec2 인스턴스를 시작하며 OpenVPN 소프트웨어를 구성합니다. 인스턴스가 구성되면 OpenVPN 구성 파일이 다운로드되어 바로 사용할 수 있습니다. 또한 특정 리전에서 실행 중인 인스턴스를 확인하고, 작업이 완료되면 인스턴스를 종료하는 기능도 있습니다. 추가 기능으로는 인스턴스 유형 지정, SSH 키페어 생성, 사용자 지정 AMI 지정, 로그인 사용자 변경 등이 있으며 앞으로 더 추가될 예정입니다.
사용 사례
mkvirtualenv -p python3 env/
source env/bin/activate
pip install -r requirements.txt를 실행하여 의존성 설치
vi ~/.aws/credentials를 실행하여 AWS .credentials 파일이 있는지 확인:
vi ~/.aws/credentials
그런 다음 다음을 입력하고 키를 추가합니다 (괄호 제거):
[default]
aws_access_key_id = (your_access_key_here)
aws_secret_access_key = (your_secret_key_here)
git clone https://github.com/ttlequals0/autovpn.git
./autovpn -G -r us-east-1
./autovpn -C -r us-east-1 -k us-east-1_vpnkey
sudo openvpn us-east-1_aws_vpn.ovpn
설명:
autovpn - 온디맨드 AWS OpenVPN 엔드포인트 배포 도구.
프로젝트: https://github.com/ttlequals0/autovpn
사용법:
액션 [옵션]
-C VPN 엔드포인트 생성.
-D 리전에서 키페어 삭제.
-G 새 키페어 생성.
-S 특정 리전에서 실행 중인 모든 인스턴스 조회.
-T OpenVPN 엔드포인트 종료.
-d 사용자 지정 DNS 서버 지정. (예: 4.2.2.1)
-h 이 메시지 표시.
-i AWS 인스턴스 유형 (선택 사항, 기본값은 t2.micro)
t2.nano t2.micro t2.small t2.medium t2.large.**
-k AWS 키페어 이름 지정 (필수)
-m 동일한 엔드포인트에 여러 연결 허용.
-r AWS 리전 지정 (필수)
us-east-1 us-west-1 us-east-2 us-west-2 eu-west-1 eu-west-2
eu-west-3 eu-central-1 eu-north-1 ap-southeast-1 ap-northeast-1
ap-northeast-2 ap-northeast-3 ap-southeast-2 sa-east-1
ap-east-1 ca-central-1 me-south-1
-p 사용자 지정 OpenVPN UDP 포트 지정
-u 사용자 지정 ssh 사용자 지정***
-y 확인 생략
-z 인스턴스 ID 지정.
예제:
OpenVPN 엔드포인트 생성:
autovpn -C -r us-east-1 -k us-east-1_vpnkey
리전에서 키페어 생성:
autovpn -G -r us-east-1
실행 중인 인스턴스 조회:
autovpn -S -r us-east-1
OpenVPN 엔드포인트 종료:
autovpn -T -r us-east-1 -z i-b933e00c
사용자 지정 옵션 사용:
autovpn -C -r us-east-1 -k us-east-1_vpnkey -a ami-fce3c696 -u ec2_user -i m3.medium
참고:
* - 인스턴스 유형을 변경하는 경우 사용자 지정 AMI가 필요할 수 있습니다.
** - 모든 인스턴스 크기를 지정할 수 있지만 t2.micro면 충분합니다.
*** - 사용자 지정 AMI를 사용하는 경우 사용자 지정 사용자가 필요할 수 있습니다.
**** - AWS IAM 사용자에게 EC2 또는 관리자 권한이 있어야 합니다.