Wireguard + WGDashboard
Установка Wireguard + WGDasboard
Эта инструкция позволяет установить и обеспечить автозапуск WGDashboard, настроить NAT и безопасный доступ с HTTPS через nginx.
-
Установка WGDashboard:
-
Обновите пакеты и установите зависимости:
sudo apt update
sudo apt install -y wireguard git net-tools python3 python3-pip iptables-persistent nginx python3-certbot-nginx
- Склонируйте репозиторий WGDashboard:
git clone https://github.com/WGDashboard/WGDashboard.git
- Перейдите в каталог с исходниками:
cd WGDashboard/src
- Дайте права на исполнение скрипту и установите WGDashboard:
sudo chmod u+x wgd.sh
sudo ./wgd.sh install
- Дайте права на чтение и выполнение конфигурационным файлам WireGuard:
sudo chmod -R 755 /etc/wireguard
- Включение маршрутизации IPv4 (рекомендуется):
echo "net.ipv4.ip_forward=1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p /etc/sysctl.conf
- Настройка NAT и сохранение правил iptables:
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -i wg0 -j ACCEPT
sudo iptables -A FORWARD -o wg0 -j ACCEPT
sudo netfilter-persistent save
-
Создание systemd-сервиса для автозапуска WGDashboard:
-
Создайте файл
/etc/systemd/system/wgd.serviceсо следующим содержимым:
[Unit]
Description=WGDashboard startup service
After=network.target
[Service]
Type=oneshot
ExecStart=/full/path/to/WGDashboard/src/wgd.sh start
WorkingDirectory=/full/path/to/WGDashboard/src
User=root
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
(Замените /full/path/to/WGDashboard/src на фактический путь к скрипту)
- Активируйте сервис и запустите его:
sudo systemctl daemon-reload
sudo systemctl enable wgd.service
sudo systemctl start wgd.service
-
Настройка HTTPS с помощью nginx и Let's Encrypt:
-
Создайте конфигурацию nginx, например
/etc/nginx/sites-available/wgdashboard:
server {
listen 80;
server_name vpn.example.com;
location / {
proxy_pass http://127.0.0.1:10086;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
(Замените vpn.example.com на ваш реальный домен)
- Активируйте конфигурацию и перезапустите nginx:
sudo ln -s /etc/nginx/sites-available/wgdashboard /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
- Установите SSL сертификат Let’s Encrypt через certbot:
sudo certbot --nginx -d vpn.example.com
Certbot автоматически настроит HTTPS и обновление сертификатов.
-
Доступ к панели WGDashboard:
-
Откройте в браузере:
https://vpn.example.com
- Логин: admin
- Пароль: admin
Обратите внимание:
- DNS домена vpn.example.com должен указывать на IP вашего сервера.
- В systemd-сервисе не используйте sudo в ExecStart, сервис запускается от root.
- После изменений в systemd или путях всегда выполняйте
daemon-reloadи перезапускайте сервисы.