Introducción:
Cuando MYSQL está configurado con su servidor, otorga acceso a todas las Ips relacionadas con el servidor por defecto. Si desea proporcionar acceso solo a una IP en particular y bloquear el acceso del resto de las IP, debe acceder a las Iptables y configurarlas como se menciona a continuación:
Siga los pasos mencionados a continuación para acceder a las IPtables de su servidor:
(1) Accede a las IPtables:
(i) Abra la terminal
(ii) Acceder a su servidor a través de SSH.
(iii) Introduzca el siguiente comando:
vim /etc/sysconfig/iptables
Una vez que ingreses el comando, aparecerán las Iptables de tu servidor.
La tabla Ip se verá similar a la imagen que se muestra a continuación:
(2) Configurar las Iptables:
El siguiente paso es agregar la información para obtener el objetivo.
Edite las Iptables como se menciona a continuación:
(i) Pulse “i” para activar el modo de edición.
(ii) Agregue la siguiente información en las Iptables:
-A INPUT -p tcp 192.xxx.45.x --dport 3306 -j ACCEPT
-A INPUT -p tcp 192.xxx.45.x --dport 3306 -j DROP
Ingrese las IP como se indica en la imagen de arriba.
(iii) Verifique si ha ingresado el comando y las Ips correctamente y luego presione Esc .
(iv) Para guardar, ingrese :wq! y presione enter, lo que guardará los cambios realizados.
(3) Reinicie las Iptables:
Reinicie Iptables ingresando el siguiente comando en la terminal para que los cambios surtan efecto:
/etc/init.d/iptables restart
(4) Configuración de MYSQL:
Después de reiniciar Iptables, ahora se supone que debe otorgar acceso a través del portal MYSQL.
Introduzca el siguiente comando para acceder a MYSQL:
mysql -u root -p
Se le pedirá la contraseña de MYSQL.
Ingrese la contraseña e ingrese el comando mencionado a continuación:
mysql> use mysql
Luego ingrese el siguiente comando
mysql> GRANT ALL PRIVILEGES ON *.* TO 'USERNAME'@'1.2.3.4' IDENTIFIED BY 'PASSWORD' WITH GRANT OPTION;
Ingrese la IP a la que desea otorgar acceso a MYSQL en lugar de 1.2.3.4 y reemplace el nombre de usuario y la contraseña con su nombre de usuario y contraseña reales en el ejemplo anterior.
Pulse Intro.
Aparecerá un mensaje en la pantalla que indica que se ha cambiado una línea.
A continuación, acceda a los privilegios de vaciado introduciendo el siguiente comando:
mysql> Flush Privileges;
Finalmente, ejecute el comando de conexión de prueba.