在防火墙的规则里面,我们要指定一下规则应用的 chain,描述一下数据包的样子,再加上要执行的动作。 我发现有个 IP 老是攻击我的服务器,比如请求没有权限的资源,因为它会不断的向服务发请求,所以会消耗服务器的资源 .. 我们可以添加一条防火墙规则禁止这个 IP 地址访问。
先登录到之前创建的名字是 guest1 的虚拟机 .. 然后执行一下 ping 命令 .. 去测试连接一下 server 这台虚拟机 .. 现在可以 ping 得通 .. 说明 guest1 连接 server 没有问题 ..
然后回到 server 上,去添加一条防火墙规则禁止 guest1 的访问。 sudo iptables -A INPUT , -A 就是 append ,追加的意思,后面的 INPUT 表示规则应用的 Chain, INPUT 就是进入到服务器的数据 ..
后面加上一个 -s ,表示 source ,用它指定一下数据包的来源 .. 这里用一个 IP 地址 .. 比如干坏事的 IP 地址是 192.168.33.161 .. 它是我们创建的 guest-1 这台虚拟机的地址 ..
再加上一个 -j 表示 jump .. 后面是要执行的动作,这里用一个 DROP ..
sudo iptables -A INPUT -s 192.168.33.161 -j DROP
这条规则的意思就是,扔掉来自 192.168.33.161 这个 IP 地址发送过来的所有的数据 .. 回到 guest1 看一下 .. 现在再使用 ping 命令去测试连接 server 这台主机的时候就不行了 .. 因为在 server 上有一条防火墙规则禁止了这台主机的访问 ..
回到 server ,查看一下现有的防火墙规则 .. sudo iptables -L
在 INPUT 这个 Chain 里面,现在有了一条规则。