鸿 网 互 联 www.68idc.cn

服务器最高安全防御策略选择与差异

来源:互联网 作者:佚名 时间:2013-08-17 08:23
随着linx/bsd技术的普及与发展,大家都认识到了开源系统所带来的种种好处,比如免费,可定制化,高性能,高可扩展,以及我们今天要研究的安全--一个永恒的话题,

  随着linx/bsd技术的普及与发展,大家都认识到了开源系统所带来的种种好处,比如免费,可定制化,高性能,高可扩展,以及我们今天要研究的安全--一个永恒的话题,好了废话不说了切入正题!

  个人认为如今系统的安全防御不应该是放在某个层面或者某个点上,应该从企业网站构架,建设初期起就应该有一个整体的规划,全局的部署,要放防御机制从物理层配置到web应用层最后到达系统内核层,虽然没必要搞的像国家安全部门一样,但是最少我们可以利用现有的,开源的,服务器空间,免费的,经过测试的安全工具来加强我们的安全,当然为了性能,成本,我们可以暂时的关闭一些安全防御功能,但是不能删除,在遇到黑客攻击时我们要开启!!下面我们就来看看具体有那些层面需要我们部署怎么样的安全机制:

  一,物理层防御

 1,购买的服务器,一定要是品牌dell,hp.ibm服务器,具有多电源,多磁盘RAID,机箱保护(打开报警,电源开关锁门锁),当然为了数据安全如有磁盘加密芯片最好。

2,最好选择光纤网路防止电磁泄漏,显示器,键盘灯,usb接口等最好不要。 

3,注意服务器相关链接的网络设备,路由器,交换机安全,防止基础硬件,网卡rom,upnp入侵,没事最高关闭路由器的uPnP功能,网卡的远程加载,唤醒个功能,设置高强度密码。还有就是主板的BIOS最高开启写保护开关,最近硬件BIOS入侵,最近网上曝光,所有的ciso,华为等路由器网路设备,甚至cpu都植入了“硬件后门”(所谓的正常的系统安全漏洞,什么人都避免不了,所以我们的设备里面有也是很正常的。。),用于监控用户数据。。。,这就是我们为什要自己定制防火墙,路由器,交换机的一个原因了。。

4,服务器放置的地点一定要符合各种电器标准的机房,防盗,专人看守,启用tcpdump,sniff等监控服务器,路由器等的异常信号。。看是否有硬件后门。

二,网络层防御(1-6层tcp/ip)

1, 静态化mac或者启用openvpn网络彻底静止arp协议,防止arp欺诈攻击。

2,设置交换机安全,放置mac-端口表攻击,把网络划分成各个专属vlan。

3,   配置dhcp服务器放置ip 地址资源分配攻击。限制每个网卡请求数,租赁时间。

4,  如不是大规模网络请不要分段IP使用路由器,直接交换机,如有必要尽量使用手工配置route表,不要使用各种动态配置路由表协议,防止协议漏洞攻击。

5,全网科莱,tcpdump,sniff 等包分析人工监控网络,发现非法网卡混杂监听,各种扫描,dos,ddos攻击,已经各种未知的攻击。

6, 如条件允许请购买专业的防止DDOS,非x86构架防火墙最好是支持7层应用层防火墙功能,如果带宽没那么大可以选择diy freebsd+pf组成的防火墙,同时配置syn代理握手 进 出 nat rnt过滤,防止外部,内部,本机等攻击(freebsd的polling还可以轮训网卡模式,对付高中断的syn攻击有奇效)。一般应用层防火墙防御web用不到,非要部署也可以选择freebsd的ipfw-classi或者iptable-7lay,但是一定要使用科莱,sniff进行7层特诊吗的正则开发!要不现有的规则太落后了!之中对于ddos大规模攻击就不是防火墙说能防御的啦,只有加大宽带,联合电信政府部门,购买CDN全国分布服务器才能解决。

7,使用suricata(snort性能太差,过时了)开启nvdia CUDA加速,香港空间,pring加速,选用intel网卡开启dma,miix2,队列加速实现万兆流量入侵分析!同时支持IDS/IPS功能,当然我们不仅仅要实现入侵检测系统与防火墙的沟通,还可以实现入侵检测系统与系统shell,声音,mail 报警沟通!特别是渗透扫面的发现,扼杀渗透攻击与摇篮!

8,对于DNS是漏洞最多的网络核心功能,所以没有必要请不要自己使用bind搭建NDS服务器加速网络,直接使用网络上的DNS就可以了,如果实在要部署,请选择openbsd系统搭建,在代码层防止溢出,或者使用后面讲的mac,强制访问安全控制加固!当是一定要部署nds全网欺骗攻击防御(使用网络分析包工具来做),防止内网中毒发送nds假包,欺骗劫持!

三,应用层防御

1,所有的系统,服务器软件必须使用发行版默认的版本,并且进行md5,sha签名认证,并且有必要下载对应的发行版源代码使用gcc-4.6-4.7版本加参数-fstack-protect-all保护编译安装,优化的级别也最好不要超过O2。还有就是必须修改源代码的version.h把服务器软件名字,版本打乱伪造好!比如nginx变成bws,gws,apache等,mysql变成redis,postgresl!同时开启相关的nginx,apache,mysql等等软件自带的安全功能,配置安全运行策略!

2,web服务器,数据库服务器,缓存服务器,php应用服务器必须分开来单独电脑安装,同时设置各自的专用账号。方便以后进行最小权限控制,以及目录权限控制!

3,网站能静态化最好,实在要动态,香港服务器租用,可以使用suhosin安全加固php虚拟机,禁用各种没用的函数,使用tomoyo安全分析软件分析网站正常使用时,需要的各种权限,进行php,mysql ,nginx,apapche最小权限化管理,分析出web根目录最佳权限,防止各种溢出攻击,同时对用户输入的所有数据,图片,选择项进行php输入过滤,防止sql注入,夸张,拖库等攻击,如果可能请选择NOsql数据库,比如redis代替msyql!

4,如果前段没哟部署7层应用层防火墙,那么我们可以使用nginx,apache设置并发,连接控制防止ccs攻击,同时所有的服务器软件运行必须在grsecurity selinux tomoyo等MAC强制访问控制下运行!

5,关于mac强制访问其实很简单,就是在原有的自主访问控制基础上加入了更强大的控制功能层,通体来说加入了角色控制层 类型(主体客体)控制层 还有就是主要为了信息安全而设置的客体访问级别控制,一般有如下工具:

     selinux:全功能的selinux实现了 角色控制,tpyeenfore类型域控制 还有mls控制,但是我们常用的centos,rhel默认只是开启了typeenfore类控制,是selinux的阉割版,不管是角色控制,类型控制,还是msl控制无非就两个四个步骤:

       a,把角色控制,类型控制,msl控制的分类分组标签写到文件安全扩展属性中去

       b,使用自动学习模式,或者手动policiy文件书写角色,类型,mls权限控制规则(在rhel,centos已经提供了现有的常用软件策略)

       c,启用permission调试模式,试运行软件,查看日志是由有违反规定的日志

      d,调整策略,反复前两部操作,知道无错误

    完整版strict可是用来实现用户:角色:TE:mls四层控制,而且可以保护整个系统,而不光是关键进程!

网友评论
<