¿Cómo hacer que el servidor MySQL se vincule al host local solo en Ubuntu 20.04 LTS?

¿Cómo hacer que el servidor MySQL se vincule al host local solo en Ubuntu 20.04 LTS?

Usando la versión administrada del paquete apt del servidor MySQL en Ubuntu 20.04.3 LTS con una instalación MySQL predeterminada.

netstatmuestra el servidor MySQL vinculado a la interfaz pública IPv6:

tcp6       0      0 :::33060                :::*                    LISTEN      2485/mysqld
tcp6       0      0 :::3306                 :::*                    LISTEN      2485/mysqld

Sin embargo, /etc/mysql/mysql.conf.d/mysqld.cnfmuestra (líneas comentadas eliminadas por brevedad):

[mysqld]
user            = mysql

# Instead of skip-networking the default is now to listen only on
# localhost which is more compatible and is not less secure.
bind-address            = 127.0.0.1
mysqlx-bind-address     = 127.0.0.1

Tengo iptables y reglas de firewall ascendentes que niegan el acceso externo a puertos no aprobados como MySQL, pero preferiría que MySQL esté vinculado a la interfaz correcta en el sistema según el archivo de configuración.

En otro sistema que se actualizó este año a 20.04.3, los archivos de configuración son prácticamente idénticos y netstatmuestran:

tcp        0      0 127.0.0.1:33060         0.0.0.0:*               LISTEN      1349/mysqld
tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      1349/mysqld

Respuesta1

Lo resolvió cambiando los permisos /etc/mysql.cnfa 0644. Supongo que al servidor MySQL no le gusta si ese archivo está marcado como escribible/ejecutable en todo el mundo. Estaba marcado como 0777 y definitivamente no hice eso. Se instaló en el sistema de esa manera desde el mysql-serverpaquete apt.

Esto probablemente significa que actualmente (a diciembre de 2021) hay un montón de sistemas Ubuntu Server 20.04.3 LTS que instalan MySQL a través de apt y accidentalmente abren el puerto 3306 al mundo. Dado que no existe una contraseña de root de forma predeterminada, también significa que MySQL puede verse rápidamente comprometido desde un sistema remoto.

información relacionada