Минималистичный подход к разработке WireGuard, также может распространяться на его использоване в силу отсутствия сложности конфигурации и гибкости.
Для начала установим сам WireGuard на сервер, в нашем случае Debian 10:
sudo apt update
sudo apt install wireguard-dkms
Сразу отмечу, что основная конфигурация WireGuard должна находится в /etc/wireguard
Для быстрой генерации клиентских сертификатов воспользуемся следующим скриптом: https://github.com/burghardt/easy-wg-quick
git clone https://github.com/burghardt/easy-wg-quick.git
Данный скрипт также позволяет создавать удобные QR-коды для быстрой передачи клиенту его сертификата.
Для генерации сертификата:
./easy-wg-quick tune_it_user
# где "tune_it_user" - имя пользователя
После чего получаем следующий вывод:

В /easy-wg-quick появится сертификат пользователя "wgclient_имяпользователя.conf", который можно успешно импортировать в клиент WireGuard на любой доступной платформе.
Добавляем в автозапуск и запускаем WireGuard службу:
cp wghub.conf /etc/wireguard/wghub.conf
systemctl enable wg-quick@wghub
systemctl start wg-quick@wghub
iptables правила для форвардинга WireGuard:
iptables -I INPUT 1 -i wg0 -j ACCEPT
iptables -I FORWARD 1 -i eth0 -o wg0 -j ACCEPT
iptables -I FORWARD 1 -i wg0 -o eth0 -j ACCEPT
iptables -I INPUT 1 -i eth0 -p udp --dport (WIREGUARD PORT) -j ACCEPT