CentOS MySQL轻松实现外网访问:安全与便捷一步到位

引言
在当今的信息时代,许多企业和个人都需要访问内网中的MySQL数据库。然而,出于安全考虑,直接从外网访问内网数据库并不简单。本文将介绍如何在CentOS系统上安全且便捷地实现外网访问MySQL数据库。
环境准备
在开始之前,请确保以下环境已经准备就绪:
一台运行CentOS操作系统的服务器作为MySQL数据库服务器。
一台可以访问MySQL服务器的计算机用于配置和测试。
MySQL数据库服务已经安装并运行在CentOS服务器上。
步骤一:配置MySQL用户权限
登录到MySQL数据库服务器。
使用root用户登录MySQL:
mysql -u root -p
创建一个新的MySQL用户,并授予外网访问权限:
CREATE USER ‘remote_user’@’%’ IDENTIFIED BY ‘strong_password’;
授予远程用户所需的数据库权限:
GRANT ALL PRIVILEGES ON *.* TO ‘remote_user’@’%’ WITH GRANT OPTION;
刷新权限:
FLUSH PRIVILEGES;
退出MySQL:
EXIT;
步骤二:设置MySQL服务器防火墙
登录到CentOS服务器。
确保防火墙服务正在运行:
systemctl status firewalld
允许MySQL端口(默认3306)通过防火墙:
firewall-cmd –permanent –add-port=3306/tcp
重载防火墙规则以生效:
firewall-cmd –reload
步骤三:配置MySQL服务器为安全模式
登录到MySQL数据库服务器。
修改MySQL配置文件(通常是
/etc/my.cnf
或
/etc/my.cnf.d/mysql.cnf
):
[mysqld]
bind-address = 0.0.0.0
保存并关闭配置文件。
步骤四:设置动态域名解析(可选)
如果MySQL服务器使用动态公网IP,建议使用动态域名解析服务。
注册并配置动态域名解析服务,如nat123。
获取解析后的域名,并在后续步骤中使用。
步骤五:测试外网访问
在可以访问MySQL服务器的计算机上,使用以下命令连接到MySQL数据库:
mysql -u remote_user -p -h your_dynamic_domain_or_ip
输入密码并尝试连接到MySQL数据库。
总结
通过以上步骤,您可以在CentOS服务器上安全且便捷地实现外网访问MySQL数据库。请注意,出于安全考虑,确保使用强密码,并定期更新和维护MySQL服务。