|
发表于 2002-10-7 13:44:28
|
显示全部楼层
简单的sudo介绍
su的一个替代程序是sudo。Red Hat 6.2中包含这个软件。sudo允许你设置哪个用户哪
个组可以以root身份执行哪些程序。你还可以根据用户登录的位置对他们加以限制(
如果有人“破”了一个用户的口令,并用这个帐号从远程计算机登录,你可以限制他
使用sudo)。Debian也有一个类似的程序叫super,与sudo比较各有优缺点。
让用户养成良好的习惯。使用root帐号并让多个人知道root的密码并不是一个好的习
惯。这就是www.apache.org被入侵的原因 ... 他们都有root的
特权。一个乱成一团的系统是很容易被入侵的。
sudo
sudo是系统管理员用来允许某些用户以root身份运行部分/全部系统命令的程序。一个明显的用途是增强了站点的安全性,如果你需要每天以root身份做一些日常工作,经常执行一些固定的几个只有root身份才能执行的命令,那么用sudo对你是非常适合的。
sudo的主页在:http://www.courtesan.com/courtesan/products/sudo/
以Redhat 为例,下面介绍一下安装及设置过程:
首先,你能从sudo主页上下载for Redhat Linux的rpm package.
它在ftp://ftp.freshmeat.net/pub/rpms/sudo/
当前最新的稳定版本1.5.9p4。
执行#rpm -ivh sudo* 进行安装,然后用/usr/sbin/visudo编辑/etc/sudoers文件。如果系统提示你找不到/usr/bin/vi但实际上你在目录/bin下有vi程序,你需要ln -sf /bin/vi /usr/bin/vi为 vi 在/usr/bin下创建符号链接。(注:我在Redhat 6.1上遇到,Redhat 5.x上没有此问题)
另外,如果出现某些其它错误,你可能还需要#chmod 700 /var/run/sudo
下面是我的/etc/sudoers文件例子:
[root@sh-proxy /etc]# more sudoers
Host_Alias SERVER=sh-proxy
# User alias specification
User_Alias ADMIN=jephe,tome
# Cmnd alias specification
Cmnd_Alias SHUTDOWN=/etc/halt,/etc/shutdown,/etc/reboot
ADMIN SERVER=SHUTDOWN
jephe SERVER=/usr/bin/tail -f /var/log/maillog
jephe SERVER=/usr/bin/tail -f /var/log/messages
# User privilege specification
root ALL=(ALL) ALL
-----------
既然我经常需要远程登录到服务器观察email log文件/var/log/maillog的变化,因此我加了这一行到 /etc/sudoers,这样我不需要经常登录作为root来完成我的日常工作,改善了安全性。
========================
如果大家对unix/linux安全管理和使用比较有兴趣,建议多去www.nsfocus.com的安全文摘 ... 文章和公告。 |
|