中国IDC圈2016年9月6日报道,9月1日由工业和信息化部指导,中国信息通信研究院、中国通信标准化协会主办,数据中心联盟承办的“2016可信云大会”在京隆重召开。在可信云服务性能和运维论坛上,中交兴路车联网运维副总监许颖维发表了题为“如何优雅管理多IDC的服务器账号”的演讲。以下是演讲全文:

xuyinwei

中交兴路车联网运维副总监 许颖维 

大家下午好!我今天分享的有几个环节,第一,我们仔细考虑一下我们的需求是什么。我们发生故障以后,我们需求很简单,一、我需要的是一个人只要一个套令,我的密码改了以后,我不希望改完之后我还要到另一个环节改,场景也非常简单,因为我们知道没有一个系统是全能的,我们只需要实现一个简单的需求。当时我们有很多方案,开源的我知道很多人在用,但是它也有很多问题,我们当时有一个同事用,说好像很简单,对于我们一个创业公司来说,可能就有两个人,你说两个人要管理一个系统,有一定的技术壁垒,也担心人员的离职会给我们带来很多麻烦。另外是商业的,商业的有AD和堡垒机。

我们看商业和开源真正分析的时候,有哪些原理不一样。比如价格,AD可能几千块钱就能搞定,但是出去是商业的可能要十几万,但是如果我们有IDC多机房,可能成本会小一些。还有分布式,还有架构模型,我们知道堡垒机我们是从web页面登录上去,但是多个页面会有操作系统上面的接口问题,也会有IT和浏览器的问题。还有授权模式,还有操作回放,因为开源的只集中于授权过程,而不太关注审查过程,我们有堡垒,我们有跳板机,它是可以支所有用户登录操作的时候,把你的操作记录到本地。

总之这么一分析的话,其实开源系统已经有了很大优势。然后我们介绍一下OpenLDAP是什么,其实它就是一个树状的结构,以目录的方式记录每个节点,节点包含很多属性,它的最大优势在于索引非常大,OpenLDAP至今为止我们知道它的数据一直增长到十几万,通常也是毫秒级别。然后是用X.500协议,所以它的速度还是非常快的。我们再分析一下我们的需求究竟是怎么做的?我们在OpenLDAP管理当中,我们管理比较简单,就是用户的IP,用户账号,用户密码,还有用户的权限,它的整个认证过程是这样,我们用户要登录一台服务器的时候,首先很简单,登录的时候需要在服务器上通过跨模块扩展,跨模块本身我们知道我们登录服务器的时候,跨模块会查到自身的块文件,但是我们在跨模块上又做了一个拓展,它可以支持到OpenLDAP所有的都做一次验证。

我们的授权权限,因为我们初期时候不考虑太多,我们只要求每个人登录上去是用你的账号登录的,它的提权方式是登录到服务器就可以直接操作。这是使用方式,我以前是在乐元素,就是做《开心消消乐》的公司。大家可以看到这个里面是通讯,我们把这块的服务加入到OpenLDAP,但是唯独把数据库替换,为什么?因为我们是基于安全的考虑把数据库剔除出去,因为数据库必须核心。所有的用户登录过程当中,会先通过跳板机,跳板机以外的我们都是开放的,也就是只有从公司才能登录,登录以后再登录到其他网站,他登录到服务器的时候,会做身份认证,身份认证以后就可以使用了。这是整个的使用过程,实际上非常简单。

安装方式也非常简单,可以直接安装,安装以后你的环境就OK了。配置在很多网站上都有,这个是比较简单的谷歌安装方式,安装的时候会弹出一些界面,你只要按照操作进行相关的勾选就可以了。到这一步我们已经实现一个用户用一个账号和密码就可以登录了。但是过了一段时间以后,有一个研发同事说我们感觉你们的系统要做修改,为什么?因为之前有一个同事登录的时候不知道怎么跑到根目录下了,导致把我们一台服务器就干掉了,所以后来我们研发的同事说必须要改。后来我们说OK,我们就开始想做机器化管理,我们把公司所有的人按照部门分成五类,第一类是超级管理员,它需要登录到服务器做各种超级操作。第二类是日常运维部门,他要做一些服务的配置变更,服务的停启,做一些最正常的上线工作。还有一个是不能做业务管理,不能做系统管理,只能做运维网络级别的操作,能够做路由调整,IT变更,其他都不能。第四个是一个研发的同事,研发同事只能看,不能做。第五个是正常的用户登录上去,要切换到上面四个用户,才能证明你有这个权限。

