wireguard скрипт создания нового пользователя

#!/bin/env bash
#для генерации qr кода необходим установленный apt install qrencode
#Первым параметром задаем имя лучше латиницей в одном регистре без лишних ненужных символов
#вторым нужный ip
USER=$1
IP=$2
SERV_IP=10.10.10.10
SERV_PORT=51820
SERVER_PUBKEY=$(<"/etc/wireguard/server_publickey")
echo "new user $USER"

wg genkey > "/etc/wireguard/"$USER"_privatekey"
PRIV_KEY=$(<"/etc/wireguard/"$USER"_privatekey")
#echo $PRIV_KEY
wg pubkey < "/etc/wireguard/"$USER"_privatekey">"/etc/wireguard/"$USER"_publickey"
PUB_KEY=$(<"/etc/wireguard/"$USER"_publickey")
#echo $PUB_KEY
echo "#$USER" >> /etc/wireguard/wg0.conf
echo "[Peer]" >> /etc/wireguard/wg0.conf
echo "PublicKey = $PUB_KEY" >> /etc/wireguard/wg0.conf
echo "AllowedIPs = $IP" >> /etc/wireguard/wg0.conf

#gen_user_conf_file
echo "[Interface]" >> /etc/wireguard/$USER.conf
echo "PrivateKey = $PRIV_KEY" >> /etc/wireguard/$USER.conf
echo "Address = $IP" >> /etc/wireguard/$USER.conf
echo "DNS = 8.8.8.8" >> /etc/wireguard/$USER.conf

echo "[Peer]" >> /etc/wireguard/$USER.conf
echo "PublicKey = $SERVER_PUBKEY" >> /etc/wireguard/$USER.conf
echo "AllowedIPs = 0.0.0.0/0" >> /etc/wireguard/$USER.conf
echo "Endpoint = $SERV_IP:$SERV_PORT" >> /etc/wireguard/$USER.conf
echo "PersistentKeepalive = 20" >> /etc/wireguard/$USER.conf

echo "#####wg.conf last 5 str"
tail -n 5 /etc/wireguard/wg0.conf

echo "#####$USER.conf"
cat /etc/wireguard/$USER.conf
echo "#####"
systemctl restart wg-quick@wg0
wg show
qrencode -t ansiutf8 < /etc/wireguard/$USER.conf
Запись опубликована в рубрике Uncategorized. Добавьте в закладки постоянную ссылку.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.