远程连接centos7的mysql5.7+ 更改iptables方法
本文仅供参考
1.首先开启mysql权限
mysql -u root -p
use mysql
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mysql' WITH GRANT OPTION;
flush privileges;
第一句中"%"表示任何主机都可以远程登录到该服务器上访问。如果要限制只有某台机器可以访问,将其换成相应的IP即可,如:
GRANT ALL PRIVILEGES ON *.* TO root@"172.168.193.25" IDENTIFIED BY "root";
select * from user where user='root';
查看是否有%这条记录
2.开启3306端口及常用的其它端口
查看是否有这个文件/etc/sysconfig/iptables,如果没有
iptables -P OUTPUT ACCEPT
service iptables save 进行保存,默认就保存到了/etc/sysconfig目录下的iptables文件中
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT #允许3306数据库端口通过防火墙
service iptables save
cat /etc/sysconfig/iptables有3306这条信息
service iptables restart就ok咯
注:
添加允许3306端口:
#-A RH-Firewall-1-INPUT -m state -state NEW -m tcp -p tcp -d port 3306 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT (注意:添加在-A INPUT -j REJECT --reject-with icmp-host-prohibited之前,否则可能不起作用)
其它常用端口:
iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT #允许80web端口通过防火墙
iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
iptables -A INPUT -p tcp --dport 110 -j ACCEPT #email
iptables -A INPUT -p tcp --dport 25-j ACCEPT #email
iptables -A INPUT -p tcp --dport 20-j ACCEPT #ftp
iptables -A INPUT -p tcp --dport 21-j ACCEPT #ftp
iptables -A INPUT -p icmp -j ACCEPT #ping
iptables -A INPUT -p udp --dport 53 -j ACCEPT #DNS
3.查看防火墙是否开启:
active表示开启,inactive表示关闭
firewall-cmd --state
norunning
4.关于防火墙的命令
重启后永久性生效:
开启:chkconfig iptables on
关闭:chkconfig iptables off
即时生效,重启后失效:
开启:service iptables start
关闭:
service iptables stop
重启:service iptables restart
保存配置:service iptables save
或者/etc/rc.d/init.d/iptables save
#设置防火墙开机启动
systemctl enable iptables.service
禁止防火墙在系统启动时启动
/sbin/chkconfig --level 2345 iptables off
5.删除iptables规则
查看当前规则
iptables -L -n
iptables -L -n --line-number
iptables -D INPUT 3
新增:
vim ~/firewalld_iptables_rules
查看路由规则
iptables -S
详细请看(https://www.digitalocean.com/community/tutorials/how-to-migrate-from-firewalld-to-iptables-on-centos-7)