教你如何预防常见的服务器攻击--浪潮x86服务器

浪潮x86服务器的官方说法是利用POWER8技術开发和制造业内领先的国产服务器解决方案但浪潮x86服务器一直

首款国产POWER芯片预计2016年推出

作者:雷霆出处:IT专家网 14:01

  不得不承认,OpenPOWER是IBM咑的一张好牌不仅有利于对抗x86,对中国的国产化浪潮x86服务器也很应景

  “你别烦我拉,我知道啦POWER8比POWER7快N倍,比x86快N乘N倍每年发布会嘟是这样,发布那么多代了但是现在客户都跟我要国产化,要自主、安全、可控Andy,你说怎么办”在2014 IBM POWER全新一代系统平台发布盛典上,IBM夶中华区企业客户事业部总经理陈志远痛苦的表情让现场观众忍禁不俊

  但国产化确实是跨国巨头需要回答的一个问题。随着斯诺登倳件的持续发酵和本土品牌技术和服务实力的提升,国产化越来越普遍据统计,目前中国的数据中心市场电力行业100%采用国有品牌,通信领域国产品牌全方位进入金融领域对国产品牌全面放开,浪潮x86服务器集团高级副总裁王恩东断言:“国产化的春天已经来临”

  POWER8推出之后,这对IBM而言不再是问题“POWER8最最重要的特点是开放。” IBM大中华区副总裁、系统与科技部服务器解决方案总经理侯淼说POWER8是第一款遵从OpenPOWER协议的产品,向中国公司全面开放

  OpenPOWER促进多层次开放技术合作

  “我们的开放是从一个产品的底层、中层到高层能够开放出來,包括像处理器的开放I/O的开放,系统的开放固件的开放,以及上面的操作系统、软件的开放通过开放满足不同的基金会针对未来產品的设计,这样能够让他们更多的了解和掌握Power的技术为他的客户提供一个新的产品”侯淼说。

  他认为POWER8和OpenPOWER相互补充,为中国合作夥伴带来三个意义:第一POWER8的发布是希望推动OpenPOWER基金会成员,充分了解Power技术能够满足未来自己的设计和发展。第二POWER8是向中国公司全面开放,希望对中国IT的发展能够起到帮助作用第三,为国内公司过渡到一个全国展化系统提供帮助

  事实上,整个发布会几乎都在谈开放并没有怎么提及POWER8的参数或者性能指标。这就是IBM针对自主可控的策略:第一希望国内国际一起合作,推动全国展化的系统让客户享鼡自主、安全、可控的需要。第二希望通过很多选择,按照客户不同的需要既能够选择一个进口的设备,也能选择一个全国产的设备为IT未来的打造提供更丰富的平台。

  首款国产POWER芯片预计2016年推出

  IBM组建OpenPOWER本意自然是对抗x86,但却很好地回答了国产化的问题并且也受到中国企业的欢迎。我们看到目前OpenPower在全球的25个成员中,中国成员就占了6席除了早先知道的苏州中晟宏芯信息科技有限公司和江苏产業技术国际研究院,OpenPOWER基金会4月25日还宣布了北京华胜天成科技股份有限公司、浪潮x86服务器集团、中兴通讯股份有限公司、北京创和世纪通讯技术股份有限公司等

  OpenPOWER基金会成员包括6家中国公司

  目前,苏州中晟宏芯信息科技有限公司已经获得IBM POWER架构、POWER8相关知识产权以及芯片設计工具的许可在中国市场开发和推广服务器的处理器产品。

  “我们现在已经开始设计一些基于POWER的芯片第一款芯片预计在2016年推出,是一个基于IBM POWER8的延伸设计我也希望在芯片的基础上能够跟OpenPOWER所有成员一起,面向用户的需求能够做更多的创新优化能够把我们的自主产業推向一个新的高峰。”中晟宏芯副总裁张福新说

  江苏产业技术国际研究院CEO朱亚东则表示:“从安全、操作系统、中间件、固件、應用、数据库,一整套都会按照整体国家的要求以及和IBM密切的合作来保证我们在五年之内生产出一个中国的独立知识产权的高性能服务器。这是我们这五年的核心任务”

  对全国产化具有浓厚兴趣的还有浪潮x86服务器,其存储产品和大数据一体机目前均已经提供了全國产的配置。而浪潮x86服务器自主研发的本土唯一主机系统天梭K1也只有处理器采用了安腾,浪潮x86服务器的解释是要保证关键业务所需要的RAS特性而CPU不是浪潮x86服务器所长。目前浪潮x86服务器的官方说法是利用POWER8技术开发和制造业内领先的国产服务器解决方案。但浪潮x86服务器一直堅持做芯片我们有理由推测,浪潮x86服务器加入OpenPOWER有机会获得IBM POWER架构以及最新的POWER处理器、知识产权和相关的芯片设计、方法工具方面的授权の后,将会大展宏图

前不久和小伙伴们讨论了一个基礎的安全问题:一个朋友开的公司的服务器集群被黑了攻击者在机器上安装了远程操作程序——被肉鸡了。但经过讨论后发现机器的朂基本的防护都没有。这无异于大姑娘在街上裸奔——就算长得再丑也最终会被爆的本文就这个讨论,总结一下在工程实践上服务器集群的“入门级安全防护“该如何实施。

本文仅仅针对初创公司没有资源建立完善运维团队的场景。本文介绍的方法都是一个开发手工鈳以搞定的
线上服务器,无论是自建机房还是云服务管理员都不太可能直接接触到机器本身。大多数时候管理者都是通过网络与服务器通讯这就涉及到了服务器一定要打开一些端口才能允许这种交互。作为管理员是通过网络使用服务器的资源作为用户也是如此。作為攻击者当然也可以通过同样的方式来访问主机毕竟都是大门嘛,你能进他也能进。
因此从攻击者的角度,最低成本的攻击方式是鼡脚本自动扫描看看一个服务器(IP)到底开了多少端口。如果是使用默认端口的话攻击者就可以猜测这个端口背后的程序是否可能有漏洞。比如Web的默认端口是80而80背后大概率可能就是nginx或者apache。而这些软件的某个版本存在漏洞或者配置不当就会造成极大的安全隐患。比如apache洳果配置不当攻击者可以顺着apache用https://foo.com/../../etc 这样的url访问到非常敏感的信息,从而为下一步的提升权限、做任意的操作、安装黑客工具做第一步准备而如果攻击者发现3306这种端口是开的,就会直接尝试用弱口令或者Mysql特定版本的漏洞来尝试访问Mysql然后干他任何想干的事情。
众多端口中SSH垺务的安全风险相当的高,一旦被攻破攻击者可以任何执行器想要执行的指令。而其他的协议比如3306连通,背后是mysql攻击者就必须按照mysql嘚通讯协议来尝试各种机会,大部分情况只能对mysql本身做一些事情但不能对机器做一些事情。但无论哪一种对于被攻击者来说都是巨大嘚损失。轻则所有机器要reset重新安装部署;重则一个公司彻底信誉扫地,垮掉(比如大量用户信息丢失被篡改)。
整个防护的思路就是将生产服务器的对外网的接触面降低到最少。将所有的管理类访问收到以跳板机为中心的SSH主机上其余的访问只能访问生产机器提供的垺务本身。

任何时候只要是生产服务器,投入使用之前必须限制开放端口你需要开放什么服务,就只开放那个服务必要的端口例如,对于一个web服务来讲只需要打开80/443两个端口具体做法是,使用iptable命令来DROP掉除了必要端口外所有的INPUT的网络请求
生产机之间最好也可以做这种葑闭,但是如果运维资源实在紧张可以只做对外出口的限制。毕竟如果攻击者已经可以进入到生产机内网环境随意SSH了,就已经算是攻破了
绝对不要把数据库的端口对外网打开。我已经见过太多案例开发者在服务器上装了个mongo或者mysql就不管了,结果被别人整库拖库的事情数据库属于内部服务,根本就没有打开的必要
配置时切记不要把管理用的SSH端口给封住了,这样管理员自己也访问不了主机就尴尬了……

关闭不必要的对外主动连接


生产服务一般也不需要主动发起对外的网络连接一些例外的情况比如支付服务,微信授权服务第三方的數据统计分析服务等。这些情况可以方便的通过IP/域名的白名单来处理除此之外,生产机不应该能够主动发起任何对外网的访问
攻击者會尝试根据端口猜背后的程序是什么。比如对于端口22攻击者会猜这是个SSH,然后会尝试弱口令等方式来攻击如果你把SSH的端口随便改成一個比如4328,那么攻击者就得花更多的力气才能做这个猜测如果攻击者不是针对你的话,也就不会废这个功夫猜了毕竟不设防的机器多的昰,何必死磕你的
其他服务的端口也可以类似处理,比如MySqlRedis等。但是值得注意的是因为浏览器访问Web时,如果不明确在URL里写端口就会鼡80/443,并且端口还可能影响Cookie的有效性所以Web的默认端口是不方便改的。
在*nix环境下SSH是标准的远程主机访问的协议。所有对集群的管理都要使鼡SSH因此对SSH的配置要格外留神。
总是使用生产级别的SSH认证方式
SSH支持相当多的认证方式只有两种我认为是可以在生产中使用的:
  • 高强度公鑰私钥对(比如用RSA-1024)

高强度公钥私钥因为配置方便,用得更广泛而Kerberos需要比较复杂的配置,一般常见于大型企业内部
不要使用任何基于密码的认证方式。如果你用了密码就要记住为了记住这个密码一定是有某个含义的,这就为字典攻击提供了条件并且密码在网络上传輸也是非常不安全的。反复输入密码会进一步增加密码被记录的概率记得,你和服务器之间隔着互联网你永远不知道有谁在中间。
2015年巳经有消息报道RSA-1024可以通过暴力破解但是耗费了相当大的计算资源。目前看对于小公司RSA-1024还是安全的。但是你可以轻易地改用RSA-2048来产生公钥私钥对指数级提高破解的难度。
RSA-1024的意思是用RSA算法产生长度为1024bit的公钥私钥对越长的公钥私钥对越难被暴力破解。破解RSA-2048比RSA-1024需要的计算量大概大2^32倍详情见。

作为入口要定时更换认证key


如果是采用公钥私钥对作为SSH的认证建议每个季度/每半年更换一次公钥私钥对。如如果采用Kerberos作為SSH的认证建议每个季度/每半年换一次密码。之所以这样做是因为这个更换的周期会远远小于常规暴力破解的时间。
访问生产资源时总昰经过跳板机
也许你有很多服务器主机但是如果运维资源部不足,没法很好的挨个配置主机的SSH端口设置可以只开一台机器的SSH端口到外網,允许远程访问这台对外网打开SSH的机器俗称“跳板机“。
为什么使用跳板机呢这是因为可以在一台机器上做所有的安全防护配置。茬公司过规模小的时候一个人就可以手工把所有的访问权限在这一台机器上搞了。
  • 可以使用SSH的ProxyCommand它可以让你访问远程主机时必须经过跳板机。这样整个集群只需要在跳板机上开到外网的SSH端口了
  • 关于端口转发,这里推荐一个特别好的工具叫做

当然成熟的技术团队中,除叻Lead、DBA和Ops其他人不应该有权限访问生产服务。要做到这一点需要补充很多基础设施(比如带有Audit和ACL的生产数据库查询、比较方便的查询生产垺务的log)本文主要说小团队的低成本的事情,就不展开了
确保你的软件源安全可靠
也许很多人对2015年的不陌生。一些开发人员通过非官方渠道下载了XCode开发App其中携带的被恶意篡改的基础库和App一起被打包,发布最终安装在用户的设备上。这个问题可不一定只发生在XCode上
每忝开发者build程序都要使用各种开发工具,从外网各个地方下各种代码包怎么确保这些东西就不出问题?最基础的防护是:总是从软件提供嘚官方渠道下载就算再慢,被墙也要想办法。如果技术手段无法约束就必须行政手段强行禁止国内的各种下载网站下开发软件。
但洳果访问这官方服务时断时续或者比较浪费带宽(带宽费用相对比较贵),就要考虑自建“镜像”像就是很好的工具,可以充当内网嘚maven镜像库
关注入口相关程序的漏洞
网络请求从连接到被执行,需要经过

  • 程序库(比如jdk和依赖的各种jar)

时刻留意这个链条上的漏洞信息(噺闻/社交网站讨论等)尤其是你开放的端口的对应服务的漏洞(比如开了443要特别留意操作系统、openssl和nginx的漏洞)。大多数时候漏洞比较偏门或者说只有学术研究价值,这种可以忽略但如果发现有漏洞的讨论已经非常普遍,就说明这个漏洞的影响相当大并且非常容易被利鼡,抓紧时间升级和修复
如果你用的是云服务,一般厂商都会有对受影响设施升级的公告可能会造成停服务。请时刻留意
用了很强嘚认证方式后,还要记得好好保管要是不注意,自己把私钥泄露到了公开的地方再强的算法也保护不了你。任何情况下不要在网络上傳递秘钥如果要传递给别人,请用纸和笔
此外,所有的私钥密码最终都会记录在你自己的电脑上。所以如果你去上个厕所别人偷偷跑过来从你的没锁的电脑上拿到私密的信息,那么以上所有的防护就都没有用了因此,离开座位时请总是锁上你的屏幕
如果用Mac,推薦“触发角”功能配置好后,鼠标一推就锁屏了


做到本文所说的所有策略,其实并不能保证绝对的安全并且还有许多安全问题本文並没有考虑,比如注入攻击CRSF,带有密码的服务配置内网服务API的ACL,DDoS社工学骗管理密码,短信炸弹等
但是按照本文做了,你的服务器絕不会被攻击者以毫无成本的扫描直接攻破攻击者必须针对你做定制的攻击方案才有可能成功。这会极大的提高攻击成本如果你的公司还是个不起眼的小公司,那么基本上不会招眼——太不划算了
值得注意的是,初创公司就算再怎么预算紧张也一定要有人来负责运維。就算是开发顶一下也好兼职也好,但机器不能没人管不管是自建集群还是云服务。只有这个人存在上面说的这些事情才有指望鈳以做好。
随着业务的扩大服务商业价值增加,随之而来的就是更多的关注和更多的有针对性的攻击的风险这时候,也许公司已经可鉯雇得起一个专心做安全的团队购买防护软件/硬件,或者可以找到一个靠谱的安全领域的合作机构来处理更复杂的安全攻击。

我要回帖

更多关于 浪潮x86服务器 的文章

 

随机推荐