Last active
August 29, 2015 14:04
-
-
Save bendavis78/c3e6dc01de3261b441ff to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
#--| OpenVPN |---------------------------------------------------- | |
USERNAME="$(nvram get vyprvpn_username)" | |
PASSWORD="$(nvram get vyprvpn_password)" | |
HOST="$(nvram get vyprvpn_host)" | |
PROTOCOL="udp" | |
#### Do not make modifications below this line #### | |
CA_CRT='-----BEGIN CERTIFICATE----- | |
MIIEpDCCA4ygAwIBAgIJANd2Uwt7SabsMA0GCSqGSIb3DQEBBQUAMIGSMQswCQYD | |
VQQGEwJLWTEUMBIGA1UECBMLR3JhbmRDYXltYW4xEzARBgNVBAcTCkdlb3JnZVRv | |
d24xFzAVBgNVBAoTDkdvbGRlbkZyb2ctSW5jMRowGAYDVQQDExFHb2xkZW5Gcm9n | |
LUluYyBDQTEjMCEGCSqGSIb3DQEJARYUYWRtaW5AZ29sZGVuZnJvZy5jb20wHhcN | |
MTAwNDA5MjExOTIxWhcNMjAwNDA2MjExOTIxWjCBkjELMAkGA1UEBhMCS1kxFDAS | |
BgNVBAgTC0dyYW5kQ2F5bWFuMRMwEQYDVQQHEwpHZW9yZ2VUb3duMRcwFQYDVQQK | |
Ew5Hb2xkZW5Gcm9nLUluYzEaMBgGA1UEAxMRR29sZGVuRnJvZy1JbmMgQ0ExIzAh | |
BgkqhkiG9w0BCQEWFGFkbWluQGdvbGRlbmZyb2cuY29tMIIBIjANBgkqhkiG9w0B | |
AQEFAAOCAQ8AMIIBCgKCAQEA37JesfCwOj69el0AmqwXyiUJ2Bm+q0+eR9hYZEk7 | |
pVoj5dF9RrKirZyCM/9zEvON5z4pZMYjhpzrq6eiLu3j1xV6lX73Hg0dcflweM5i | |
qxFAHCwEFIiMpPwOgLV399sfHCuda11boIPE4SRooxUPEju908AGg/i+egntvvR2 | |
d7pnZl2SCJ1sxlbeAAkYjX6EXmIBFyJdmry1y05BtpdTgPmTlJ0cMj7DlU+2gehP | |
ss/q6YYRAhrKtlZwxeunc+RD04ieah+boYU0CBZinK2ERRuAjx3hbCE4b0S6eizr | |
QmSuGFNu6Ghx+E1xasyl1Tz/fHgHl3P93Jf0tFov7uuygQIDAQABo4H6MIH3MB0G | |
A1UdDgQWBBTh9HiMh5RnRVIt/ktXddiGkDkXBTCBxwYDVR0jBIG/MIG8gBTh9HiM | |
h5RnRVIt/ktXddiGkDkXBaGBmKSBlTCBkjELMAkGA1UEBhMCS1kxFDASBgNVBAgT | |
C0dyYW5kQ2F5bWFuMRMwEQYDVQQHEwpHZW9yZ2VUb3duMRcwFQYDVQQKEw5Hb2xk | |
ZW5Gcm9nLUluYzEaMBgGA1UEAxMRR29sZGVuRnJvZy1JbmMgQ0ExIzAhBgkqhkiG | |
9w0BCQEWFGFkbWluQGdvbGRlbmZyb2cuY29tggkA13ZTC3tJpuwwDAYDVR0TBAUw | |
AwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAwihrN0QNE19RRvGywBvsYDmzmM5G8ta5 | |
8yB+02Mzbm0KuVxnPJaoVy4L4WocAnqLeKfmpYWUid1MPwDPtwtQ00U7QmRBRNLU | |
hS6Bth1wXtuDvkRoHgymSvg1+wonJNpv/VquNgwt7XbC9oOjVEd9lbUd+ttxzboI | |
8P1ci6+I861PylA0DOv9j5bbn1oE0hP8wDv3bTklEa612zzEVnnfgw+ErVnkrnk8 | |
8fTiv6NZtHgUOllMq7ymlV7ut+BPp20rjBdOCNn2Q7dNCKIkI45qkwHtXjzFXIxz | |
Gq3tLVeC54g7XZIc7X0S9avgAE7h9SuRYmsSzvLTtiP1obMCHB5ebQ== | |
-----END CERTIFICATE-----' | |
OPVPNENABLE=`nvram get openvpncl_enable | awk '$1 == "0" {print $1}'` | |
if [ "$OPVPNENABLE" != 0 ]; then | |
nvram set openvpncl_enable=0 | |
nvram commit | |
fi | |
sleep 10 | |
mkdir /tmp/vpn; cd /tmp/vpn | |
echo -e "$USERNAME\n$PASSWORD" > userpass.conf | |
echo "$CA_CRT" > ca.crt | |
echo "#!/bin/sh | |
iptables -t nat -I POSTROUTING -o tun0 -j MASQUERADE" > route-up.sh | |
echo "#!/bin/sh | |
iptables -t nat -D POSTROUTING -o tun0 -j MASQUERADE" > route-down.sh | |
chmod 644 ca.crt; chmod 600 userpass.conf; chmod 700 route-up.sh route-down.sh | |
sleep 10 | |
echo "client | |
auth-user-pass /tmp/vpn/userpass.conf | |
management 127.0.0.1 5001 | |
management-log-cache 50 | |
dev tun0 | |
proto $PROTOCOL | |
comp-lzo adaptive | |
fast-io | |
script-security 2 | |
mtu-disc yes | |
verb 4 | |
mute 5 | |
cipher bf-cbc | |
auth sha1 | |
tun-mtu 1500 | |
resolv-retry infinite | |
nobind | |
persist-key | |
persist-tun | |
tls-client | |
remote-cert-tls server | |
log-append vpn.log | |
ca ca.crt | |
status-version 3 | |
status status | |
daemon | |
remote $HOST 1194" > vpn.conf | |
ln -s /tmp/vpn/vpn.log /tmp/vpn.log | |
ln -s /tmp/vpn/status /tmp/status | |
(killall openvpn; openvpn --config /tmp/vpn/vpn.conf --route-up /tmp/vpn/route-up.sh --down /tmp/vpn/route-down.sh) & | |
exit 0 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment