Por una vez, me gustaría dejar SELinux ejecutándose en un servidor por la supuesta mayor seguridad.
Por lo general, desactivo SELinux para que todo funcione.
¿Cómo le digo a SELinux que permita conexiones MySQL?
Lo más que he encontrado en la documentación es esta línea de mysql.com:
Si está ejecutando bajo Linux y Linux con seguridad mejorada (SELinux) está habilitado, asegúrese de haber deshabilitado la protección SELinux para el proceso mysqld.
wow ... eso es realmente útil.
getsebool -a | grep mysql
6. Los pasos exactos que ha tomado para reproducir estoRespuestas:
Para comprobar SELinux
Para ver qué indicadores se establecen en los procesos httpd
Para permitir que Apache se conecte a una base de datos remota a través de SELinux
La opción Usar -P hace que el cambio sea permanente. Sin esta opción, el booleano se restablecería a 0 al reiniciar.
fuente
setsebool -P httpd_can_network_connect 1
También puede ser necesario. Esto se sugirió en mis registros al ejecutarausearch -m avc -ts today | audit2why
como se sugiere en un comentario de vnix27.¿Le da un error? ¿Qué sabor de linux estás usando? El contexto de seguridad es un buen lugar para comenzar si recibe un error. ls -Z le dará contexto ... Pero su pregunta es muy vaga.
fuente
Aparentemente, configurar selinux no es trivial. Es posible que desee comenzar aquí .
pone a selinux en modo permisivo, donde permite cualquier cosa que no sea lo que está permitiendo. Un reinicio o
vuelve a bloquear lo que la política no permita.
Consulte estos documentos de políticas de selinux para mySQL en Fedora .
fuente
¿Estás seguro de que es selinux? Selinux debería permitir las conexiones normales desde el exterior. Entonces también podría ser el firewall. Si tiene servicios locales que intentan conectarse a mysqld, eso es algo diferente: http://docs.fedoraproject.org/en-US/Fedora/13/html/Managing_Confined_Services/sect-Managing_Confined_Services-MySQL-Booleans.html
fuente
El
ausearch
comando puede ayudar a encontrar el registro de errores.fuente
También puede crear una política local:
"Puede generar un módulo de política local para permitir este acceso. Permita este acceso por ahora ejecutando:"
grep httpd /var/log/audit/audit.log | audit2allow -M mypol
semodule -i mypol.pp
o habilitar globalmente para la sesión real:
o permanente:
fuente