
Создание одноразовых конечных точек OpenVPN по требованию в AWS.
[!CAUTION] Этот репозиторий больше не поддерживается. Дальнейшие обновления, исправления ошибок или поддержка предоставляться не будут. Пожалуйста, используйте новую версию https://github.com/ttlequals0/autowire
Скрипт, который позволяет легко создавать конечные точки OpenVPN в любом регионе AWS. Создание VPN-конечной точки выполняется одной командой и занимает около 3 минут. Он создаст соответствующие группы безопасности. Запускает тегированный EC2-инстанс и настраивает программное обеспечение OpenVPN. После настройки инстанса файл конфигурации OpenVPN загружается и готов к использованию. Также есть функционал для просмотра работающих инстансов в регионе и возможность завершить инстанс, когда он больше не нужен. Дополнительные возможности включают указание типа инстанса, генерацию SSH-ключей, задание пользовательского AMI, смену пользователя для входа и многое другое.
Сценарий использования
mkvirtualenv -p python3 env/
source env/bin/activate
Установите зависимости, выполнив pip install -r requirements.txt
Убедитесь, что у вас есть файл .credentials AWS, выполнив:
vi ~/.aws/credentials
Затем введите следующее и добавьте свои ключи (уберите скобки):
[default]
aws_access_key_id = (ваш_ключ_доступа_здесь)
aws_secret_access_key = (ваш_секретный_ключ_здесь)
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 - Инструмент развертывания конечных точек OpenVPN по требованию в AWS.
Проект находится по адресу 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 Указать пользовательский UDP-порт OpenVPN
-u Указать пользовательского пользователя SSH.***
-y Пропустить подтверждения
-z Указать идентификатор инстанса.
ПРИМЕРЫ:
Создать конечную точку 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 или администратора.