Установка VPN-сервера в системе Debian 11 с помощью программного обеспечения WireGuard
Перед установкой и запуском нашего собственного VPN-сервера мы должны убедиться, что все установленные в настоящее время программные пакеты обновлены. Для этого в консоли (CLI) введите:
sudo apt update
Затем система проверит, были ли обновлены репозитории программного обеспечения для установленных в данный момент пакетов. Если на данный момент в системе установлены последние версии программного обеспечения, мы увидим сообщение об отсутствии возможных обновлений. В противном случае мы будем проинформированы о количестве доступных пакетов для обновления.
ПРИМЕЧАНИЕ: Если ни одна из установленных в настоящее время версий пакетов не требуется для использования другого программного обеспечения (иногда пользователи используют программное обеспечение, для которого требуется определенная версия пакета), мы можем выполнить обновление установленных в настоящее время пакетов с помощью следующей команды:
sudo apt upgrade
После выполнения команды вы будете проинформированы, какие пакеты будут обновлены, а какие, если таковые имеются, будут удалены. Чтобы разрешить обновление, выберите один из вариантов (да/нет):
Y/n
В нашем случае это будет Y или y. Введенный вариант подтверждается клавишей Enter.
После корректного обновления установленных пакетов можно приступать к установке необходимых компонентов программного обеспечения VPN.
В окне консоли (CLI) набираем команду:
sudo apt install wget
Это позволит нам установить один из пакетов, который потребуется для загрузки скрипта настройки нашего VPN-сервера. Затем, после установки вышеуказанного пакета, мы набираем:
sudo apt install wireguard*
В результате будет установлен базовый пакет VPN-сервера. Следующей командой, которую необходимо ввести, будет:
sudo apt install wireguard-tools mawk grep iproute2 qrencode
Данная команда установит дополнительные пакеты, необходимые для корректной работы нашего VPN-сервера, в том числе пакет, позволяющий генерировать QR-коды с необходимой информацией для подключения VPN-клиента к нашему серверу.
После установки указанных пакетов необходимо загрузить конфигурационный скрипт, благодаря которому мы сможем настроить наш VPN-сервер и данные для подключения с помощью одной команды.
Чтобы загрузить скрипт, введите в консольном окне (CLI) следующую команду и подтвердите ее нажатием клавиши Enter:
wget https://git.io/fjb5R -O easy-wg-quick
Далее необходимо разрешить нашему скрипту "исполнять себя" (execute/executable), для чего в окне консоли (CLI) набираем следующую команду:
chmod +x easy-wg-quick
ПРИМЕЧАНИЕ: Следует помнить, что команда wget загружает скрипт в тот каталог, в котором мы находимся в данный момент. Если вы хотите, чтобы наш скрипт находился в конкретном каталоге, вам необходимо перейти в него или создать его, например, командой mkdir:
sudo mkdir /home/VPN/
В результате в каталоге Home/home будет создана новая папка с именем VPN. После создания указанной папки перейдите в нее и выполните команду wget.
Выполнив все предыдущие шаги, мы сможем создать новый файл конфигурации для нашего VPN-сервера и клиента. При первом вызове следующей команды будет создано несколько файлов, включая файл конфигурации для VPN-клиента. При последующих вызовах следующей команды для новых клиентов будут созданы только дополнительные файлы конфигурации:
./easy-wg-quick lub ./easy-wg-quick <our_VPN_profile_name>
Пример результата вызова приведенной выше команды:
Затем выполните следующую команду, которая выполнит настройку нашего VPN-сервера и запустит службу VPN:
sudo wg-quick up ./wghub.conf
После правильного выполнения всех описанных выше действий мы можем подключиться к нашему VPN-серверу. Если мы используем мобильное устройство, то необходимо установить приложение WireGuard, а затем добавить в него файл конфигурации. С помощью сгенерированного ранее QR-кода мы можем быстро и безопасно добавить новое соединение с файлом конфигурации, используя опцию "SCAN QR CODE", доступную при нажатии на значок "+" в приложении.
При использовании стандартного клиента для Windows/Linux/Mac необходимо скачать программу WireGuard с сайта производителя, а затем добавить конфигурационный файл, имеющийся в папке со скриптом. Пример имени файла для клиента:
wgclient_VPN.conf lub wgclient_VPN.uci.txt
ПРИМЕЧАНИЕ: Если мы собираемся вводить все данные клиента вручную, мы найдем их в файле .txt.
Если мы правильно добавили все необходимые данные в конфигурационный файл нашего VPN-клиента, то мы сможем подключиться к нашему VPN-серверу.
После правильного выполнения всех описанных выше действий проверьте, что наш VPN-сервер правильно настроен и запущен и что ранее настроенный VPN-клиент смог подключиться к нашему серверу:
sudo wg show
Пример правильного сообщения:
interface: wghubpublic key: kbaG3HxSDz3xhqiTNXlo1fZkFa+V6oTl+w0cSAQKxwQ=private key: (hidden)listening port: 51820peer: th8qYu0R0mgio2wPu1kz6/5OOgi6l8iy7OobK590LHw=preshared key: (hidden)endpoint: 10.60.1.150:37218allowed ips: 10.127.0.10/32latest handshake: 50 minutes, 22 seconds agotransfer: 32.64 MiB received, 95.24 MiB sent
Если все описанные выше шаги были выполнены правильно, то мы уже можем начать использовать наше VPN-соединение на мобильном устройстве или компьютере, с которого мы хотим создать защищенный туннель к нашему серверу.
Готово! Ваш VPN установлен.