Назад

Легкая установка VPN WG Easy

Эта статья сделана с упором на максимальную доступность в процессе установки и настройки VPN сервера на WG Easy, основанном на протоколе WireGuard. В принципе, достаточно будет навыка регистрации на сайте + умение копировать и вставить.

VPN нам может понадобиться по 3 причинам:

  1. Обойти ограничения, которые существует в РФ
  2. Для релокантов — зайти на закрытые от внешнего мира сайты РФ
  3. Обеспечить безопасность в интернете

В чем преимущество WG Easy?

  1. Простая установка
  2. Удобная web-панель для управления
  3. Возможность создавать пользователей и видеть их статистику скачивания (только объем)

Выбор хостинга для VPN

Предлагаю вам на выбор 4 хостинга, которые можно использовать для VPN, исходя из своей субъективной оценки. Три ссылки реферальные, так вы сможете и отблагодарить меня, без всяких усилий, если статья вам оказалось полезной.

Американский хостинг Racknerd (ссылка) предлагает отличные тарифы для VPN, но только при условии аренды акционных серверов (ссылка на акцию). Тарифы без акций — напротив, сильно дорогие. Для РФ есть возможность оплаты через крипту, сейчас не проблема завести кошелек на Huobi или Kucoin.

Железо хорошее, любой тариф потянет VPN. Небольшой плюс — можно заранее пинговать сервера, выбрать IP адрес и его расположение. Сам хостинг зарекомендовал себя как очень надежный.

Speedtest показывает скорость Download 420 — 760Mbit/s, Upload 750 — 790 Mbit/s и Packet loss: 0 % — что является отличным результатом.

Минимальная сумма для пополнения счета — 10 — 20 $ за 1 год, что конечно очень выгодно.

Хостер Aeza (ссылка) предлагает очень хорошие тарифы с оплатой от 1-го часа и расположением в Европе и СНГ. По железу — все отлично, управлять сервером удобно. Не находятся в юрисдикции РФ и никаких персональных данных не просят. Из минусов — довольно часто меняют цены в сторону увеличения.

Speedtest показывают скорость Download 678 — 735 Mbit/s, Upload 632 — 668 Mbit/s и Packet Loss: 3 % — отличный результат, кроме пожалуй Packet Loss. С ним я столкнулся практически на всех локациях Aeza.

Минимальная стоимость сервера под VPN — в районе 5 Евро, но принимают оплату (без комиссии), в рублях. При регистрации по ссылке, у вас будет Wellcome бонус +15%, к первому пополнению счета, но за первые 24 часа.

VDSina стабильный и хороший по железу хостинг. Отлично подойдет под VPN и тесты, недавно полностью ушел в подполье и платить можно любым способом, кроме пожалуй карты

Не просят персональные данные, аренда сервера от 1-го часа, хорошая и стабильная стоимость сервера под VPN, в двух локациях — Москва и Голландия.

Минусы — это пополнение счета, не самая удобная форма. Пойдет если платить нечасто.

Панель управления — очень простая. При выборе сервера ориентируйтесь на ОС Ubuntu 20-22, эпичные сервера (AMD Epic) и уберите галочку с платных бэкапов. Тогда стоимость простой конфигурации у вас будет в районе 468 рублей.

Speedtest показывает скорость Download 650 — 711Mbit/s, Upload 591 — 615 Mbit/s и Packet loss: 0 % — что является превосходным результатом.

Из всех представленных хостинг, Timeweb (ссылка) — самый стабильный для клиента из РФ и предоставляет какие-то юридические гарантии своей работы. Для VPN можно использовать локацию в Нидерландах, Казахстане или Польше. И по своей стоимости, хостинг предоставляет очень хорошее железо, которое будет тянуть не только VPN.

Speedtest показывает скорость Download 191 — 199Mbit/s, Upload 193 — 197 Mbit/s и Packet loss: 0 % — что является средним результатом.

Стоимость сервера с железом на 2 CPU, 2 Gb RAM и 40 SSD при интернете коннекторе на 200 Mbit — 555 рублей.

Установка WG Easy:

