场景:在本地虚拟机上使用ftp软件需要进行相应的端口设置,不可避免要访问Cnetos的防火墙,默认firewall操作不方便,所以需要进行相应的替换。
1 配置防火墙,开启80端口、3306端口
1.1 配置iptables
CentOS 7 默认使用firewalld来管理iptables规则,由于防火墙规则变动的情况很少,动不动态变得无所谓了。但是习惯是魔鬼,跟之前不一样,总是感觉不太习惯。
systemctl disable firewalld yum remove firewalld -y
使用下面的办法来恢复原来的习惯,同时解决iptables开机启动的问题。
yum install iptables-services -y systemctl enable iptables
这样的话,iptables服务会开机启动,自动从/etc/sysconfig/iptables 文件导入规则。
为了让/etc/init.d/iptables save 这条命令生效,需要这么做
cp /usr/libexec/iptables/iptables.init /etc/init.d/iptables /etc/init.d/iptables save
而chkconfig iptables 命令会自动重定向到sytemctl enable iptables (并不清楚这这条命令的相关作用)
1.2 防火墙端口配置
编辑防火墙配置文件,添加80和3306两个端口
vi /etc/sysconfig/iptables #编辑防火墙配置文件 # Firewall configuration written by system-config-firewall Linux学习,http:// linux.it.NET.cn # Manual customization of this file is not recommended. *filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0] Linux学习,http:// linux.it.Net.cn -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT -A INPUT -p icmp -j ACCEPT -A INPUT -i lo -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -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 -A FORWARD -j REJECT --reject-with icmp-host-prohibited IT网,http://www.it.net.cn COMMIT IT网,http://www.it.net.cn :wq! #保存退出
备注:这里使用80和8080端口为例。***部分一般添加到“-A INPUT -p tcp -m state --state NEW -m tcp--dport 22 -j ACCEPT”行的上面或者下面,切记不要添加到最后一行,否则防火墙重启后不生效。
systemctl restart iptables.service #最后重启防火墙使配置生效 systemctl enable iptables.service #设置防火墙开机启动
2 关闭SELINUX
SElinux是Linux安全加强工具。关闭用setenforce 0或者修改文件vim /etc/sysconfig/selinux 把SELINUX=enforcing 改为 SELINUX=disabled.
linux防火墙用chkconfig iptables on 开机启动
service iptables start 打开防火墙规则。
vi /etc/selinux/config #SELINUX=enforcing #注释掉 #SELINUXTYPE=targeted #注释掉 IT网,http://www.it.net.cn SELINUX=disabled #增加 Linux学习,http:// linux.it.net.cn :wq! #保存退出 setenforce 0 #使配置立即生效
3 CentOS 配置防火墙操作实例(启、停、开、闭端口)
注:防火墙的基本操作命令: 查询防火墙状态: [[email protected] ~]# service iptables status 停止防火墙: [[email protected] ~]# service iptables stop 启动防火墙: [[email protected] ~]# service iptables start 重启防火墙: [[email protected] ~]# service iptables restart 永久关闭防火墙: [[email protected] ~]# chkconfig iptables off 永久关闭后启用: [[email protected] ~]# chkconfig iptables on
1、查看防火墙状态
[[email protected] ~]# service iptables status
2、依葫芦画瓢,我们添加8080端口和9990端口
3、保存/etc/sysconfig/iptables文件,并在终端执行
[[email protected] ~]# service iptables restart <回车>
4、从新查看防火墙状态
[[email protected] ~]# service iptables status<回车>
5、时候,服务器的8080和9990端口就可以对外提供服务了。
6、其他端口的开放模式就是类似如此开放模式。