中小公司统一用户认证方案


 

最近刚入职一家创业公司,因为账号问题各种发愁。以前所在的公司在这方面都很成熟,暂未遇到此类困扰。现将我在工作所遇到的问题分享出来,给大家借鉴与参考。


现象:

  •    开发账号混乱,GitLab、Jira、Confluence各一套账号,那叫一个乱

  •     两个机房 VPN 两套,开发、运维、测试各种切换

  •     WIFI 没有对用户做认证,只是统一密码连接

  •     内部各种运营平台,各种密码


对策:

  •     公司员工各种开发应用账号统一用 LDAP 认证

  •     VPN 账号用 LDAP 认证,机房专线打通(网络组同学做)

  •     WIFI 这边用的是 LDAP + FreeRADIUS + Cisco WLC

  •     为内部运营平台登陆提供LDAP API

 

帐号安全:(一个帐号虽然方便,但同时也又不安全)

  •    定期账号密码修改,根据 LDAP 存储的员工邮件信息,邮件提醒

  •     提供统一的修改密码功能、及密码找回功能

  •     密码复杂度

 

开源解决库:

  • 帐号密码安全这块,用Self Service Password,可以去 http://ltb-project.org/ 下载,上面还有一堆很好用的库

  •  监控,去开源的 http://ltb-project.org/,可以找到 Nagios 插件

  •  内部运营登陆用的接口 Python ldap 模块,用 Flask 封装,提供 HTTP 的接口,方便运营平台开发调用

  •   批量帐号添加,用 Python 写成脚本,生成  ldif  文件,导入 LDAP master

  •    LDAP,用的是 openldap-servers-2.4.40-8.el7.x86_64

  •    操作系统 Centos 7.1

  •    WIFI 认证这块 用到 FreeRADIUS

 

目前简单架构:

  • Ldap Master : ldap1.51reboot.com(提供所有的更新修改)

  • Ldap Slave:ldap2.51reboot.com(提供给各种应用帐号认证)

  • Office Ldap:ldap3.51reboot.com(提供wifi,VPN用)

其中没有用的LB,如果后续需要直接添加 LVS,或智能 DNS 解析一下

 

P.S. 上面的一些操作,从安装部署、sync、各种软件配置、LDAP API 会陆续写成详细的文档,定期更新 。欢迎关注。

 

Tags: