Настройка Wireguard для Debian 10
Обновлено: 21.11.2024
В этом руководстве мы покажем вам, как установить Wireguard на Debian 10. Для тех из вас, кто не знал, WireGuard — это бесплатный, современный и быстрый VPN-сервер с открытым исходным кодом, -художественная криптография. Это быстрее и проще по сравнению с IPSec и OpenVPN. Он кроссплатформенный и может работать практически везде, включая Linux, Windows, Android и macOS.
В этой статье предполагается, что у вас есть хотя бы базовые знания о Linux, умение пользоваться оболочкой и, самое главное, размещение сайта на собственном VPS. Установка довольно проста и предполагает, что вы работаете с учетной записью root, в противном случае вам может потребоваться добавить « sudo » к командам, чтобы получить привилегии root. Я покажу вам пошаговую установку Wireguard VPN на Debian 10 (Buster).
Предпосылки
- Сервер под управлением одной из следующих операционных систем: Debian 10.
- Во избежание потенциальных проблем рекомендуется использовать новую установку ОС.
- Пользователь sudo без полномочий root или доступ к пользователю root . Однако мы рекомендуем действовать как пользователь sudo без полномочий root , так как вы можете нанести вред своей системе, если не будете осторожны, действуя от имени пользователя root.
Установите Wireguard на Debian 10 Buster
Шаг 1. Перед запуском приведенного ниже руководства важно убедиться, что ваша система обновлена, выполнив следующие команды apt в терминале:
Шаг 2. Установка Wireguard в Debian 10.
WireGuard доступен в репозиториях бэкпортов Debian. Теперь добавим репозиторий в вашу систему Debian:
После этого обновите кэш apt и установите WireGuard с помощью следующей команды:
Шаг 3. Настройте WireGuard VPN.
Теперь мы запускаем следующую команду для создания пары ключей:
Далее создайте новый файл с именем wg0.conf со следующим содержимым:
Добавьте следующие строки:
Сохранить и установить права доступа к файлу:
После этого запустите WireGuard и включите его при загрузке:
Шаг 4. Настройте брандмауэр.
Я предполагаю, что у вас настроен UFW, и мы собираемся открыть порт UDP 51820 с помощью команды ufw следующим образом:
Затем добавьте следующие правила, чтобы разрешить подключения SSH и WireGuard:
Поздравляем! Вы успешно установили Wireguard. Спасибо за использование этого руководства по установке последней версии Wireguard VPN в системе Debian. Для получения дополнительной помощи или полезной информации рекомендуем посетить официальный веб-сайт Wireguard.
Если у вас нет времени заниматься всем этим или если это не ваша область знаний, мы предлагаем услугу «Управление VPS», начиная с 10 долларов США (оплата через PayPal). Пожалуйста, свяжитесь с нами, чтобы получить лучшее предложение!
Загрузите и запустите скрипт установки из репозитория Github:
Сценарий попросит вас предоставить информацию для настройки сервера Wireguard. На приведенном ниже снимке экрана показан пример того, какая информация требуется и что для ее предоставления:
- Общедоступный IP-адрес и интерфейс Ethernet:
- По умолчанию сценарий сам должен определить общедоступный IP-адрес вашего сервера и интерфейс Ethernet по умолчанию, через который он будет направлять трафик, и отобразить его. Если информация верна, нажмите Enter, чтобы продолжить.
- Имя порта Wireguard и частная подсеть IPv4 и IPv6: эти записи можно оставить по умолчанию. Это параметры Wireguard по умолчанию, где мы установим имя для сетевых интерфейсов Wireguard, а также зададим частный IP-адрес Wireguard и начальную подсеть для клиентских устройств.
- Номер порта: номер протокола порта, который Wireguard использует для установления соединения с клиентскими устройствами по общедоступному IP-адресу.
- Первый и второй преобразователь DNS клиента. Этот параметр задает преобразователи DNS (или DNS-серверы), которые клиенты будут использовать после подключения к серверу. Сценарий изначально предложит и отобразит уже IP-адрес для DNS, который будет использоваться для клиентов. Предлагаемый IP-адрес от службы AdGuard, которая защищает клиентов и блокирует трекеры и фишинговые атаки. Вы можете ввести и использовать предложенный DNS или ввести тот, который вы предпочитаете.
После записей DNS скрипт начнет установку и настройку Wiregaurd.
Конфигурация клиента
После того, как конфигурация сервера завершена, скрипт предложит вам настроить клиент, и это будет только две вещи, а именно:
Имя клиента и частный IP-адрес клиента. Для IP-адреса вы можете оставить его по умолчанию, так как он будет предлагать и устанавливать IP-адреса в числовом виде.
Остальная часть настройки клиента будет выполнена сценарием автоматически, и вы должны получить результат, как на следующем рисунке, с QR-кодом, указанным для упрощения настройки клиента:
Получение конфигурации клиента
После настройки конфигурации клиента загрузите файл клиента .ovpn (вы можете использовать SSH-клиент со встроенным файловым менеджером, таким как MobaxTerm или Bitwise или аналогичный). В Linux вы можете загрузить файл с помощью sftp:
Файл будет загружен в ваш домашний каталог.
Подключение к VPN-серверу
После завершения установки вы можете получить сообщение о том, что служба Wireguard VPN не запущена:
Если вы получили это сообщение, просто запустите команду ниже, чтобы запустить его и запустить автоматически при загрузке:
или запустите его как сервис и включите его (предлагается, если вы планируете, чтобы он работал круглосуточно и без выходных):
Чтобы убедиться, что сервер Wireguard работает, после его запуска вы получите результат, как на картинке ниже:
Чтобы установить соединение от клиента к серверу, на клиентской машине установите клиент Wireguard (для каждого отдельного дистрибутива вы можете найти инструкции на их сайте) и выполните следующую команду для подключения:
Для успешного подключения вы должны вывести такой вывод:
Настройка брандмауэра
Если на вашем сервере установлен брандмауэр, такой как UFW или IPTABLE, то для работы VPN необходимо открыть порт на вашем сервере:
Обзор
Подводя итоги статьи, мы рассмотрели процесс установки сервера Wireguard в Debian 10 и Debian 11 с помощью скрипта автоматической установки с Github, который ускоряет и упрощает процесс. Причина, по которой мы выбрали этот сценарий, заключается в том, что он может помочь нам развернуть серверное решение Wireguard за считанные минуты, а также охватывает и автоматизирует большую часть конфигурации для наиболее распространенных сценариев использования. Помимо этого метода, мы также рассмотрели процедуру установки сервера Wireguard с помощью Docker, которую можно проверить в этом посте.
В этом руководстве мы настроим службу WireGuard на сервере Debian. В этом примере используется «ванильный» Debian Buster.
В конце этого руководства сервер Debian будет иметь виртуальный сетевой интерфейс wg0, расположенный в частной сети 10.0.2.0/24. Сервер Debian будет готов для добавления клиентов WireGuard.
Платформа
Установить судо
В этом руководстве мы выполняем все команды от имени пользователя без полномочий root с помощью команды sudo. Debian не всегда поставляется с установленным sudo.
Убедитесь, что sudo установлен.
В этом примере отсутствует команда sudo. Чтобы исправить это, войдите в систему как пользователь root, либо через приглашение входа в систему, либо через su - (для чего требуется пароль пользователя root).
Включить судо
По умолчанию Debian не позволяет пользователям без полномочий root использовать команду sudo.
Проверьте пользователя без полномочий root. В этом примере пользователем без полномочий root является jacob. Войдите в систему как пользователь без полномочий root и запустите группы .
Если группа sudo включена в этот список, пользователь без полномочий root может использовать sudo . В приведенном выше примере группа sudo не отображается. Чтобы исправить это, войдите в систему как пользователь root, либо через приглашение входа в систему, либо через su - (для чего требуется пароль пользователя root).
Выйдите из системы привилегированного пользователя. Если su - использовался для запуска adduser, также выйдите из системы для пользователя без полномочий root. Войдите в систему как пользователь без полномочий root и снова запустите группы.
В приведенном выше примере группа sudo появляется там, где ее раньше не было.
Настройка WireGuard
Установите WireGuard
Чтобы установить последнюю версию WireGuard, нам потребуются пакеты из репозитория Debian buster-backports. Добавьте репозиторий бэкпортов и закрепите приоритет бэкпортов за стабильным. Это позволяет нам устанавливать отдельные пакеты, недоступные в стабильной версии Debian, сохраняя при этом «стабильные» версии всего остального.
Обновите информацию о пакетах из репозиториев как стабильных, так и нестабильных пакетов.
Установите пакеты WireGuard. После этого шага будут работать команды man wg и man wg-quick, а команда wg получит завершение bash.
Создать ключи
Во всех отношениях клиент/сервер у каждого узла есть свои закрытый и открытый ключи. Создайте закрытый и открытый ключи для службы WireGuard. Защитите закрытый ключ с помощью маски создания файлового режима.
Распечатайте закрытый ключ, он нам скоро понадобится.
Создайте сетевое устройство WireGuard
Создайте файл конфигурации службы WireGuard в /etc/wireguard/wg0.conf . (Используйте такую команду, как sudo nano /etc/wireguard/wg0.conf .)
Создайте сетевое устройство WireGuard в /etc/network/interfaces.d/wg0 . (Используйте команду, например sudo nano /etc/network/interfaces.d/wg0 .)
В любое время убедитесь, что конфигурация WireGuard для wg0 соответствует вашим ожиданиям:
Как установить и настроить VPN-сервер WireGuard на сервере Debian 10 Linux? Как настроить Debian 10 в качестве VPN-сервера WireGuard?
WireGuard — это бесплатный, современный и быстрый VPN-сервер с открытым исходным кодом и современной криптографией. Это быстрее и проще по сравнению с IPSec и OpenVPN. Первоначально выпущен для ядра Linux, но получает кроссплатформенную поддержку для других операционных систем, таких как FreeBSD и других. На этой странице объясняется, как установить и настроить WireGuard VPN на сервере Debian 10 Linux.
Наш пример установки включает простое одноранговое соединение между облачным сервером, на котором запущен сервер Debian 10 LTS, и настольным клиентом Debian/Ubuntu/RHEL/SUSE/OpenSUSE/CentOS Linux (или приложением для iOS/Android):
Шаг 1. Обновите систему
Выполните команду apt/apt-get, чтобы установить обновления безопасности Debian 10:
Шаг 2. Включите репозиторий бэкпортов Debian 10 buster
Wireguard находится в портированном репозитории Debian. Следовательно, включите бэкпорты следующим образом: запустите:
Используйте команду cat для проверки репозитория:
Обновите репозиторий, запустите:
Поиск пакета WireGuard
Выполните следующую команду:
Шаг 3. Установка VPN-сервера WireGuard на Debian 10 LTS
Теперь мы получили обновления нашего сервера с последними исправлениями безопасности, а buster-backports включен. Пришло время настроить VPN-сервер WireGuard на сервере Debian 10. Введите:
Шаг 4. Настройка сервера WireGuard
Сначала нам нужно создать пару открытого и закрытого ключей для сервера WireGuard. Перейдем в каталог /etc/wireguard/ с помощью команды cd следующим образом:
Выполните следующую команду:
Для просмотра созданных ключей используйте команду cat и команду ls:
Настройте WireGuard VPN в Debian, отредактировав wg0.conf
Отредактируйте или обновите файл /etc/wireguard/wg0.conf следующим образом:
Добавьте следующие директивы конфигурации:
Сохраните и закройте файл при использовании текстового редактора vim.
Шаг 5. Настройте правила брандмауэра UFW
Я предполагаю, что у вас настроен UFW, и мы собираемся открыть порт UDP 51194 с помощью команды ufw следующим образом:
Дополнительную информацию см. в разделе «Как настроить брандмауэр с помощью UFW в Debian 10 LTS».
Шаг 6. Включите и запустите службу WireGuard
Включите службу WireGuard во время загрузки с помощью команды systemctl, выполните:
Запустите службу, выполните:
Получить статус службы, выполнить:
Убедитесь, что интерфейс с именем wg0 запущен и работает на сервере Debian с помощью команды ip:
Шаг 7. Настройка клиента Wireguard VPN
Процедура установки и настройки VPN-клиента такая же, как и настройка сервера. Давайте установим клиент на рабочий стол Debian Linux 10:
Установите wireguard на рабочем столе Linux, запустите:
Далее нам нужно создать конфигурацию VPN-клиента на десткопе Debian/Debian/CentOS Linux:
Добавьте следующие директивы:
Включите и запустите VPN-клиент/одноранговое соединение, запустите:
Разрешить настольному клиенту и серверу Debian подключение через VPN (одноранговое соединение)
Нам нужно настроить параметр одноранговой VPN на стороне сервера и разрешить соединение между клиентским компьютером для настольных ПК и сервером. Давайте вернемся к нашему серверу Debian 10 LTS и отредактируем файл wg0.conf, добавив информацию [Peer] (клиент) следующим образом (введите команды в поле вашего сервера):
Добавьте следующую конфигурацию:
Сохраните и закройте файл. Затем снова запустите службу, запустите:
Шаг 8. Проверка
Это все, ребята. К настоящему времени и серверы, и клиенты Debian должны быть безопасно подключены с использованием одноранговой VPN, называемой WireGuard. Проверим соединение. Введите следующую команду ping на клиентском компьютере/настольном компьютере:
Шаг 9. Настройка брандмауэра
Теперь мы установили и настроили одноранговую сеть VPN для нашего сервера и клиента.Однако вы можете захотеть предоставить доступ к Интернету для всех VPN-клиентов. Для этих целей нам необходимо настроить правила брандмауэра IPv4 и IPv6, включая NAT и переадресацию IP. См. следующее руководство:
- Как настроить правила брандмауэра WireGuard в Linux
Заключение
Поздравляем! Вы только что узнали о настройке VPN-сервера WireGuard на сервере Debian 10 LTS и пире (клиентской машине) на рабочем столе Debian/CentOS Linux. Я настоятельно рекомендую вам прочитать документацию по проекту WireGuard здесь.
Читайте также: