-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathrun
52 lines (49 loc) · 1.84 KB
/
run
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#!/bin/bash
echo "::: Container Started"
pivpnFilesDir="/usr/local/src/pivpn"
pivpnScriptDir="/opt/pivpn"
script(){
cp "/etc/pivpn/${VPN}/setupVars.conf" "/etc/${VPN}/setupVars.conf" 2> /dev/null || true
mkdir -p "/etc/pivpn/${VPN}" > /dev/null || true
ln -sf -T "/etc/${VPN}/setupVars.conf" "/etc/pivpn/${VPN}/setupVars.conf"
ln -sf -T "${pivpnFilesDir}/scripts/${VPN}/bash-completion" /etc/bash_completion.d/pivpn
ln -sf -T "${pivpnFilesDir}/scripts/${VPN}/pivpn.sh" /usr/local/bin/pivpn
ln -sf "${pivpnFilesDir}/scripts/" "${pivpnScriptDir}"
if [ -f "${SCRIPT_FILE:=/etc/${VPN}/script.sh}" ]; then
if "${SUDO_SCRIPT:=false}"; then
sudo bash ${SCRIPT_FILE:=/etc/${VPN}/script.sh}
else
bash ${SCRIPT_FILE:=/etc/${VPN}/script.sh}
fi
else
echo "${SCRIPT_FILE:=/etc/${VPN}/script.sh} does not exist."
fi
}
# sudo iptables -P FORWARD ACCEPT
# (wg) sudo iptables -t nat -C POSTROUTING -s "10.8.0.0/24" -o "eth0" -j MASQUERADE
if [ -f /etc/openvpn/server.conf ]
then
cron &
VPN=openvpn
script
ln -sf "/etc/openvpn/ovpns/" "/home/pivpn/"
pivpn -a -n ${CLIENT_NAME:=pivpn} nopass -d 1080 > /dev/null
groupadd openvpn 2> /dev/null
useradd -g openvpn openvpn 2> /dev/null
echo "::: Openvpn PiVPN Service Started"
sudo iptables --table nat -A POSTROUTING -o "${INTERFACE:=eth0}" -j MASQUERADE
openvpn --config /etc/openvpn/server.conf --log /etc/openvpn/openvpn.log
elif [ -f /etc/wireguard/wg0.conf ]
then
cron &
VPN=wireguard
script
ln -sf "/etc/wireguard/configs/" "/home/pivpn/"
pivpn -a -n ${CLIENT_NAME:=pivpn} > /dev/null
sudo iptables --table nat -A POSTROUTING -o "${INTERFACE:=eth0}" -j MASQUERADE
wg-quick up wg0 2>> /etc/wireguard/start.log
echo "::: Wireguard PiVPN Service Started"
while :;do sleep 3; done
else
sudo -E bash reconf
fi