
大家登陆linux 服务器时,不同职能的员工水平不同,因此导致 *** 作很不规范,root权限泛滥(几乎大部分人员都有root权限),经常导致文件等莫名其妙的丢失,老员工和新员工对服务器的熟知程度也不一样,这样使得公司服务器安全存在很大的不稳定性,为了解决上述问题,单个用户管理权限过大现状,现提出针对linux服务器用户权限集中管理的解决方案。
企业生产环境用户权限集中管理项目方案 1. 问题现状 2. 项目需求 3. 具体实现 4. 实施方案 5. sudo配置注意事项
企业生产环境用户权限集中管理项目方案 1. 问题现状
当前我们公司服务器上百台,每个服务器上的管理人员很多(开发+运维+DBA+产品+市场),在大家登陆linux 服务器时,不同职能的员工水平不同,因此导致 *** 作很不规范,root权限泛滥(几乎大部分人员都有root权限),经常导致文件等莫名其妙的丢失,老员工和新员工对服务器的熟知程度也不一样,这样使得公司服务器安全存在很大的不稳定性,及 *** 作安全隐患,调查企业服务器环境,50%以上的安全问题来自内部而不是外部。为了解决上述问题,单个用户管理权限过大现状,现提出针对linux服务器用户权限集中管理的解决方案。
2. 项目需求我们希望超级用户密码掌握在少数或者唯一的管理员手中,又希望多个系统管理员或相关权限的人员,能 够完成更多更复杂的自身职能相关的工作,又不至于越权 *** 作导致系统安全隐患。
linux最小化原则:1 安装软件最小化 。2 目录文件权限最小化。3用户权限最小化。 4 程序权限运行最小化
那么,如何解决多个系统管理员都能管理系统而又不让超级权限泛滥的需求呢?这就需要sudo来替代管理或结合 su命令来完成这样的苛刻且必要的企业服务器用户管理需求。
针对公司里不同部门,根据员工的具体工作职能(例如:开发,运维,数据库管理员)。分等级、分层次的实现对linux服务器管理的权限最小化、规范化。这样即使减少了运维管理成本,消除了安全隐患,又提高了工作效率,实现了高质量的、快速化的完成项目进度,以及日常系统维护。
@L_403_24@ 4. 实施方案说明:实施方案一般是由积极主动发现问题的运维人员提出问题,然后写好方案,在召集大家讨论最后确定的方案,实施部署,最后后期总结维护。
思想:在提出问题之前,一定要想到如何解决,一并发出来解决方案。
信息采集(含整个方案流程)
模拟创建3个初级运维账号,一个高级运维,一个网络工程师,一个运维经理,密码统一为11111111
[[email protected] ~]# for n in chuji001 chuji002 chuji003 net001 manager001 ; do useradd $n ; echo "11111111" |passwd --stdin $n ;done;[[email protected] ~]# useradd GY01 [[email protected] ~]# echo "11111111" |passwd --stdin GY01[[email protected] ~]# useradd senior001[[email protected] ~]# echo "11111111" |passwd --stdin senior001
建立五个开发属于python组
[[email protected] ~]# groupadd -g 888 python[[email protected] ~]# for n in `seq -f kaifa%02g 5` ; do useradd -g 888 $n ;echo "11111111" |passwd --stdin $n; done;
建立开发经理和高级开发账号
[[email protected] ~]# useradd kaifamanager |echo "11111111" |passwd --stdin kaifamanager[[email protected] ~]# useradd senior002[[email protected] ~]# echo "11111111" |passwd --stdin senior001
8 . 更改/etc/sudoers文件
在sudoers后面加入下列内容:
# Cmnd_Alias by OuyoungCmnd_Alias CYCMD1 = /usr/bin/free,/usr/bin/iostat,/usr/bin/top,/bin/hostname,/bin/netstat,/sbin/ifconfig,/sbin/routeCmnd_Alias GYCMD1 = /usr/bin/free,/sbin/route,/sbin/iptables,/etc/init.d/*,/bin/nice,/bin/killCmnd_Alias CKCMD1 = /usr/bin/tail /app/log*,/bin/grep /app/log/*,/bin/cat,/bin/lsCmnd_Alias GKCMD1 = /sbin/service,/sbin/chkconfig,/usr/bin/tail /app/log*,/bin/lsCmnd_Alias KMCMD1 = ALL,/usr/bin/passwd [a-zA-Z]*,!/usr/bin/passwd root,!/bin/vi /etc/sudoers,!/usr/bin/vim /etc/sudoers,!/usr/sbin/visudoCmnd_Alias GWCMD1 = /bin/hostname,/bin/Ping,/usr/bin/netstat# User Aliases by OuyoungUser_Alias CYUSER = chuji001,chuji002,chuji003,chuji004,chuji005User_Alias GYUSER = GY01,senior001User_Alias CKUSER = %pythonUser_Alias GKUSER = senior002User_Alias MANUSER = kaifamanagerUser_Alias GWUSER = net001# configCYUSER ALL=(ALL) CYCMD1GYUSER ALL=(ALL) GYCMD1CKUSER ALL=(ALL) CKCMD1GKUSER ALL=(ALL) GKCMD1MANUSER ALL=(ALL) nopASSWD: KMCMD1GWUSER ALL=(ALL) GWCMD1
9 . 验证配置如下:
用户 kaifamanager 可以在该主机上运行以下命令: (ALL) nopASSWD: ALL,!/usr/bin/vim,!/usr/sbin/visudo 用户 kaifa01 可以在该主机上运行以下命令: (ALL) /usr/bin/tail /app/log*,/bin/ls用户 kaifa02 可以在该主机上运行以下命令: (ALL) /usr/bin/tail /app/log*,/bin/ls
10 . 验证成功后发邮件知所有有关的人员权限配置成功,并附带 *** 作说明,有必要的话培训讲解
11 . 制定权限申请流程及申请表
12 . 后期维护,不是特别紧急的需求,一律需要走申请流程。
服务器多了,如果同业务的服务器,且用户管理需求一样,可以通过分发工具批量分发/etc/sudoers(注意用户,组及权限),注意授权ALL再进行排除时有时候会让我们防不胜防,这种先开后关的策略不是好的策略
以上是内存溢出为你收集整理的企业生产环境用户权限集中管理项目方案全部内容,希望文章能够帮你解决企业生产环境用户权限集中管理项目方案所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)