added icon and sudoers settings for user.

This commit is contained in:
hhofmann 2023-04-04 15:19:33 +02:00
parent 2b73ee48eb
commit 62b4e292f8

View File

@ -7,6 +7,35 @@ sudo apt-get upgrade -y
# Installiere Wireguard # Installiere Wireguard
sudo apt-get install wireguard-tools -y sudo apt-get install wireguard-tools -y
clear clear
wireguard_off="#!/bin/bash
sudo wg-quick down wg0
sudo systemctl stop wg-quick@wg0.service"
wireguard_on="#!/bin/bash
sudo wg-quick up wg0
sudo systemctl start wg-quick@wg0.service"
wireguard_icon="https://static-00.iconduck.com/assets.00/wireguard-icon-256x256-bdlmygje.png"
wireguard_app_start="[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Terminal=true
Exec=/bin/bash /media/wireguard/wireguard_an.sh
Name=Wireguard AN
Icon=/media/wireguard/wireguard.png"
wireguard_app_stop="[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Terminal=true
Exec=/bin/bash /media/wireguard/wireguard_aus.sh
Name=Wireguard AUS
Icon=/media/wireguard/wireguard.png"
echo "Gebe hier nun die Wireguard Konfiguration ein: (Beende eingabe mit strg+d)" echo "Gebe hier nun die Wireguard Konfiguration ein: (Beende eingabe mit strg+d)"
# Lese die Config Zeile bei Zeile # Lese die Config Zeile bei Zeile
config="" config=""
@ -24,6 +53,42 @@ sudo systemctl enable wg-quick@wg0.service
sudo systemctl daemon-reload sudo systemctl daemon-reload
sudo systemctl start wg-quick@wg0 sudo systemctl start wg-quick@wg0
if ! [ -d /media/wireguard ]; then
sudo mkdir /media/wireguard
sudo chown nobody:nogroup /media/wireguard
sudo chmod a+w /media/wireguard
fi
wget "$wireguard_icon" -O /media/wireguard/wireguard.png
userlist=$(getent passwd | awk -F: '$3>=1000 && $1!="nobody" && $1!="pxadmin" {print $1}')
for user in $userlist; do
# Allow wg-quick usage
if sudo grep -q "$user ALL = (ALL) NOPASSWD:/usr/bin/wg-quick" /etc/sudoers; then
echo "$user darf bereits wg-quick ausführen"
else
sudo echo "$user ALL = (ALL) NOPASSWD:/usr/bin/wg-quick" | sudo tee -a /etc/sudoers
fi
# Allow stopping wg service
if sudo grep -q "$user ALL = (ALL) NOPASSWD:/bin/systemctl stop wg-quick@wg0.service" /etc/sudoers; then
echo "$user darf bereits wg-quick ausführen"
else
sudo echo "$user ALL = (ALL) NOPASSWD:/bin/systemctl stop wg-quick@wg0.service" | sudo tee -a /etc/sudoers
fi
# Allow starting wg service
if sudo grep -q "$user ALL = (ALL) NOPASSWD:/bin/systemctl start wg-quick@wg0.service" /etc/sudoers; then
echo "$user darf bereits wg-quick ausführen"
else
sudo echo "$user ALL = (ALL) NOPASSWD:/bin/systemctl start wg-quick@wg0.service" | sudo tee -a /etc/sudoers
fi
echo "$wireguard_app_start" >~/.local/share/applications/wireguard_an.desktop
echo "$wireguard_app_stop" >~/.local/share/applications/wireguard_aus.desktop
done
echo "$wireguard_on" >/media/wireguard/wireguard_an.sh
echo "$wireguard_off" >/media/wireguard/wireguard_aus.sh
if ping -c2 10.200.100.1 >/dev/null; then if ping -c2 10.200.100.1 >/dev/null; then
echo "Wireguard wurde erfolgreich eingerichtet" echo "Wireguard wurde erfolgreich eingerichtet"
else else