这个图刚好能够衍生出我们现在对OpenLDAP的理解,我前几天有一个朋友给我打电话,想问一下这些组是什么,我们是不是在定义下面加一个组,用户不应该放在组里面,权限不应该放在用户下面呢,按照这么理解也对,我应该有组,组下面是用户,用户下面有权限。但实际上我们不是这样的,我们第一个组是所谓的用户群,第二是用户,但是我们用户也有一个属性,叫做GID,我们查找的时候先查找用户,用户GDI和它关联上,要不然我们可能有一堆人都属于用户。然后权限是怎么做的?权限是因为设计了用户登录的权限,但是里面有一个叫CN的权限,通过CN可以查到它的属性,通过它就可以把用户和权限绑定起来。

这是具体的截图,这个是我们研发同事总的定义是什么样,这是我自己的账号,我自己账号里面会有显示GIP。这个是权限,你进来之后默认如果不归属任何组的情况下用的权限,这个是我们正常的业务,其实都是定义在我们OpenLDAP里面的。基本上刚才已经定义完了,后来我们又有一个需求,业务慢慢扩展到多个机房,我记得以前在乐元素的时候有六七个机房,我们现在中交兴路平台上有四百万辆火车,这个就导致我们单个机房接入太多的数据,所以我们又建了多个机房,但是机房要在服务器里做认证,所以我们就有一个需求,这是我们提供的服务,所有的操作都在一台机器上做,做完以后把数据推到其他机房,在本地生效,所有用户登录都可以到本机房登录,哪怕这个机房出问题了其他机房也不会受影响。

那么用户会问我是不是要更改密码的话也要跑到这个机房,其实不是。我们看一下它的配置,首先Master写了,复制到它这个机房,它推过去的账号是一个什么样的账号,这个地方一般来说是配置管理账号,这个密码是什么,以及它的认证方式是什么,配置以后,基本上操作都可以实现。另外一个是Slave,意思是说我所有的操作如果有动用到要权限的话,要不要找我,找我的老大,这是Master的外网运营。所以我们基本上已经知道了,也了解了OpenLDAP集群里面它的工作模式,这个也比较简单。

我们再看一下它的日志里面,其实我们看的比较清楚,首先它会打开第一行,我们看同步日志会怎么说,你用了多少机器,什么时候用的,做了哪些用户,刚才这个操作说了,你给我同步到这么多地方,有这么多用户。到现在为止我们知道我们已经实现了刚才说的分布式,还有精细化管理。其中一个演变就是安全考虑,安全考虑当时我记得全部做完之后大家都松了一口气,基本上我们大部分需求都完成了,接下来安全部门就找我来了,安全部门是让人又爱又恨的部门,因为恨他是因为他老提出一些要求,爱也是因为他确实给我们敲响了很多警钟,让我们可以安安全全的度过我们每次的故障。他这里提出两个问题,一个是因为你们的通信协议没有加密,所以导致用户的验证过程很糟糕。我当时自己装了包以后发现也确实如此,所以我们就做了一个加密处理,给大家提示一下,大家做证书的时候一定要做跨地域证书,不要做实际的。做完了以后会开启两个原生端口,一个是389,一个是636的端口。后来安全部门跟我说,你们的防火墙很容易被突破,我们后来自己也测试了以后也发现了这个问题,所以我们做了一个PAM模块,这样就可以帮助我们解决防暴力突破的方案。

当所有做完以后,我们发现一个问题,我们的前端研发人员认证非常慢,导致很多服务器运转都非常慢,因为服务器每次登录的时候,都会到后端验证他的权限,刚好那天同事的操作是要访问本地文件,每次访问文件都要到后端认证一下,他是不是有这个权限。这边是OpenLDAP比较不错的地方,它说了你可以定义一个不用过来访问问我哪一个用户是不是在这里有权限,我们在etc里面定义了这些,就是说只要用户启动了服务,以后他不管干嘛都不用来找我,我都不用问OpenLDAP做什么,这样避免OpenLDAP有问题,应用有问题,或者应用有问题会导致OpenLDAP有问题。

后面会更刁钻一些,我们项目组找我们,说我们不希望其他项目组登录,虽然现在很简单,每个上去我用账户就能够登录,但是我不希望你来了以后还能够访问另外的项目组。我们在OpenLDAP用户里面,加一行参数,只要加了这个参数,同时在客户端服务器上加了一个参数,服务器只要登录以后看到配置上有这个参数,我就可以访问用户,知道有没有包含我们本机的机密,如果有我不让你登,没有的话我让你登。其实到这一步还没有完成,因为随着我们业务增加有一个问题挺烦的,特别是我们知道运维有时候做操作的时候不希望被打乱,后来我们自己写了一个系统,这个系统做什么呢?这个系统我们在上面可以看到它能够对用户管理,首先可以添加用户,把一些组写进去,我们在后台可以看到这些用户几点几分创建,几点几分消失的。这个怎么做的?

我们分为几步,第一步是用户把需求提交上来以后,然后送到数据库里,我们会有一个API,实时从数据库里获取,我们后台有一个系统,从API或许任务调动,并且用比较土的方式拼接成命令,直接在服务端生效,并且把生效结果送到API,然后送到数据库,我们就可以看到是M什么样的结果。

这是另外一个高效管理,因为我们服务器到现在差不多一周快的上一百个服务器,但是这也给我们带来一些管理上的问题,在这方面我们也有自己的一些解决方案,如果大家以后有在用的情况下,需要我们支持的话也可以来找我们。

整个回顾一下,我们会有一个身份认证,以及架构上的管理,最后我们做了安全管理、高效管理,从2012年到现在经过了四年,基本上没有遇到什么问题,所以我们还是推荐大家使用OpenLDAP。谢谢!

关注中国IDC圈官方微信:idc-quan或微信号:821496803 我们将定期推送IDC产业最新资讯

查看心情排 行你看到此篇文章的感受是:


  • 支持

  • 高兴

  • 震惊

  • 愤怒

  • 无聊

  • 无奈

  • 谎言

  • 枪稿

  • 不解

  • 标题党
2016-09-08 10:59:05
云资讯 2016可信云大会在京隆重召开
9月1日,由工业和信息化部指导,中国信息通信研究院、中国通信标准化协会主办,数据中心联盟承办的“2016可信云大会”在京隆重开幕。来自工业和信息化部、中国通信标准化协 <详情>
2016-09-06 13:28:12
云资讯 阿里云陈峥:DT时代政务行业阿里云破冰实践
9月1日,由工业和信息化部指导,中国信息通信研究院、中国通信标准化协会主办,数据中心联盟承办的“2016可信云大会”在京隆重召开。在云计算重点行业应用分论坛上,阿里云 <详情>
2016-09-06 13:23:06
大数据资讯 芯联达杨宏桥:医疗大数据建设与思考
9月1日,由工业和信息化部指导,中国信息通信研究院、中国通信标准化协会主办,数据中心联盟承办的“2016可信云大会”在京隆重召开。在云计算重点行业应用分论坛上,芯联达 <详情>
2016-09-06 13:19:28
云资讯 中投视讯CTO费有文:移动直播产品开发那点事
9月1日,由工业和信息化部指导,中国信息通信研究院、中国通信标准化协会主办,数据中心联盟承办的“2016可信云大会”在京隆重召开。在云计算重点行业应用分论坛上,中投视 <详情>
2016-09-06 13:16:00
云资讯 慧与(中国)吴明柱:整合农业产业链,促进农业现代化——HPE农业云应用概述
9月1日,由工业和信息化部指导,中国信息通信研究院、中国通信标准化协会主办,数据中心联盟承办的“2016可信云大会”在京隆重召开。在云计算重点行业应用分论坛上,慧与( <详情>