CentOS 6.x
防火墙配置文件地址
vi /etc/sysconfig/iptables
管理命令
重启防火墙
# service iptables restart
查看开放端口
# /etc/init.d/iptables status
关闭防火墙
# /etc/init.d/iptables stop
配置防火墙允许指定ip访问端口
关闭所有80端口
# iptables -I INPUT -p tcp --dport 80 -j DROP
开启ip段192.168.1.0/24端的80口
# iptables -I INPUT -s 192.168.1.0/24 -p tcp --dport 80 -j ACCEPT
开启ip段211.123.16.123/24端ip段的80口
iptables -I INPUT -s 211.123.16.123/24 -p tcp --dport 80 -j ACCEPT
开放一个IP的一些端口,其它都封闭
iptables -A Filter -p tcp --dport 80 -s 192.168.100.200 -d www.pconline.com.cn -j ACCEPT
iptables -A Filter -p tcp --dport 25 -s 192.168.100.200 -j ACCEPT
iptables -A Filter -p tcp --dport 109 -s 192.168.100.200 -j ACCEPT
iptables -A Filter -p tcp --dport 110 -s 192.168.100.200 -j ACCEPT
iptables -A Filter -p tcp --dport 53 -j ACCEPT
iptables -A Filter -p udp --dport 53 -j ACCEPT
iptables -A Filter -j DROP
多个端口
iptables -A Filter -p tcp -m multiport --destination-port 22,53,80,110 -s 192.168.20.3 -j REJECT
指定时间上网
iptables -A Filter -s 10.10.10.253 -m time --timestart 6:00 --timestop 11:00 --days Mon,Tue,Wed,Thu,Fri,Sat,Sun -j DROP
iptables -A Filter -m time --timestart 12:00 --timestop 13:00 --days Mon,Tue,Wed,Thu,Fri,Sat,Sun -j ACCEPT
iptables -A Filter -m time --timestart 17:30 --timestop 8:30 --days Mon,Tue,Wed,Thu,Fri,Sat,Sun -j ACCEPT
CentOS 7.x
管理命令
查看firewall服务状态
systemctl status firewalld
firewall-cmd --state
# 平滑重载防火墙
firewall-cmd --reload
# 开启
service firewalld start
systemctl start firewalld
# 重启
service firewalld restart
# 关闭
service firewalld stop
systemctl stop firewalld
# 开机启动
systemctl enable firewalld
# 取消开机启动
systemctl disable firewalld
查看防火墙规则
firewall-cmd --list-all
查看防火墙的开放的端口
firewall-cmd --permanent --list-ports
防火墙管理
# 查询端口是否开放
firewall-cmd --query-port=8080/tcp
# 开放80端口
firewall-cmd --permanent --add-port=80/tcp
# 移除端口
firewall-cmd --permanent --remove-port=8080/tcp
# 参数解释
1、firwall-cmd:是Linux提供的操作firewall的一个工具;
2、--permanent:表示设置为持久;
3、--add-port:标识添加的端口;
CentOS切换为iptables防火墙
切换到iptables首先应该关掉默认的firewalld,然后安装iptables服务。
1、关闭firewall:
systemctl stop firewalld # 关闭
systemctl disable firewalld # 取消开机启动12
2、安装iptables防火墙
yum install iptables-services #安装1
3、编辑iptables防火墙配置
vi /etc/sysconfig/iptables 1
下边是一个完整的配置文件:
Firewall configuration written by system-config-firewall
Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-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
COMMIT
123456789101112131415161718192021222324252627282930
:wq! #保存退出
service iptables start #开启
systemctl enable iptables.service #设置防火墙开机启动