Lightsail AWS - о нем пойдет речь в данной статье.
Подобных обзоров "как создать свой VPN" крайне много, но я так и не нашёл простого решения для новичка, с поддержкой создания полноценной локальной сети между двух и более клиентов с серым IP, находящимися за NAT.
Данное руководство я отношу к уровню подготовки "user+": пользователь должен но не обязан знать что хочет получить, уверенно держит в руке мышь и видел командную строку в фильмах про хакеров.
Хочу обратить внимание начинающих хакеров: если вы взломаете пентагон с данного IP, скорее всего, ваш провайдер (Amazon в данном случае) сдаст вас "с потрохами" и от суровых людей с паяльником в руках спасения не будет.
Начну с цены
Ежемесячный платёж 350 рублей, но вы можете сэкономить и не покупать выделенный IP у своего провайдера.
Шаг 1 - регистрация на AWS
Собственно проходим по ссылке и регистрируемся lightsail.aws.amazon.com
Номер телефона и банковскую карту указываем свою, может придётся пройти проверку по телефону (звонит робот), мне не пришлось.
(дополнительно) для доступа по SSH нужно получить отдельный ключ
делается один раз - для учётной записи
Шаг 2 - создаём виртуальный сервер
Мой выбор региона - Ирландия (Дублин), если нужна максимальная скорость - Германия (Франкфурт).
Теперь резервируем выделенный IP4 адрес, IP6 - закрепляется автоматом при создании виртуального сервера (его поменять нельзя).
Получив IP4 адрес, сразу закрепляем его за нашим виртуальным сервером.
Здесь важный момент (его можно сделать как до настройки сервера, так и позже). Рядом с кнопкой вызова терминала (выделена синим квадратом) нажимаем 3 точки, выбираем Manage затем Networking.
Открываем входящие порты для нашего сервера, добавлю только что 2012 выбран для shadowsocks.
Шаг 3.1 - настройка сервера (AWS)
Запускаем терминал и обновляем систему и устанавливаем пакеты (копируем построчно, нажимая enter и отвечая "y").
su
pkg update
pkg upgrade
pkg install shadowsocks-libev
pkg install softether
sysrc softether_server_enable=yes
sysrc shadowsocks_libev_enable=yes
Я не осилил текстовый редактор vi, поэтому установим более простой вариант :)
pkg install nano
Удаляем все строки несколько раз нажимаем ctrl+k и добавляем, где 12345 - ваш пароль для подключения к shadowsocks (лучше заменить).
{
"server":["[::0]","0.0.0.0"],
"server_port":2012,
"password":"12345",
"method":"aes-256-gcm",
"timeout":300,
"user":"nobody",
"fast_open":false
}
Сохраняем и выходим ctrl+x, на вопрос о сохранении отвечаем "y".
Перезагружаем сервер: пишем в консоли reboot и нажимаем enter.
Шаг 3.2 - настройка сервера (Windows)
Скачиваем SoftEther VPN Client для Windows www.softether.org, устанавливаем оба приложения из списка во время установки.
После установки запускаем SoftEther VPN Server Manager.
В главном окне нажимаем "Encryption and Network" Выбираем шифрование для VPN подключений и скачиваем сертификат
На этом настройка сервера полностью завершена, я рекомендую ещё раз перезагрузить свой удаленный сервер.
Шаг 4 - настройка клиента
Устанавливаем сертификат, сертификат нужен на всех устройствах для подключения VPN (Windows: только в "локальный компьютер", по другому не работает SSTP VPN).
Создаём подключение SSTP VPN (Пуск\Параметры\Сеть и Интернет\VPN).
дополнительно - интернет через VPN, локальная сеть без изменений
Панель управления\Все элементы панели управления\Сетевые подключения
vpn\Cвойства
Внимание: утечка DNS
Или SSL VPN (запускаем SoftEther VPN Client Manager).
дополнительно - интернет через VPN, локальная сеть без изменений
Внимание: утечка DNS
Теперь, разные ПК подключённые к вашему VPN серверу, будут находится в одной сети.
Если вам нужен полный доступ между домашней подсетью и подсетью рабочего компьютера, вам понадобиться на рабочий и домашний компьютер установить SoftEther VPN Bridge.
SoftEther VPN Bridge
По уровню сложности это выходит за рамки данной статьи, если интересно - читайте здесь https://www.softethernet.ru/pr1.html
Бонус (shadowsocks)
Не всегда нужен полноценный VPN, иногда просто хочется безопасно посмотреть котиков в браузере. Для Windows скачиваем https://github.com/shadowsocks/shadowsocks-windows/releases
В браузере Firefox скачиваем расширение FoxyProxy (так же и на Android), настройка: SOCKS5/127.0.0.1/1080
Для Android https://play.google.com/store/apps/details?id=com.github.shadowsocks выбираем только прокси (тогда не будет подниматься VPN канал).
P.S.
Почему Amazon? - самая низкая скорость, которая была - 10Mbps.
Почему FreeBSD? - SoftEther под него устанавливается менеджером пакетов, да и сама ОС потребляет меньше ресурсов и без того дохлого виртуального сервера.
Комментарии (11)
Javian
26.07.2021 15:01+1Для самых маленьких, наверное, было бы достаточно использовать LogMeIn Hamachi или Zero Tier
Pricing. Hamachi is free for up to 5 computers in your network. If you run Hamachi as a service in unattended mode, you can choose from our subscription packages below.
Zero Tier is also free for 100 devices
SuAlUr
27.07.2021 19:05+1Для ZeroTier нужно, чтобы на всех устройствах он был установлен, если устройство не поддерживает ZeroTier, для доступа к LAN нужно настроить NAT на *nix (на Windows нельзя), но NAT только в одну сторону (ZeroTier->LAN). Да и далеко не на всех NAT работает.
Evengard
26.07.2021 16:12Очередная статья с SoftEther + SecurNAT? Ну блин... SecurNAT конечно удобен и прост, но не гибок совершенно. Может свою конфигурацию как-нибудь описать...
i7071270 Автор
26.07.2021 16:16Очередная статья с SoftEther + SecurNAT
— это самое простое решение, есть еще bridge, но там уже уровень user+++ :)
j0ker13
26.07.2021 16:16Удаляем все строки
несколько раз нажимаемctrl+kAlt+T - Cut until end of buffer. я так очищаю файл :)
Zero Tier
тоже за него. соединил несколько компов, работает стабильно
AngelNet
26.07.2021 21:07+1Стоит отметить, что в фоксипрокси в Firefox происходит утечка ваших днс, поэтому в свое время наступив на эти грабли было принято решение от него отказаться.
Можно конечно накостылить свой аддон для быстрого включения/выключения прокси (мой знакомый так и поступил), но я считаю это излишним.
Если использовать стандартный интерфейс ФФ для управления прокси достаточно поставить одну галку "отправлять днс через прокси сокс-5" и проблема утечки решится.
Скриншот: https://klikr.org/f669c6ba5633aeff249d25eac5dd.png
Провериться на утечки можно там: https://browserleaks.com/dns
(если увидите в списке днс вашего домашнего провайдера, значит утечка есть).
i7071270 Автор
26.07.2021 23:06Спасибо, не знал про утечку dns через foxyproxy, хотя думаю - это через лису скорее происходит. Обычно я пользуюсь полноценным vpn sstp, а плагин использую с настройками в браузере dns over socks (как Вы показали) или doh.
werter_l
31.07.2021 17:31Спасибо.
Как вариант:
github.com/StreisandEffect/streisand
github.com/hwdsl2/setup-ipsec-vpn
github.com/trailofbits/algo
github.com/slackhq/nebula
github.com/gravitl/netmaker
github.com/wiretrustee/wiretrustee
github.com/pivpn/pivpn
github.com/IAmStoxe/wirehole
github.com/angristan/wireguard-install
github.com/angristan/openvpn-install
Tatikoma
Обилие скриншотов описывающих настройку сертификатов конечно удручает. В очередной раз радуюсь тому что перешёл на wireguard =)
i7071270 Автор
В softether5 (alpha) есть wireguard, но зачем?