WireGuard — это современный VPN-протокол с открытым исходным кодом, который стремится быть быстрее, проще, легче и полезнее, чем более старые протоколы, при этом обеспечивая высокий уровень безопасности. В этой статье будет описана установка и настройка WireGuard на сервере на базе kubuntu и подключение к нему клиента. Более подробная информацию по wireguard. Установка серверной части Прежде всего, вам необходимо установить WireGuard на сервер. WireGuard доступен в стандартных репозиториях, поэтому установка происходит довольно просто: sudo apt updatesudo apt install wireguard iptables Эти команды установят все необходимые компоненты WireGuard. Генерация ключей на сервере Затем, необходимо сгенерировать приватный и публичный ключи для вашего VPN-сервера: wg genkey | tee /etc/wireguard/privatekey | wg pubkey > /etc/wireguard/publickey Настройка WireGuard на сервере Для настройки сервера создайте конфигурационный файл в `/etc/wireguard/`, например `wg0.conf`, и добавьте следующее содержимое: [Interface]Address = 10.0.0.1/24SaveConfig = trueListenPort = 51820PrivateKey = <ваш приватный ключ>PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADEPostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE[Peer]PublicKey = <публичный ключ клиента>AllowedIPs = 10.0.0.2/32 Замените `<ваш приватный ключ>` на реальный приватный ключ сервера, который вы сгенерировали ранее, а `eth0` — на имя вашего внешнего интерфейса. Включение IP-преобразования Вам необходимо разрешить IP-преобразование, чтобы пакеты могли передаваться между клиентами и интернетом: echo 'net.ipv4.ip_forward=1' | sudo tee /etc/sysctl.d/99-sysctl.confsudo sysctl -p Запуск сервера WireGuard Чтобы начать работу WireGuard, используйте следующую команду: wg-quick up wg0 Для автоматического запуска WireGuard при старте системы, включите его в systemd: systemctl enable wg-quick@wg0 Настройка клиента На стороне клиента вам также предстоит сгенерировать ключевую пару и создать конфигурационный файл. Установка WireGuard на клиенте происходит так же, как и на сервере: sudo apt updatesudo apt install wireguard Генерация ключей на клиенте wg genkey | tee privatekey | wg pubkey > publickey Конфигурация клиента Создайте файл `wg0-client.conf` со следующим содержанием: [Interface]PrivateKey = <ваш приватный ключ клиента>Address = 10.0.0.2/32DNS = 1.1.1.1[Peer]PublicKey = <публичный ключ сервера>AllowedIPs = 0.0.0.0/0Endpoint = <IP_сервера>:51820PersistentKeepalive = 25 После замены `<ваш приватный ключ клиента>` и `<публичный ключ сервера>` на соответствующие значения, а также `` на внешний IP-адрес вашего сервера, конфигурация клиента будет завершена. Для подключения к VPN используйте приведенную команду: wg-quick up wg0-client Если вы хотите, чтобы VPN запускался при старте системы, используйте systemd: systemctl enable --now wg-quick@wg0-client Теперь у вас должен быть рабочий VPN-сервер на базе WireGuard и клиент, подключенный к нему...