[针对初学者] 如何使用 iptables 命令限制访问。
你好! 我是系统解决方案部门的 Shimeji。
加入公司已经三个月了,但我仍然对各种不明白的事情感到困惑。
不过Beyond的前辈们都很友善,每天都给我各种“领悟”。
非常感谢大家。
今天简单写一下CentOS6中使用的iptables命令的访问限制。
什么是 iptables?
它是在 Linux 中实现的数据包过滤器。
它称为防火墙。
此功能允许您限制或允许特定访问。
简单地说,
- 禁止未经授权的人员访问。
- 我们欢迎优秀人士的访问。
就是这个意思! !
而操作iptables的命令就是iptables命令!
就是这样。
使用 iptables 应用限制
请先看下面。
[root@localhost vagrant]# iptables -L Chain INPUT (策略接受) target prot opt 源目的地 Chain FORWARD (策略接受) target prot opt 源目的地 Chain OUTPUT (策略接受) target prot opt 源目的地
以上是[iptables -L]命令的执行结果。
可以看到从上往下分为三个字段,按照顺序,
[ INPUT ]是与输入相关的链,[ FORWARD ]是与传输相关的链,[ OUTPUT ]是与输出相关的链。
将链视为检查数据包的规则。
查看“链输入”旁边的内容。
(政策接受)。
这就是所谓的
政策策略是适用于整个链条的规则。
ACCEPT 表示允许所有输入。
相反,如果你想限制它,请将其更改为 DROP。
命令是
iptables -P 输入丢弃
好的!!
(您也将无法建立自己的 SSH 连接。请先运行命令以允许使用底部列出的 iptables 进行访问。)
让我们用[iptables -L]命令来检查一下!
[root@localhost vagrant]# iptables -L Chain INPUT (策略 DROP) target prot opt 源目的地 Chain FORWARD (策略接受) target prot opt 源目的地 Chain OUTPUT (策略接受) target prot opt 源目的地
它已更改为 DROP。
现在您可以限制来自外部的所有访问! !
允许使用 iptables 访问
见下文。
[root@localhost vagrant]# iptables -L Chain INPUT (策略 DROP) target prot opt 源目的地 ACCEPT all -- 192.168.33.1 Anywhere Chain FORWARD (策略接受) target prot opt 源目的地 Chain OUTPUT (策略接受) target prot opt 源目的地
【接受全部 -- 192.168.33.1 任何地方】
这样的描述越来越多了!
这意味着“允许来自 192.168.33.1 的所有访问。”
这就是所谓的规则
运行以下命令添加允许访问的规则。
iptables -A INPUT -s [允许访问的IP地址] -j ACCEPT
现在您可以禁止所有访问并允许来自特定 IP 地址的访问。
顺便说一句,您还可以设置诸如“允许访问特定端口”之类的内容。
iptables -A 输入 -p tcp --dport 80 -j 接受
这是一个允许访问端口 80(WEB 服务器)的命令。
您还可以通过更改 --dport 后面的数字来更改为另一个端口! !
如果重新启动计算机,对这些设置的更改将被撤消。
如果您想让设置永久生效,
服务 iptables 保存
使用此命令保存您的设置。
这种禁止所有访问、只允许特定访问的方法
称为“白名单法”。
概括
虽然我已经用非常粗略和简洁的方式描述了它,但上面是 iptables 命令的简单使用方法。
还有不使用iptables命令的配置方法,还有更详细的配置方法,这里就省略了。
请大家使用iptables命令,祝大家电脑生活愉快!