Поднимаем собственный VPN
Сегодня поговорим о том, как создать свой собственный VPN, который будет использовать только вы. Это позволит вам просматривать ленту в Инстаграме или задавать вопросы ChatGPT. Многие пользователи предпочитают бесплатные сервисы, но они часто сильно ограничивают скорость интернета и показывают много рекламы, а также не обеспечивают достаточной конфиденциальности. Платные версии таких сервисов тоже не всегда устраивают, так как на их сервера подключено много других пользователей, не говоря уже о продаже вашей конфиденциальной информации.
Нравится? Отлично, будем устанавливать WireGuard. Это относительно свежая технология, которая обеспечивает быстрое, конфиденциальное и стабильное подключение.
Решение проблемы
1) Нужно подписаться на Telegram канал
2) Проблема решается очень просто: нужен виртуальный сервер(подойдет почти любой, но с хорошим каналом), ~4$ и немножко терпения. Пользоваться будем WireGuard, который мы установим на свой сервер с помощью Docker.
Требования к серверу:
- Дата-центр сервера должен быть за пределами России, по понятным причинам.
- 1 ядро процессора.
- Не менее 512MB оперативной памяти.
- Ширина канала больше 100Mbit/sec.
Установка Wireguard с помощью Docker
После того как мы купили сервер нужно поставить систему Ubuntu или Debian. Подключаемся по SSH и вводим следующий спектр команд:
apt update && apt upgrade -y
- обновляем кэш репозиториев и систему.
Создадим директорию для конфигурационных файлов:
Создадим и настроим конфигурационный файл Docker:
nano ~/wireguard/docker-compose.yml
- Все, что помечено #optional - вы можете менять на нужные вам параметры.
- Настройки оптимальны для всех, нужно только заменить значение PEERS на нужное вам, в зависимости от того, сколько устройств будут пользоваться VPN.
version: "2.1" services: wireguard: image: lscr.io/linuxserver/wireguard container_name: wireguard cap_add: - NET_ADMIN - SYS_MODULE environment: - PUID=1000 - PGID=1000 - TZ=Europe/London - SERVERURL=auto #optional - SERVERPORT=51820 #optional - PEERS=4 #optional - PEERDNS=auto #optional - INTERNAL_SUBNET=10.13.13.0 #optional - ALLOWEDIPS=0.0.0.0/0 #optional volumes: - ~/wireguard/config:/config - /lib/modules:/lib/modules ports: - 51820:51820/udp sysctls: - net.ipv4.conf.all.src_valid_mark=1 restart: unless-stopped
Здесь настройка конфигурации завершена.
Создадим и запустим Docker контейнер:
cd ~/wireguard
docker-compose up -d
После выполнения команды можем убедиться в успешном запуске контейнера: docker ps
Конфиг для телефона
Чтобы добавить конфиг на телефон достаточно отсканировать QR-код, который появится после выполнения команды:
docker exec -it wireguard /app/show-peer X
Вместо X подставьте цифру нужного потока(PEER)
Скачиваем мобильное приложение для телефона и выполняем следующие действия:
- Нажимаем + в правом верхнем углу экрана.
- Выбираем пункт "Создать из QR-кода".
- Наводим на ранее сгенерированный QR код из SSH-клиента.
- Называем конфиг как удобно.
Конфиг для Компьютера
Скачиваем приложение для FTP-доступа к хостингу(я использую FileZilla) и подключаемся к серверу.
Заходим в директорию /root/wireguard/config и видим перед собой потоки, их количество вы задавали ранее, заходим в папку с нужным потоком, в ней несколько файлов:
- peerX.conf - файл конфига потока.
- peerX.png - изображение QR-кода.
- публичный и приватный ключи, которые нам не потрубуются.
Переносим peerX.conf себе на компьютер и скачиваем WireGuard.
Нажимаем на кнопку добавить туннель.
Выбираем файл peerX.conf, и жмем подключиться.
Заходим на 2ip.io и проверяем работоспособность соединения.
Вывод
Буквально за 20 минут и за ~4$ мы сделали себе надежный и быстрый VPN, подключаясь к которому мы можем не бояться обрыва сети. Так же мы избавили себя от назойливой рекламы и можем поделиться конфигом с кем угодно.
Не забудьте подписаться на Telegram канал