ВОЙТИ
    opened image

    ​​​​​​​

     

    В эпоху цифровой информации безопасность и приватность становятся приоритетными для пользователей по всему миру. VPN (Virtual Private Network) — это инструмент, позволяющий создавать защищённые соединения через незащищённые сети, такие как Интернет. WireGuard — это современный, простой и эффективный VPN-протокол, который завоёвывает популярность благодаря своей высокой производительности и лёгкости настройки. Он предоставляет быстрые и безопасные соединения, превосходя традиционные VPN-протоколы, такие как OpenVPN и IPSec.

    В этой статье мы шаг за шагом рассмотрим процесс установки и настройки WireGuard VPN на Rocky Linux 9, чтобы вы могли обеспечить безопасные сетевые соединения на своём сервере.

     

     

    Установка WireGuard


    Хотя WireGuard является мощным инструментом, он не входит в стандартные репозитории Rocky Linux 9. Для его установки нам потребуется подключить дополнительный репозиторий EPEL (Extra Packages for Enterprise Linux).

    Сначала установим репозиторий EPEL:

     

    sudo dnf install epel-release -y

     

     

    Установка WireGuard


    Теперь установим пакет wireguard-tools:

     

    sudo dnf install wireguard-tools -y

     

     

    ​​​​​​​Проверка установки


    Убедимся, что WireGuard установлен корректно:

    wg --version
    

    Вы должны увидеть информацию о версии WireGuard, что подтвердит успешную установку.
     

     

    Настройка WireGuard

     

    WireGuard использует криптографические ключи для аутентификации и шифрования трафика между узлами.

     

    Генерация ключей сервера

    Создадим директорию для хранения ключей и сгенерируем пару ключей:

     

    sudo mkdir /etc/wireguard
    sudo chmod 700 /etc/wireguard
    sudo wg genkey | sudo tee /etc/wireguard/server_private.key
    sudo wg pubkey < /etc/wireguard/server_private.key | sudo tee /etc/wireguard/server_public.key
    

    ​​​​​​​

     

    Создание конфигурационного файла сервера

     

    Создадим файл конфигурации wg0.conf:

     

    sudo nano /etc/wireguard/wg0.conf
    

     

    Добавьте в него следующие строки, заменив на ваш приватный ключ:

     

    [Interface]
    Address = 10.0.0.1/24
    ListenPort = 51820
    PrivateKey = <Server_Private_Key>
    


     

    Сохраните файл и закройте редактор.

     

    Генерация конфигурации клиента

     

    Сгенерируем пару ключей для клиента:

     

    sudo wg genkey | sudo tee /etc/wireguard/client_private.key
    sudo wg pubkey < /etc/wireguard/client_private.key | sudo tee /etc/wireguard/client_public.key
    

     

     

    Создание конфигурационного файла клиента

    Создайте файл client.conf:

     

    sudo nano /etc/wireguard/client.conf
    

     

     

    Добавьте следующие строки, заменив соответствующие значения вашими ключами и IP-адресом сервера:

     

    [Interface]
    PrivateKey = <Client_Private_Key>
    Address = 10.0.0.2/24
    DNS = 1.1.1.1
    
    [Peer]
    PublicKey = <Server_Public_Key>
    Endpoint = <Server_Public_IP>:51820
    AllowedIPs = 0.0.0.0/0
    PersistentKeepalive = 25
    

    Сохраните файл.

     

     

    Добавление клиента на сервер

    Откройте конфигурационный файл сервера:

     

    sudo nano /etc/wireguard/wg0.conf
    

     

    Добавьте информацию о клиенте:

     

    [Peer]
    PublicKey = <Client_Public_Key>
    AllowedIPs = 10.0.0.2/32
    

    Сохраните изменения.

     

     

    Управление сервисом WireGuard

     

    Запустите интерфейс WireGuard:

     

    sudo systemctl start wg-quick@wg0
    

     

    Включите автозапуск сервиса:

    sudo systemctl enable wg-quick@wg0
    

     

    Убедитесь, что сервис работает корректно:

    sudo systemctl status wg-quick@wg0
    

     

    Настройка брандмауэра

     

    Для начала установите firewalld:

     

    dnf install firewalld -y
    systemctl start firewalld
    systemctl enable firewalld
    

    ​​​​​​​

     

    Откройте порт 51820/UDP в FirewallD:

    sudo firewall-cmd --permanent --add-port=51820/udp
    sudo firewall-cmd --reload
    

     

    Разрешите пересылку пакетов для обеспечения работы VPN:

    echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.conf
    sudo sysctl -p
    

    ​​​​​​​

     

    Добавьте правило маскарадинга для сети WireGuard:

     

    sudo firewall-cmd --permanent --add-masquerade
    sudo firewall-cmd --reload
    

     

     

    Заключение

    ​​​​​​​

    Поздравляем! Вы успешно установили и настроили WireGuard VPN на Rocky Linux 9 на вашем сервере. WireGuard предоставляет быстрые и безопасные VPN-соединения с минимальными накладными расходами и простой конфигурацией. Теперь вы можете наслаждаться безопасным доступом к сети и расширять свою VPN-инфраструктуру по мере необходимости.