blob: b4da8b111c970b39050d35c7b9205829d7bf1653 (
plain)
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
|
#!/bin/sh
ROOT="/home/neodarz/vpn_auto"
CLIENT_CONF_FILE="$ROOT/client_config_archlinux.sh.sample"
function genUrandom
{
DATA="-"
while [[ $DATA =~ .*-.* ]]; do
DATA=$(< /dev/urandom tr -dc A-Z-a-z-0-9 | head -c${1:-17};echo;)
done
echo $DATA
}
VPN_PSK_KEY=$(genUrandom)
VPN_USER=$(genUrandom)
VPN_PASS=$(genUrandom)
rm $ROOT/server_install.sh
cp $ROOT/server_install.sh.sample $ROOT/server_install.sh
sed -i "s/vpn_psk_key/$VPN_PSK_KEY/g" $ROOT/server_install.sh
sed -i "s/vpn_user/$VPN_USER/g" $ROOT/server_install.sh
sed -i "s/vpn_pass/$VPN_PASS/g" $ROOT/server_install.sh
echo "Creating a new server..."
SERVER_ID=$(echo $(scw create --commercial-type=VC1S 5fc9990a-d274-49b8-afac-42af22b42a71) | cut -d'-' -f1)
echo "Starting the server $(scw start $SERVER_ID)..."
cat $ROOT/server_install.sh | scw exec --wait $SERVER_ID "cat > /root/server_install.sh && chmod +x /root/server_install.sh && sh /root/server_install.sh"
scw ps -a > /dev/null
SERVER_IP=$(scw inspect $SERVER_ID | jq '.[0].public_ip.address' | cut -d'"' -f2)
rm $ROOT/client_config.sh
cp $CLIENT_CONF_FILE $ROOT/client_config.sh
sed -i "s/vpn_ip/$SERVER_IP/g" $ROOT/client_config.sh
sed -i "s/vpn_psk_key/$VPN_PSK_KEY/g" $ROOT/client_config.sh
sed -i "s/vpn_user/$VPN_USER/g" $ROOT/client_config.sh
sed -i "s/vpn_pass/$VPN_PASS/g" $ROOT/client_config.sh
sudo sh $ROOT/client_config.sh
rm $ROOT/server_install.sh
rm $ROOT/client_config.sh
|