Hi,
I have installed OpenVPN 2.4.0 on my Raspberry Pi 2 running a clean install of Raspbian Stretch Lite OS (minimal image based on Debian Stretch; Version: November 2017, Release date:2017-11-29, Kernel version:4.9). The problem is that OpenVPN will not start on boot. If I manually enter either
sudo service openvpn start or
sudo systemctl start openvpn@server.service then OpenVPN starts up right away (I can see that in ps aux, as well as systemctl status …) and I am be able to connect to my server from my client.
Can someone please help me by explaining why is this happening and what is the proper way to fix this? As you can see below, it seems that right after boot openvpn.service starts properly, but
openvpn@server.service fails to start (I captured the info right after boot).
PS I must say that I was running Raspbian Jessie Lite beforehand and then everything worked perfectly - OpenVPN started properly on boot ever since I installed it (I never had to do any manual intervention; could be that it was not OpenVPN 2.4.0, but an older version.). Was something changed in Stretch?
Thanks,
Reinis
Captured right after boot:
pi@raspberrypi:~ $ ps aux | grep openvpn
pi 604 0.0 0.0 4344 544 pts/0 S+ 13:56 0:00 grep --color=auto openvpn
pi@raspberrypi:~ $ sudo systemctl status openvpn.service
● openvpn.service - OpenVPN service
Loaded: loaded (/lib/systemd/system/openvpn.service; enabled; vendor preset: enabled)
Active: active (exited) since Mon 2018-02-12 13:54:37 EET; 31s ago
Process: 477 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Main PID: 477 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/openvpn.service
Feb 12 13:54:37 raspberrypi systemd[1]: Starting OpenVPN service...
Feb 12 13:54:37 raspberrypi systemd[1]: Started OpenVPN service.
pi@raspberrypi:~ $ sudo systemctl status openvpn@server.service
● openvpn@server.service - OpenVPN connection to server
Loaded: loaded (/lib/systemd/system/openvpn@.service; disabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Mon 2018-02-12 13:54:27 EET; 1min 40s ago
Docs: man:openvpn(8)
https://community.openvpn.net/openvpn/wiki/Openvpn23ManPage
https://community.openvpn.net/openvpn/wiki/HOWTO
Process: 306 ExecStart=/usr/sbin/openvpn --daemon ovpn-server --status /run/openvpn/server.status 10 --cd /etc/openvpn --config /etc/openvpn/server.conf --writepid /run/openvpn/server.pid (code=exited,
Main PID: 318 (code=exited, status=1/FAILURE)
Feb 12 13:54:26 raspberrypi systemd[1]: Starting OpenVPN connection to server...
Feb 12 13:54:26 raspberrypi systemd[1]: Started OpenVPN connection to server.
Feb 12 13:54:27 raspberrypi systemd[1]: openvpn@server.service: Main process exited, code=exited, status=1/FAILURE
Feb 12 13:54:27 raspberrypi systemd[1]: openvpn@server.service: Unit entered failed state.
Feb 12 13:54:27 raspberrypi systemd[1]: openvpn@server.service: Failed with result 'exit-code'.
local 10.99.99.120
dev tun
proto udp
port 1194
ca /etc/openvpn/easy-rsa/keys/ca.crt
cert /etc/openvpn/easy-rsa/keys/rpiserver.crt
key /etc/openvpn/easy-rsa/keys/rpiserver.key
dh /etc/openvpn/easy-rsa/keys/dh2048.pem
# openvpn server and remote endpoints
server 10.8.0.0 255.255.255.0
ifconfig 10.8.0.1 10.8.0.2
# Add route to Client routing table for the OpenVPN Server
push "route 10.8.0.1 255.255.255.255"
# Add route to Client routing table for the OpenVPN Subnet
push "route 10.8.0.0 255.255.255.0"
# your local subnet
push "route 10.99.99.0 255.255.255.0"
# Set primary domain name server address to the SOHO Router
# If your router does not do DNS, you can use Google DNS 8.8.8.8
push "dhcp-option DNS 8.8.8.8"
push "redirect-gateway def1"
client-to-client
duplicate-cn
keepalive 10 120
tls-auth /etc/openvpn/easy-rsa/keys/ta.key 0
cipher AES-128-CBC
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status /var/log/openvpn-status.log 20
log /var/log/openvpn.log
verb 4