Как настроить персональный VPN на сервере в Amazon Web Services

Всем, кто хочет настроить свой собственный VPN на личном выделенном сервере рекомендую проект algo . Инструмент дает настроить WireGuard сервер в интерактивном режиме. WireGuard удобен тем, что дает пользоваться VPN на любых устройствах, от компьютера на Windows/Linux до iPhone или смартфона на Android.

Предполагается, что AWS аккаунт у вас уже есть, инструкции проверялись на Ubuntu.

Для AWS cоветую пользоваться LightSail, а не обычным EC2, так как LightSail имеет квоту бесплатного исходящего трафика в 1 терабайт. При активном использовании VPN на EC2 это может вылиться в копеечку, так как любой исходящий трафик будет тарифицироваться.

К примеру, чтобы запустить LightSail машину:

  1. git clone https://github.com/trailofbits/algo.git
  2. cd algo && sudo apt install -y python3-virtualenv

python3 -m virtualenv --python="$(command -v python3)" .env &&
  source .env/bin/activate &&
  python3 -m pip install -U pip virtualenv &&
  python3 -m pip install -r requirements.txt

Запускаем конфигурацию командой:

./algo

Выбираем 2. Amazon Lightsail

  • Придумываем и вводим имя vpn server (которое станет именем LightSail машины)
  • Мастер задаст несколько вопросов по конфигурации
  • Вводим наши параметры AWS Key ID/Secret, которые можно сгенерировать здесь

После окончания конфигурация появится в папке configs с IP адресом сервера. Для настройки WireGuard клиента достаточно одного из файлов desktop.conf, laptop.conf, phone.conf в каталоге WireGuard.

Еще, перед использованием VPN стоит проверить, что наш новый IP адрес не скомпрометирован. Так как мы могли получить адрес ресурса, который, например, занимался рассылкой спама и теперь в черном списке у многих ресурсов. Проверить можно на этом сайте 

Далее ставим клиент WireGuard и добавляем туннель из файла конфигурации, например desktop.conf.

Финальный штрих — проверяем, что наш IP адрес теперь в ожидаемом AWS регионе. Можно сделать это на сайте whoer.net

Для доступа SSH algo сгенерировал ssh_config и предлагает подключиться командой вроде «ssh -F configs/<IP>/ssh_config algo»  на порту 4160 и пользователем algo.

Для мониторинга сети рекомендую утилиты bmon и nethogs

sudo apt-get -y install nethogs bmon

sudo bmon

Мониторинг VPN сервера во время теста SpeedTest

Комментарии:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *