Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1059750
  • 博文数量: 186
  • 博客积分: 4939
  • 博客等级: 上校
  • 技术积分: 2075
  • 用 户 组: 普通用户
  • 注册时间: 2010-04-08 17:15
文章分类

全部博文(186)

文章存档

2018年(1)

2017年(3)

2016年(11)

2015年(42)

2014年(21)

2013年(9)

2012年(18)

2011年(46)

2010年(35)

分类: 网络与安全

2014-07-22 14:09:40

      在面试的时候有时候曾被问到安全防护,其实此类问题多数都是泛泛之谈。

      常见安全攻击有黑客渗透、漏洞扫描、缓冲区溢出、sql注入、ddos/cc 等。
       
       cc是大量IP并发访问一个动态页面来消耗数据库连接。可以在防火墙限制IP并发链接数,或者程序断做限制。真正的ddos那原本是无解的,能做的不多,直接联系IDC做流量清洗,或者根本不用联系,你的IP就可能造被IDC封了。
    关于cc假如你用的nginx,可以:

1.限制某IP一定时间内请求数量, 可以参考这个模块 />
2. 发送cookie来识别恶意用户,302重定向到某个页面或输入验证码。需要Lua模块

rewrite_by_lua '
    local say = ngx.md5("website" .. ngx.var.remote_addr)     # 让攻击方无法猜出cookie,所以用了md5.
    if (ngx.var.cookie_say ~= say) then
        ngx.header["Set-Cookie"] = "say=" .. say
        return ngx.redirect(ngx.var.scheme .. "://" .. ngx.var.host .. ngx.var.uri)
    end
';

放任意的location里面,如果你的网站有对外提供API功能的话,建议API一定不能加入这段,因为API的调用也是没有浏览器行为


3. 白名单, 允许某些IP,如蜘蛛IP

    至于ops能做的大概就是:OS关闭不需要的服务,端口,应用软件采用稳定高版本,此外定期patch,控制权限,限制ssh登陆服务器的user/ip,开启日志审核,用证书来验证登陆服务器。此外防止SQL注入和xss需要程序员从代码方面去规避。
  
       总的来看,ops能做的事不多,要真正的做安全,就跟银行/证券企业那样购买IDS/IPS等设备和安全服务,定期做渗透测试和企业安全培训以及开发人员安全培训等。

       对了,定期关注安全社区的公告,该打patch或升级的时候升级即可。
阅读(1170) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~