20个实用的iptables防火墙规则

系统管理员的任务之一是管理网络,配置防火墙;iptables是一个防火墙工具,允许通关配置规则管理进出流量。

下面列出的这些iptables防火墙规则是每个Linux管理员应该知道的。

从简单到复杂的顺序:

#1 启动/停止/重启iptables防火墙

基于SystemD的Linux发行版:

基于SysVinit的Linux发行版:

#2 查看所有iptables防火墙规则

列出已存在的防火墙规则,命令如下:

iptables有三种不同类型的规则,分别是:filter、nat、mangle。如果你想查看指定类型,可以使用-t选项,例如查看nat类型的规则:

#3 屏蔽指定ip

如果你发现一个ip地址对你的服务器发起工具,你可以使用下面命令屏蔽这个ip:

“xxx.xxx.xxx.xxx”替换为要屏蔽的ip地址。运行这个命令要小心,因为它可以屏蔽你自己的ip地址,尤其是在服务器不在跟前的情况下(不能使用ssh登录了)。

加入你只想屏蔽某一ip的TCP流量,可以使用-p选项指定要屏蔽的协议(Tcp/Udp),命令如下:

#4 取消屏蔽指定ip

使用上面一节屏蔽的ip地址,如果不想要再屏蔽了,使用如下命令删除对应的防火墙规则:

-D选项代表delete。

#5 屏蔽指定端口

有时候你也许想屏蔽某个端口的进出流量。配置它,可以提高系统的安全性。

屏蔽某个端口的对外连接:

允许某个端口的对内连接:

上面命令屏蔽的是tcp连接,如果想屏蔽udp连接,只要修改-p选项就行了。

#6 使用multiport一次指定多个端口

#7 允许某个网络地址范围访问特定端口

网络192.168.100.0/24允许对外连接22端口。

#8 屏蔽某些网站

某些公司如果想要禁止员工访问某些网站,可以使用如下命令屏蔽网站。

注意:如果你添加了这些规则,你的同事也许会不待见你。

查找网站使用的ip地址:

屏蔽:

有的网站也许有很多ip。

#9 使用iptables设置端口转向

有时,你需要把某一服务的流量转到另一个端口,命令如下:

把eth0网卡的对内tcp流量,从25端口转到2525端口。

#10 屏蔽网络洪水攻击

某些ip也许在短时间内大量访问你的网站,导致你的网站响应变慢。使用下面命令屏蔽网络洪水攻击:

可以根据需求自己调整。

#11 禁止其他人ping你的服务器

有些人会因为安全原因,当是风险并不大。命令:

#12 允许loopback访问

回环访问(127.0.0.1)是很有用的,你应该开启它:

#13 对丢弃的网络包进行记录(日志)

eth0上drop的网络包:

日志文件位于/var/log/messages。

#14 屏蔽指定MAC地址

00:00:00:00:00:00替换为你想要屏蔽的MAC地址。

#15 限制每个ip地址的同时连接数

上面命令设置每个客户端不能超过3个连接。

#16 搜索已定义的iptables防火墙规则

例如:

#17 定义新的iptables chain

定义自己的chain,在里面存储自定义规则。定义chain:

#18 Flush iptables规则

#19 把iptables规则保存到文件

可以用来备份规则,命令:

#20 从文件中恢复iptables规则

把上面命令到处的规则恢复:


你常用的iptables防火墙规则都有什么,欢迎留言。

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注