39 lines
		
	
	
		
			809 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			809 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/bash
 | 
						|
 | 
						|
#
 | 
						|
# Run the OpenVPN server normally
 | 
						|
#
 | 
						|
 | 
						|
if [ "$DEBUG" == "1" ]; then
 | 
						|
  set -x
 | 
						|
fi
 | 
						|
 | 
						|
set -e
 | 
						|
 | 
						|
source "$OPENVPN/ovpn_env.sh"
 | 
						|
 | 
						|
mkdir -p /dev/net
 | 
						|
if [ ! -c /dev/net/tun ]; then
 | 
						|
    mknod /dev/net/tun c 10 200
 | 
						|
fi
 | 
						|
 | 
						|
if [ ! -d "$OPENVPN/ccd" ]; then
 | 
						|
    mkdir -p /etc/openvpn/ccd
 | 
						|
fi
 | 
						|
 | 
						|
# Setup NAT forwarding if requested
 | 
						|
if [ "$OVPN_DEFROUTE" != "0" ] || [ "$OVPN_NAT" == "1" ] ; then
 | 
						|
    iptables -t nat -C POSTROUTING -s $OVPN_SERVER -o eth0 -j MASQUERADE || {
 | 
						|
      iptables -t nat -A POSTROUTING -s $OVPN_SERVER -o eth0 -j MASQUERADE
 | 
						|
    }
 | 
						|
    for i in "${OVPN_ROUTES[@]}"; do
 | 
						|
        iptables -t nat -C POSTROUTING -s "$i" -o eth0 -j MASQUERADE || {
 | 
						|
          iptables -t nat -A POSTROUTING -s "$i" -o eth0 -j MASQUERADE
 | 
						|
        }
 | 
						|
    done
 | 
						|
fi
 | 
						|
 | 
						|
conf="$OPENVPN/openvpn.conf"
 | 
						|
 | 
						|
exec openvpn --config "$conf"
 |