码迷,mamicode.com
首页 > 系统相关 > 详细

Linux用户权限集中管理方案

时间:2018-04-05 23:10:36      阅读:333      评论:0      收藏:0      [点我收藏+]

标签:网络   use   rpm   导致   ble   linux用户   php   存在   用户角色   

一、问题

服务器多,各个服务器上的管理人员多,ROOT权限泛滥,经常导致文件莫名其妙丢失,老手和新手对服务器的熟知程度不同,安全存在不稳定和操作安全隐患。

二、方案

利用sudo配置指定用户只能执行指定的命令

# 通过用户别名定义用户集
CHUJIADMINS 初始运维
GWNETADMINS 网络工程师
CHUJI_KAIFA 初级开发
# 通过命令别名定义权限集
CY_CMD_1    初级运维
GY_CMD_1    高级运维
CK_CMD_1    初级开发
GK_CMD_1    高级开发
GW_CMD_1    高级运维

2.1 创建用户

# 建立3个初级运维,一个高级运维,一个网络工程师,一个运维经理,密码统一是111111
for user in chuji001 chuji002 chuji003 senior001 net001 manager001
do
    useradd $user
    echo "111111"|passwd --stdin $user
done

# 建立5个开发人员,属于phpers组,一个高级开发,一个开发经理
groupadd -g 666 phpers
for n in `seq 5`
do
    useradd -g phpers php00$n
    echo "111111"|passwd --stdin php00$n
done
for user in seniorphpers kaifamanager001
do
    useradd $user
    echo "111111"|passwd --stdin $user
done

2.2 sudo配置

##User_Alias
User_Alias CHUJIADMINS = chuji001,chuji002,chuji003
User_Alias GWNETADMINS = net001
User_Alias CHUJI_KAIFA = %phpers          # phpers组

##Cmnd_Alias 
Cmnd_Alias CY_CMD_1 = /usr/bin/free,/usr/bin/iostat,/usr/bin/top,/bin/hostname,/sbin/ifconfig,/bin/netstat,/sbin/route
Cmnd_Alias GY_CMD_1 = /usr/bin/free,/usr/bin/iostat,/usr/bin/top,/bin/hostname,/sbin/ifconfig,/bin/netstat,/sbin/route,/sbin/iptables,/etc/init.d/network,/bin/nice,/bin/kill,/usr/bin/kill,/usr/bin/killall,/bin/rpm,/usr/bin/up2date,/usr/bin/yum,/sbin/fdisk,/sbin/sfdisk,/sbin/parted,/sbin/partprobe,/bin/mount,/bin/umount
Cmnd_Alias CK_CMD_1 = /usr/bin/tail/app/log*,/bin/grep /app/log*,/bin/cat,/bin/ls
Cmnd_Alias GK_CMD_1 =  /sbin/service,/sbin/chkconfig,/usr/bin/tail/app/log*,/bin/grep /app/log*,/bin/cat,/bin/ls,/bin/sh ~/scripts/deploy.sh
Cmnd_Alias GW_CMD_1 =/sbin/route,/sbin/ifconfig,/bin/ping,/sbin/dhclient,/usr/bin/net,/sbin/iptables,/usr/bin/rfcom,/usr/bin/wvdial,/sbin/iwconfig,/sbin/mii-tool,/bin/cat/var/log/*

##Runas_Alias
Runas_Alias OP = root          # 普通用户使用root用户角色操作

##pri config
senior001       ALL=(OP)    GY_CMD_1
manager001      ALL=(ALL)   NOPASSWD:ALL
kaifamanager001 ALL=(ALL)   ALL,/usr/bin/passwd [A-Za-z]*,!/usr/bin/passwd root,!/usr/sbin/visudo,!/usr/bin/vi *sudoer*
seniorphpers    ALL=(OP)    GK_CMD_1
CHUJIADMINS     ALL=(OP)    CY_CMD_1
GWNETADMINS     ALL=(OP)    GW_CMD_1
CHUJI_KAIFA     ALL=(OP)    CK_CMD_1

2.3 测试

技术分享图片

2.4 清空用户数据

for user in chuji001 chuji002 chuji003 senior001 net001 manager001
do
    userdel -r $user
done

for n in `seq 5`
do
    userdel -r php00$n
done
for user in seniorphpers kaifamanager001
do
    userdel -r $user
done

groupdel phpers

三、参考

企业项目案例1-用户权限集中管理方案-问题分析

Linux用户权限集中管理方案

标签:网络   use   rpm   导致   ble   linux用户   php   存在   用户角色   

原文地址:https://www.cnblogs.com/okokabcd/p/8724620.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!