iptables防火墙设置演示 01(Linux安全配置入门教程)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
入侵某台电脑有很多种途径,其中通过端口进行入侵比较普遍,而且一经成功危害比较大。
特别是作为服务器的计算机,把不必要的端口关闭,这是常用的做法。
用Linux作为服务器操作系统,使用Linux自带的防火墙iptables可以实现这功能。
对端口的处理 常用的做法:
关闭所有端口,只打开要对外使用的端口。
例如:作为web服务器 我们可以关闭所有端口,只打开80端口。
下面结合图片和Linux下iptables的命令操作来实现,还有理解iptables工作流程。
我使用 CentOS5.1 Linux 作为操作演示:
登陆进去了, 首先要查看下 防火墙的情况:
]# iptables -L -n
看到 INPUT ACCEPT, FORWARD ACCEPT , OUTPUT ACCEPT
我们可以这样理解 , iptables 由3个部分组成
INPUT, FORWARD 和 OUTPUT,我们先看 INPUT 和 OUTPUT
(policy ACCEPT) 表示是完全接受 所有的数据,也就是说
现在的iptables 防火墙 没有起到任何作用。
下面我结合 我们常见的 浏览网页 来为大家解析一下 工作原理:
首先我这个 服务器上 安装了 web 服务器和编写了网页上去。
看到了吧, 正常浏览网页。大家都知道我们浏览网页其实就是
访问服务器的80端口,只是默认不用写上去。
http://192.168.1.99:80 这样也是一样的
现在 我们 iptables 就是和上面的图片 一样 ,因为 INPUT,OUTPUT都是
ACCEPT 接受任何数据的访问的,那么要是我们关闭其中一个呢 ?
就像现在图片的效果,我们关闭 INPUT,那么结合 iptables 的命令
就是这样 :]# iptables -P INPUT DROP
DROP 可以这样理解, 当INPUT 遇到数据就不接受丢失它,不让它进入
好,我们演示一下, 设置好了,我们再查看一下 iptables -L -n
看到了吗 ? 现在 Chain INPUT (policy DROP) 和一开始不同了。
我们现在对 所有向服务器发来的数据全部丢失。
这样应该不能访问 网站的网页了, 我们刷新试下。
看到了吧, 一直等待 打开,刚才那个是历史记录,
该页无法显示。 无法显示。 为什么这样呢 ?
结合图片可以看到 , 用户向服务器发送请求浏览网页,但是服务器关闭了接受数据的
端口, 那么web服务器无法得到数据 返回给用户,所以用户浏览器一直等待,最后等的
时间太长了 超时了,出现 该页无法显示。。。
还有一种情况 就是 INPUT 打开 而 OUTPUT关闭 将会怎样.
先把 INPUT 设为 ACCEPT : iptables -P INPUT ACCEPT 再查看下 设好了
再把 OUTPUT 设为 DROP : iptables -P OUTPUT DROP 好,看到设好了吧。
我们再访问一下, 好,也是等待状态,这种情况 就如 下面的图片所示:
虽然我们接受用户发来的请求浏览网页,但是服务器返回的信息被OUTPUT 所限制,
发不出去。
经过上面2个例子, 刚才我们是对所有端口做了 设置,
我们最终是这样 设置防火墙的,比较普遍的做法。
关闭所有的 INPUT FORWARD OUTPUT 只对某些端口开放。
下面是命令实现:
]# iptables -P INPUT DROP
]# iptables -P FORWARD DROP
]# iptables -P OUTPUT DROP
再用命令 iptables -L -n 查看 是否设置好, 好看到全部 DROP 了
这样的设置好了,我们只是临时的, 重启服务器还是会恢复原来没有设置的状态
还要使用 ]# service iptables save 进行保存
看到信息 firewall rules 防火墙的规则 其实就是保存在 /etc/sysconfig/iptables
可以打开文件查看 vi /etc/sysconfig/iptables
好,这个视频就到这里,下次会演示如何打开某个端口,现在我们是关闭了所有的端口
如果大家有什么建议或者视频中遇到问题,可以上 给作者留言 谢谢!