Для начала, устанавливаем curl и Docker:

sudo apt install curl -y && curl -sSL https://get.docker.com | sh && sudo usermod -aG docker $(whoami)
exit

// далее 1-2 раза ввести exit и Enter, после этого нас может выбросить из консоли //

Установка WG Easy

Обратите внимание, нам нужно указать:

  1. IP адрес нашего сервера
  2. Пароль, который будет использован для входа в веб-панель WG Easy
  3. DNS сервер
  4. Номер порта для VPN соединений (стандартный — 51820/udp)
  5. Номер порта для веб-панели WG Easy ((стандартный — 51821/tcp)
Эти данные обязательно сохраните у себя где-нибудь в файле. Они нам потом еще понадобятся.
docker run -d \
  --name=wg-easy \
  -e WG_HOST=ip_адрес_нашего_сервера \
  -e PASSWORD=наш_пароль\
  -e WG_DEFAULT_DNS=1.1.1.1,9.9.9.9 \
  -v ~/.wg-easy:/etc/wireguard \
  -p 51820:51820/udp \
  -p 51821:51821/tcp \
  --cap-add=NET_ADMIN \
  --cap-add=SYS_MODULE \
  --sysctl="net.ipv4.conf.all.src_valid_mark=1" \
  --sysctl="net.ipv4.ip_forward=1" \
  --restart unless-stopped \
  weejewel/wg-easy
echo nameserver 1.1.1.1,9.9.9.9 | sudo tee /etc/resolv.conf

На этом установка закончена и веб-панель WG Easy будет доступна по адресу:

www.ip_адрес_нашего_сервера:51821

Теперь переходим в браузере по адресу:

Пароль мы установили ранее, в поле -e PASSWORD=наш_пароль\

Теперь мы можем генерировать ключи, пользоваться VPN на всех наших устройствах, давать их женам, детям, любовницам и любовникам. В общем, ни в чем себе не отказывать.

На этом установка закончена!

Бонусное задание — безопасность сервера

Обновляем и защищаем наш сервер:

apt install fail2ban -y && apt install ufw -y && apt install nano -y && apt update && apt upgrade -y
touch /etc/fail2ban/jail.local && nano /etc/fail2ban/jail.local

В конце откроется редактор, вставляем код правой кнопкой мыши (копировать полностью):

[sshd]
enabled = true
filter = sshd
action = iptables[name=SSH, port=ssh, protocol=tcp]
logpath = /var/log/auth.log
findtime = 600
maxretry = 3
bantime = 43200

Нажимаем CTRL+ X, далее Y + Enter, чтобы сохранить

Отключим двухсторонний пинг, чтобы затруднить обнаружение туннеля

 nano /etc/ufw/before.rules

Меняем концовку следующего выражения с ACCEPT на DROP:

-A ufw-before-input -p icmp --icmp-type echo-request -j DROP

Нажимаем ctlr + x, далее y + enter, чтобы сохранить.

Настраиваем фаервол:

Внимание! Вместо 51820/udp пишем номер порта, который мы указали ранее при установке WG Easy   
-p 51820:51820/udp
-p 51821:51821/tcp 
ufw allow 22 && ufw allow 51820/udp && ufw allow 51821/tcp && ufw limit 22/tcp && ufw enable

// нажимаем Y + Enter //

Обновление WG Easy

Раз в месяц можно заходить на сервер и обновлять ПО:

apt update && apt upgrade -y && apt autoclean -y && apt clean -y && apt autoremove -y

Обновление WG Easy:

docker stop wg-easy && docker rm wg-easy && docker pull weejewel/wg-easy

Запускаем WG Easy после обновления. Не забываем указывать наши актуальные данные:

docker run -d \
  --name=wg-easy \
  -e WG_HOST=ip_адрес_нашего_сервера \
  -e PASSWORD=наш_пароль \
  -e WG_DEFAULT_DNS=1.1.1.1 \
  -v ~/.wg-easy:/etc/wireguard \
  -p 51820:51820/udp \
  -p 51821:51821/tcp \
  --cap-add=NET_ADMIN \
  --cap-add=SYS_MODULE \
  --sysctl="net.ipv4.conf.all.src_valid_mark=1" \
  --sysctl="net.ipv4.ip_forward=1" \
  --restart unless-stopped \
  weejewel/wg-easy

Будут вопросы, заявки, уточнения — пишите.

Dmitrii
Dmitrii
https://itstar.space
IT Project Manager, организатор IT-конференций в РФ, владелец 11 кошек и чихуа-хуа. Из которых половину спасли с женой из Турции, остальных спасли в РФ. В прошлом изобретатель с 16 лет, руководитель многочисленных лабораторий, проф. фотограф и еще хорошо готовлю. Короче очень клевый чувак, пацифист и любитель животных. Единственное, не веган :(
Подписаться
Уведомить о
guest
15 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
Слава
Слава
1 год назад

Привет! Спасибо за статьи, я покупал vps на racknerd (гиг, 1 проц, 4 TB в месяц за 12,98 на год 1 января), локация США (Нидерландов пока нет у них).
В принципе все работает с VPN WG Easy и WireGuard (на гаджетах, а также выборочный обход на роутере Keenetic с КВАСОМ).
Но нигде (на телефонах с wi-fi/мобильным интернетом) с включенными VPN WG Easy и WireGuard не открывается сайт netflix.com, а если скачать какой-нибудь мод VPN приложения, то без проблем…
Также я частенько захожу на сайт newegg. com и с VPN на VPS у меня это не получается, вот такая ошибка: Our system have detected unusual traffic from this device, please check our Policy & Agreement for more information, feel free to click this link to give us feedback.
В поддержку пока не писал, возможно найду у нас ответ на данные вопросы

Виктор
Виктор
Ответить на  Слава
1 год назад

Проблема у вас именно в хостере, скорее всего пул их IP в блэклистах этих сервисов. Развернулся в одном из российских провайдеров в локации Нидерланд — работает как netflix, так и newegg.

Константин
Константин
1 год назад

После обновления WG Easy придется заново заводить всех клиентов?

Сергей
Сергей
1 год назад

То-есть после обновления клиенты не отвалятся? У них не поменяются ключи? А если бекапить то каким образом?

Глеб
Глеб
1 год назад

Когда ставлю WG Easy то по умолчанию он начинает всегда выдавать внутренние IP адреса клиентам в подсети 10.8.0.0 можно ли как то поменять эту настройку что бы выдавались IP например в 10.10.0.0 , 192.168.x.x и тп ? Нигде настрое этого я не нашел

Александр
Александр
1 год назад

Ставил WGEasy и закинул дефолтные -e WG_DEFAULT_DNS=1.1.1.1, но теперь хочу поменять на 8.8.8.8, 1.1.1.1. Мне заново нужно конфигурировать docker run -d И там ставить -e WG_DEFAULT_DNS=8.8.8.8, 1.1.1.1 ?

Рассматривали ли вы другую GUI, например вот эту https://github.com/donaldzou/WGDashboard ? Я так понимаю, если я захочу эту морду поменять, то надо все сносить и заново генерить все ключи?

Александр
Александр
Ответить на  Dmitrii
1 год назад

Большое спасибо за ответ. Не слышал про xray, буду изучать. Информации по нему почти нет, а следовательно, он должен долго продержаться. Нежели WG, про который везде пишут.

В идеале наверно пустить трафик на подсети только на запрещенных ИНСТ картинок и парочку необходимых сайтов. Тогда, наверно, будет жить долго и счастливо)

Алешка
Алешка
11 месяцев назад

А каким образом можно учет трафика для каждого пользователя wg посмотреть?

Андрей
Андрей
11 месяцев назад

В панеле пишет There is an update available!
Updated to Node.js v18.

Обновляю easy-wireguard — но все-равно пишет, что есть новая версия Node. Что делать? 🙂

ury
ury
Ответить на  Андрей
9 месяцев назад

Поменять
docker pull weejewel/wg-easy
на
docker pull ghcr.io/wg-easy/wg-easy

weejewel сдулся. У него об этом написано в гитхабе