lunes, 23 de mayo de 2016

¿Problema con Selinux y OpenVPN en Centos 7?

¡¡¡Puede que el problema sea el famoso Selinux!!!


Para muchos de los sysadmin uno de los dolores de cabeza recurrentes es el Selinux, ¿Porqué? Este módulo que se encarga de la seguridad del kernel en muchas de las ocasiones causa problemas para iniciar los servicios.

¿Pero, es culpa del Selinux?

Realmente no, lo más fácil obviamente es desabilitarlo y listo el servicio fuunciona, pero esto no quiere decir que no se pueda tenerlo habilitado y con todos los servicios necesarios corriendo.

Así que si están configurando el OpenVPN en Centos 7 y no inicia por nada, puede que una de las causas sea que no le han indicado al SELINUX que el servicio OpenVPN es seguro para correr en nuestro sistema.

Síntoma: Lo primero que noté es que al iniciar el servicio el log del sistema me mostraba el siguiente error:

openvpn[2824]: TCP/UDP: Socket bind failed on local address [undef]: Permission denied

Solución: Si han realizado una instalación minimalista del Centos va a ser necesario primero instalar el paquete: policycoreutils-python

# yum install policycoreutils-python

Ese paquete nos va a permitir añadir el puerto con el que queremos se comunique el OpenVPN con los clientes, el comando a ejecutar es:

# semanage port -a -t openvpn_port_t -p udp port

Hay que reemplazar el puerto que se está utlizando en la segunda palabra port, por ejemplo si está usando el puerto 1337 el comando es así:

# semanage port -a -t openvpn_port_t -p udp 1337

Conclusión: Básicamente el problema es que no se le había especificado al Selinux que se iba a usar un puerto y por ende este bloqueaba el servicio y no le permitía iniciar.

Espero que les sea de utilidad.

Cualquier comentario lo hacen por esta vía o me envían un tweet a: @Danny_Obando

No se olviden de pasar por mi página en facebook y darle like. www.facebook.com/deoyecuador

¡ Hasta mi próximo post !

No hay comentarios:

Publicar un comentario