查看 centos 版本
cat /etc/redhat-release
Centos 6 开启/关闭端口
命令的方式
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 端口号 -j DROP # 写入禁用规则
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 端口号 -j ACCEPT # 写入启用规则
/etc/init.d/iptables save # 保存写入的规则
service iptables restart # 重启防火墙
该方法实则为将命令禁用命令写入文件
然后通过 save 保存文件
写入iptables文件的方式
关闭端口
vim /etc/sysconfig/iptables # 打开防火墙规则文件, 进行编辑
service iptables restart # 重启防火墙
该方法则为直接操作文件
既可以直接删除开放端口的命令
也可以添加禁用端口的命令
个人比较喜欢方法二, 直接编辑规则文件, 防止同时存在禁用规则跟启用规则
Centos 7 开启/关闭端口
查看firewall服务状态
systemctl status firewalld
1
查看firewall的状态
firewall-cmd --state
1
开启、重启、关闭、firewalld.service服务
# 开启
service firewalld start
# 重启
service firewalld restart
# 关闭
service firewalld stop
# 允许指定IP访问本机8080端口
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.1" port protocol="tcp" port="8080" accept'
# 允许指定IP段访问本机8080-8090端口
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="8080-8090" accept'
# 禁止指定IP访问本机8080端口
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.1" port protocol="tcp" port="8080" reject'
# 移除以上添加操作,将--add-rich-rule 替换成--remove-rich-rule
以上命令执行后,都会写入到/etc/firewalld/zones/public.xml。也可以直接修改该文件。
注意:任何修改操作,配置完成后,需要重新装载firewall。或重新启动firewalld服务。
firewall-cmd --reload
service firewalld restart
查看防火墙规则
firewall-cmd --list-all
1
查询、开放、关闭端口
# 查询端口是否开放
firewall-cmd --query-port=8080/tcp
# 开放80端口
firewall-cmd --permanent --add-port=80/tcp
# 移除端口
firewall-cmd --permanent --remove-port=8080/tcp
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload
# 参数解释
1、firwall-cmd:是Linux提供的操作firewall的一个工具;
2、--permanent:表示设置为持久;
3、--add-port:标识添加的端口;
关于防火墙拦截FTP的问题
防火墙不需要放行 21 端口, 关键控制在新增 ftp服务
查看防火墙服务
firewall-cmd --list-services
1
没有ftp, 就增加ftp服务
# 新增服务
firewall-cmd --permanent --add-service=ftp
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload
参考:https://www.cnblogs.com/Samuel-Leung/p/16390158.html
09-17
1589
05-19
2914