Updated config script from #644

This commit is contained in:
Kristian Haugene
2018-12-16 16:34:56 +01:00
parent 04a7f132d6
commit 07005fe442

View File

@@ -1,27 +1,60 @@
#!/bin/bash
set -e
TIME_FORMAT=`date "+%Y-%m-%d %H:%M:%S"`
log() {
printf "${TIME_FORMAT} %b\n" "$*";
}
fatal_error() {
printf "${TIME_FORMAT} \e[41mERROR:\033[0m %b\n" "$*" >&2;
exit 1
}
# check for utils
script_needs() {
command -v $1 >/dev/null 2>&1 || fatal_error "This script requires $1 but it's not installed. Please install it and run again."
}
script_init() {
log "Checking curl installation"
script_needs curl
log "Checking dos2unix installation"
script_needs dos2unix
log "Checking unzip installation"
script_needs unzip
}
script_init
# If the script is called from elsewhere
cd "${0%/*}"
# Delete everything (not this script though)
log "Removing existing configs"
find . ! -name '*.sh' -delete
# Get updated configuration zip
curl -kL https://downloads.nordcdn.com/configs/archives/servers/ovpn.zip -o openvpn.zip \
&& unzip -j openvpn.zip && rm openvpn.zip
log "Downloading latest configs"
curl -skL https://downloads.nordcdn.com/configs/archives/servers/ovpn.zip -o openvpn.zip \
&& unzip -j openvpn.zip $1 >/dev/null 2>&1 && rm openvpn.zip
# Ensure linux line endings
#dos2unix *
log "Checking line endings"
dos2unix * $1 >/dev/null 2>&1
# Update configs with correct options
log "Updating configs for docker-transmission-openvpn"
sed -i 's=auth-user-pass=auth-user-pass /config/openvpn-credentials.txt=g' *.ovpn
sed -i 's/ping 15/inactive 3600\
ping 10/g' *.ovpn
sed -i 's/ping-restart 0/ping-exit 60/g' *.ovpn
sed -i 's/ping-timer-rem//g' *.ovpn
# Create symlink for default.ovpn
ln -s nl15.nordvpn.com.tcp.ovpn default.ovpn
# Pick a random file config for default.ovpn
random_config=$(ls uk*udp* | sort -R | head -n1)
log "Setting default.ovpn to $random_config"
ln -s $random_config default.ovpn