Cómo iniciar el servicio de cliente OpenVPN en Ubuntu 15.04


21

Puedo iniciar OpenVPN y apuntarlo al archivo de configuración y todo funciona bien, como:

sudo openvpn /etc/openvpn/myvpn.conf

pero cuando intento iniciar el servicio con

sudo /etc/init.d/openvpn start

Todo lo que obtengo es la salida en syslog:

Jun 23 21:02:30 pc systemd[1]: Starting OpenVPN service...
Jun 23 21:02:30 pc systemd[1]: Started OpenVPN service.

Pero me está mintiendo, no hay ningún servicio openvpn ejecutándose:

gk@pc:/etc/openvpn$ ps -aux | grep openvpn
gk   15456  0.0  0.0  13688  2128 pts/0    S+   21:18   0:00 grep --color=auto openvpn

No se están ejecutando otros procesos openvpn. ¿Cómo puedo iniciar el servicio?

Noto con cierta diversión que dentro de /lib/systemd/system/openvpn.service hay:

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/bin/true
ExecReload=/bin/true
WorkingDirectory=/etc/openvpn

Estoy bastante seguro / bin / true ISNT mi aplicación de cliente openvpn. ¿Es por eso que el cliente openvpn no funciona desde la línea de comandos en Ubuntu 15.04?

Respuestas:


37

¿Es por eso que el cliente openvpn no funciona desde la línea de comandos en Ubuntu 15.04?

No. La razón es que no ha leído el comentario en la parte superior de ese archivo unitario, y está llamando rcdirectamente a un script del Sistema 5 . No llame a los rcscripts del Sistema 5 directamente, especialmente en un sistema donde rcno se usa el Sistema 5 , como Ubuntu versión 15.

Llamarlos indirectamente a través del servicecomando también es incorrecto en el caso de OpenVPN.

OpenVPN es un servicio con plantilla en systemd. Los servicios se nombran . Entonces deberías comenzar tu instancia conopenvpn@config.service/etc/openvpn/myvpn.conf

systemctl start openvpn@myvpn.service

Otras lecturas


Ok, gracias por tu respuesta. No me di cuenta de que Ubuntu está siguiendo la forma fedora de manejar los servicios ahora. Parece que hay muy poca documentación sobre cómo iniciar / detener servicios en 15.04. De hecho, por mucho que busco en Google, no puedo encontrar ninguno. ¿Es posible de alguna manera iniciarlo con algo como "systemctl start openvpn" y no pasar el nombre de la configuración?
user296916

systemd newbie here ... ¿Cuál es el archivo de la unidad de la que estás hablando? ¿Es freedesktop.org/software/systemd/man/systemd.unit.html ?
Jerry Seutter

Es al que el interrogador le da el nombre de ruta completo en la pregunta. Tiene comentarios explicativos al comienzo.
JdeBP

44
Solo para su información, pero no hay comentarios en ninguno de esos archivos en Ubuntu 15 para dar alguna indicación de que lo que estaba haciendo estaba mal. Realmente hay muy poca documentación que indique que systemctl es el método correcto para usar ahora, y de hecho hay una amplia documentación que sugiere que /etc/init.d/xxxx debería usar systemctl detrás de escena y debería ser transparente para los usuarios, para que los scripts existentes no se rompan.
user296916

2
Tienes un error tipográfico: systemctl start openvpn@myvpn.servicedebería ser systemctl start openvpn@myvpn.
Bryan Larsen
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.