Linux防火墙之IPtables

一、IPtables安装

1、关闭默认防火墙firewalld服务

systemctl stop firewalld                             #停止firewalld服务
systemctl disable firewalld                          #禁止firewalld开机服务

2、安装IPtables服务

yum install -y iptables-services

3、启动IPtables服务

systemctl start iptables

4、 查看IPtables运行状态

systemctl status iptables

5、关闭IPtables服务

systemctl stop iptables

二、IPtables配置

1、类别参数

-t               指定操作的表
-L, --list       列出当前的规则
-v               显示数据包和数据包大小
-n               不反解地址
-A, --append     追加一条规则到链中
-I, --insert     插入一条规则,插入到顶部
-F, --flush      清空
-Z, --zero       清空计数器(  包数量 、包大小)

-D, --delete     删除链中的规则

-R, --replace    修改
-S, --list-rules 列出所有的规则


-N, --new-chain  创建一个自定义 链
-X, --delete-chain 删除一个自定义链
-P, --policy     指定链的默认策略

2、指定动作

ACCEPT     将数据包放行,进行完此处理动作后,将不再比对其它规则,直接跳往下一个规则链。
REJECT     拦阻该数据包,并传送数据包通知对方。
DROP       丢弃包不予处理,进行完此处理动作后,将不再比对其它规则,直接中断过滤程序。
REDIRECT   将包重新导向到另一个端口,进行完此处理动作后,将会继续比对其它规则。

3、 匹配条件

TCP(http)
UDP
ICMP(ping)
ALL

 4、地址参数

-s 源地址:发送请求的地址
-d 目标地址:访问的地址

5、端口参数

--sport 源端口:发送请求的端口
--dport 目标端口:访问的端口

6、动作参数

-i : 进来的网卡
-o : 出去的网卡
-m : 指定模块
-j : 转发动作
-p :指定协议

三、IPtables使用

1、使用场景:只允许22端口可以访问,其他端口全部无法访问

iptables -t filter -A INPUT -p TCP --dport 22  -j ACCEPT
iptables -t filter -A INPUT -p TCP -j DROP

2、使用场景:只允许22,80,443端口可以访问,其他端口全部无法访问

iptables -t filter -A INPUT -p TCP --dport 22  -j ACCEPT
iptables -t filter -A INPUT -p TCP --dport 80  -j ACCEPT
iptables -t filter -A INPUT -p TCP --dport 443  -j ACCEPT
iptables -t filter -A INPUT -p TCP -j DROP

3、使用场景:要求使用192.168.15.81能够通过22端口链接,但是其他的不行

iptables -t filter -A INPUT -p TCP -d 192.168.15.81 --dport 22  -j ACCEPT
iptables -t filter -A INPUT -p TCP -j DROP

4、使用场景:只允许192.168.15.71能够通过22端口链接,其他的不行

iptables -t filter -A INPUT -p  TCP -s 192.168.15.71  -d 192.168.15.81 --dport 22 -j ACCEPT
iptables -t filter -A INPUT -p TCP -j DROP

5、使用场景:要求192.168.15.71对外部不可见

iptables -t filter -A INPUT -p TCP -d 192.168.15.71 -j DROP

6、使用场景:要求使用eth0网卡的所有请求全部拒绝

iptables -t filter -A INPUT -p TCP -i eth0 -j DROP

7、使用场景:要求访问服务器的8080端口转发至80端口

iptables -t nat -A PREROUTING -p TCP --dport 8080 -j REDIRECT --to-port 80

8、使用场景:要求只允许windows通过ssh连接192.168.15.81,其他的拒绝

iptables -t filter -I INPUT -p TCP -s 192.168.15.1 -d 192.168.15.81 --dport 22 -j ACCEPT
iptables -t filter -A INPUT -p TCP --dport 22 -j DROP

9、 配置规则保存到/etc/sysconfig/iptables,使配置永久生效

service iptables save

相关推荐

  1. Linux防火墙IPtables

    2024-05-16 08:28:12       10 阅读
  2. Linux iptables 防火墙设置

    2024-05-16 08:28:12       19 阅读
  3. Linux安装iptables 防火墙

    2024-05-16 08:28:12       19 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-16 08:28:12       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-16 08:28:12       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-16 08:28:12       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-16 08:28:12       20 阅读

热门阅读

  1. IT行业的现状与未来发展趋势

    2024-05-16 08:28:12       10 阅读
  2. 近程无人机平台技术体系

    2024-05-16 08:28:12       11 阅读
  3. Tomcat闪退

    2024-05-16 08:28:12       12 阅读
  4. jvm故障定位

    2024-05-16 08:28:12       12 阅读
  5. 音频重采样算法

    2024-05-16 08:28:12       14 阅读