Answer the question
In order to leave comments, you need to log in
Problem with wireguard on Debian?
Hello everyone, I installed wireguard, I used to put everything working, now I installed it on the latest version of debian and such an error? What could be the problem?
systemctl status [email protected]
● [email protected] - WireGuard via wg-quick(8) for wg0
Loaded: loaded (/lib/systemd/system/[email protected]; disabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Fri 2020-05-29 18:05:11 MSK; 3min 26s ago
Docs: man:wg-quick(8)
man:wg(8)
https://www.wireguard.com/
https://www.wireguard.com/quickstart/
https://git.zx2c4.com/wireguard-tools/about/src/man/wg-quick.8
https://git.zx2c4.com/wireguard-tools/about/src/man/wg.8
Process: 786 ExecStart=/usr/bin/wg-quick up wg0 (code=exited, status=1/FAILURE)
Main PID: 786 (code=exited, status=1/FAILURE)
мая 29 18:05:11 Server systemd[1]: Starting WireGuard via wg-quick(8) for wg0...
мая 29 18:05:11 Server wg-quick[786]: wg-quick: `wg0' already exists
мая 29 18:05:11 Server systemd[1]: [email protected]: Main process exited, code=exited, status=1/FAILURE
мая 29 18:05:11 Server systemd[1]: [email protected]: Failed with result 'exit-code'.
мая 29 18:05:11 Server systemd[1]: Failed to start WireGuard via wg-quick(8) for wg0.
[Interface]
Address = 10.8.0.1/24
ListenPort = 51820
#приватный ключ сервера берем из файла srv-priv.key
PrivateKey = kGILFzOqXzFwjjHQr/sYleVljwShwgM7/257CMmJ030=
#настраиваем маршрутизацию в примере название интерфейса, который смотрит наружу enp0s8, у вас он будет называться иначе
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o enp0s25 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o enp0s25 -j MASQUERADE
[Peer]
PublicKey = FG271hul8VWyt/KjVifupbeydVOAq0w1Y8F0QJSPryk=
AllowedIPs = 10.8.0.0/24
Endpoint = 192.168.0.10:51820
[Peer]
# client 1
#публичный ключ первого клиента берем из файла cl1-pub.key
PublicKey = PHoqZ10jkia9mzOdJsclWGiUIflAb1KnFAMfuuGM1go=
AllowedIPs = 10.8.0.2/32
[Peer]
# client 2
#публичный ключ второго клиента берем из файла cl2-pub.key
PublicKey = ymGJKl2bB3Jk4VXTHyF+fgPTnfupk9zoGZme7j/oolo=
AllowedIPs = 10.8.0.3/32
[Peer]
# client 3
#публичный ключ первого клиента берем из файла cl3-pub.key
PublicKey = Xun05kBuziWcoBOZ3N6ZmY3Z2XOXi7PEayXMsR7j6G4=
AllowedIPs = 10.8.0.4/32
Добавляем в файл sources.list строчку:
deb http://deb.debian.org/debian buster-backports main
затем обновляем базу пакетов:
apt update
затем устанавливаем из бэкпортов пакет wireguard:
apt -t buster-backports install wireguard
поскольку для текущего ядра в debian 10 модуль wireguard собирается посред-ством dkms, перезагружаемся и после проверяем, что модуль подгрузился:
lsmod|grep wireguard
далее генерируем ключи для сервера и двух(понадобится больше, делаем по аналогии) клиентов:
wg genkey | tee srv-priv.key | wg pubkey > srv-pub.key
wg genkey | tee cl1-priv.key | wg pubkey > cl1-pub.key
wg genkey | tee cl2-priv.key | wg pubkey > cl2-pub.key
В результате получаем 3 пары файлов, каждая пара -- приватный и публичный ключи. Сервер и два клиента, соответственно
создаем файл конфигурации /etc/wireguard/wg0.conf
Все ключи в примере требуется заменить на строчки из соответствующих
файлов ключей
[Interface]
Address = 10.0.0.1/24
ListenPort = 51820
#приватный ключ сервера берем из файла srv-priv.key
PrivateKey = qOMrIb3b8/zkzXaePhQnjn7Qfc5ilBf9k6gVXqQixHc=
#настраиваем маршрутизацию в примере название интерфейса, который смотрит наружу enp0s8, у вас он будет называться иначе
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o enp0s8 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o enp0s8 -j MASQUERADE
[Peer]
PublicKey = 0nk+Fg0hY3K83zODuyZHiHvBf4OkUcWtepBIix2bJgw=
AllowedIPs = 10.0.0.0/24
Endpoint = 192.168.47:51820
[Peer]
# client 1
#публичный ключ первого клиента берем из файла cl1-pub.key
PublicKey = +bkGjS2J+d4GscwZMic8Tn5URxoXsc31KuPSvLhyfW4=
AllowedIPs = 10.0.0.2/32
[Peer]
# client 2
#публичный ключ второго клиента берем из файла cl2-pub.key
PublicKey = uW8PKxsce+8bnBzg3rRI85vxOYOILOVOMt42gadJdx0=
AllowedIPs = 10.0.0.3/32
проверяем конфигурацию на отсутствие ошибок:
wg-quick up wg0
Если все в порядке, останавливаем командой
wg-quick down wg0
и запускаем уже средствами systemd:
systemctl start [email protected]
разрешаем форвардинг, раскомментировав net.ipv4.ip_forward = 1 в файле
/etc/sysctl.d/99-sysctl.conf
включаем сервис wg на постоянной основе:
systemctl start [email protected]
Конфигурация клиента
[Interface]
PrivateKey = приватный ключ клиента
Address = 10.0.0.2/24
[Peer]
PublicKey = публичный ключ сервера
AllowedIPs = 10.0.0.0/24
Endpoint = внешний_айпи_сервера:51820
Далее проверяем пинги с сервера на клиент и с клиента на сервер
Answer the question
In order to leave comments, you need to log in
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question