充分发挥 sudo 的作用
2009-11-26 00:00:00 来源:WEB开发网# -- ibmeng sudo root
ibmeng host1 = (root) NOPASSWD:ALL
接下来,创建用户 “ibmeng”,使用 chpasswd 设置此用户的密码。在这个示例中,密码是 ibmpw。然后在此用户的配置文件中添加一条消息,告诉用户如何使用 sudo 访问 root 用户。因此,在工程师登录时,他会看到以下消息:
IBM Engineer, to access root account type: sudo -u root su -
当然,在工程师离开之后,应该锁住 ibmeng 账户。
清单 2. dis_ibm#!/bin/sh
# dis_ibm
dest_hosts='host1 host2 host3 host4'
for host in $dest_hosts
do
echo "doing [$host]"
$ssh -T -t -l root $host<<'mayday'
host=`hostname`
cp /etc/sudoers /etc/sudoers.bak
if [ $? != 0 ]
then
echo "error: unable to cp sudoers file"
exit 1
fi
echo "# -- ibmeng sudo root\nibmeng $host = (root) NOPASSWD:ALL">>/etc/sudoers
mkuser su=false ibmeng
if [ $? = 0 ]
then
echo "ibmeng:ibmpw" | chpasswd -c
else
echo "error: unable to create user ibmeng and or passwd"
exit 1
fi
chuser gecos='IBM engineer acc' ibmeng
if [ -f /home/ibmeng/.profile ]
then
echo "echo \"IBM Engineer, to access root account type: sudo -u root su -"\"
>>/home/ibmeng/.profile
fi
mayday
done
结束语
sudo 允许您控制谁可以作为谁运行什么命令。但是,必须充分理解 sudoers 的特性,才能完全了解它的影响和责任。
赞助商链接