sudo权限的自动添加删除脚本

本文发布时间: 2019-Mar-21
前言: 作为一个运维人员,经常会有开发的同事审请一些服务器的sudo权限,而且有同事离职,也需要将sudo权限移除,(开发同事离职之后并不是马上就要将其帐号删除,至少要保存三个月的时间 ),服务器少了还好说,那如果有几十台的话,那就不好办了,自己写了一个简单的脚本,也方便了运维的工作,贴出来给大家分享下,有不对的地方还请大家多指教!1、添加sudo的脚本#cat addsudo.sh #!/bin/bash# Owner by Only.liu# date 2012/11/01HOSTLIST="/opt/qunar/tools/etc/adduser_hosts.cf"SUDOFILE="/etc/sudoers"#for HOST in `cat ${HOSTLIST}`do ssh only.liu@${HOST} 'sudo grep "'$1'" '${SUDOFILE}'' > /dev/null if [ "$?" != 0 ] then echo "User $1 on ${HOST} not have sudo!" ssh only.liu@${HOST} 'echo "'$1' ALL=(ALL) NOPASSWD:ALL,!/bin/su"' >> ${SUDOFILE} && echo "User $1 add sudo success!" else echo "User $1 already have sudo!" fidone~ 2、删除sudo的脚本#cat delsudo.sh#!/bin/bash# Owner by Only.liu# date 2012/11/01HOSTLIST="/opt/qunar/tools/etc/adduser_hosts.cf"SUDOFILE="/etc/sudoers"#for HOST in `cat ${HOSTLIST}`do ssh only.liu@${HOST} 'sudo grep "'$1'" '${SUDOFILE}'' > /dev/null if [ "$?" = 0 ] then echo "User $1 on ${HOST} have sudo!" ssh only.liu@${HOST} 'sudo sed -i '/$1/d' '${SUDOFILE}'' && echo "User $1 on ${HOST} delete success!" else echo "User $1 on ${HOST} already delete sudo!" fidone示例:若要添加tom的sudo权限:#sudo ./addsudo.sh tom若要删除tom的sudo权限:#sudo ./delsudo.sh tom注解: 先通过我的帐号only.liu ssh所要加sudo权限的机器,通过grep 命令查看机器的/etc/sudoers文件中是否有同事的帐号,通过退出状态来判断,如果有刚输出User on host have sudo!;若没有,通过sed命令在最后追加一条,最后输出add success!本文出自 “洋仔 Learning……” 博客


(以上内容不代表本站观点。)
---------------------------------
本网站以及域名有仲裁协议。
本網站以及域名有仲裁協議。

2024-Mar-04 02:08pm
栏目列表