Linux操作系统的安全性是众所周知的,所以,现在很多企业的服务器,如文件服务器、WEB服务器等等,都采用的是Linux的操作系统。笔者所在的企业,有包括Oracle数据库服务器、文件备份服务器、邮件服务器、WEB服务器也都是采用Linux的服务器系统。今天,我就谈谈Linux是通过哪些技术来保障服务器的安全,来加强对网络的访问控制。
Linux内置防火墙主要是通过包过滤的手段来提高对网络的管理控制功能,从而提高网络与服务器的安全。
一、 Linux防火墙的工作原理
我们设想一下,一台Linux主机一般会作哪些数据包相关的工作。其实,我们可以把一台Linux形象的比喻成一个地铁车站。一个地铁车站一般有三个口子,一个是进口,乘客需要去做地铁的话,必须通过这个地铁的进口,而且必须凭合法的票子才能进去。第二个是出口,若乘客需要离开地铁站的话,则也必须凭着票子出站。三是一个中转的接口,也就是说,在地铁的中转站中,你可以直接通过过道到另外一条线上去。
而一台Linux主机也有三个口子。一个是进口(INPUT),到这台主机的任何数据包都需要通过这个接口才能够进入Linux系统的应用程序空间。第二个是出口(OUTPUT),从应用程序发送出去的任何数据包都必须通过这个出口,才能够进入到Linux系统的内核,让它把数据发送出去。第三个是转发接口(FORWARD),主要用来进行数据包的转发。
在Linux主机上要实现包过滤,其实也就是在这三个口子上添加包过滤条件。这就好像在每个口子上设置“验票员”。当“乘客”手里的票是合法的,则“验票员”就允许其通过;若这票是不允许的,则“验票员”就会拒绝其通过这个口子。通过这种方式,我们网络管理员就可以很好的管理网络中传递的数据包,并且对于一些服务器的防问权限进行合理且有效的控制。
如有时候我们为了防止DDOS攻击,我们就可以设置让所有主机都拒绝ICMP协议。如此的话,任何一台主机企图ping局域网内的任何一台Linux电脑的话,局域网内的任何主机都不会有响应。而若有黑客把局域网内的主机当作肉鸡,企图通过他们来实现DOS攻击的时候,由于我们在出站接口(OUTPUT接口)过滤了ICMP协议,所以,这个PING命令也根本不会传递到局域网中去。如此的话,就可以从根源上保护网络的安全。