linux 笔记2
超级用户
root账号的UID为0,拥有至高的权限
如果使用DES加密口令,只有前8位有效,而MD5可以超过8个字符
如果以root用户登录系统,系统不会留下以root身份执行的操作的记录.
所以一般是禁止以root身份登录系统的.
1.使用/bin/su成为root用户
不带参数的话提示输入root的密码.
如果只是要以root权限执行一条命令,可以使用/bin/su-c"cmdparams"
这时系统也不会记录root执行了哪些命令,但会记录谁在什么时候变成了root
2.sudo:受限的su
sudo采用命令行作为参数,然后以root身份(或另一个受限用户)执行.
sudo读取文件/etc/sudoers,这个文件列出了授权使用sudo的人以及允许他们
在每台主机上运行的命令.
sudo保存有一个日志,它记录执行的命令行,命令行执行的主机,請求执行命令行的用户,
运行命令行的目录以及命令行被调用的时间.这些信息可以通过syslog进行记录或者被放入选定的文件中.
一个典型的/etc/sudoers的例子:
#definealiasesformachinesinCS&PHYSICS
Host_AliasCS=tigger,anchor,piper,moet,sigi
Host_AliasPHYSICS=eprince,pprince,icarus
#Definecollectionsofcommands
Cmnd_AliasDUMP=/sbin/dump,/sbin/restore
Cmnd_AliasPRINTING=/usr/sbin/lpc,/usr/bin/lprm
Cmnd_AliasSHELLS=/bin/sh,/bin/bash,/bin/tcsh,/bin/ash,/bin/bsh
#Permissions
mark,edPHSYSICS=ALL
herbCS=/usr/sbin/tcpdump:PHYSICS=(operator)DUMP
lyndaALL=(ALL)ALL,!SHELLS
%wheelALL,!PHYSICS=NOPASSWD:PRINTING
3.使用sudo需要注意的地方
要修改/etc/sudoers,请使用visudo命令
/etc/sudoers里面的命令使用全路径名
攻克了sudoers的密码会给系统带来安全隐患.
4.其他一些伪用户
a.bin系统命令的老属主.如今的系统大多认为这账号是多余的,通常只使用root账号.另一方面,bin既然是'标准'账号,所以还真不能废除它.
b.daemon无特权系统软件的属主
有些文件和进程是操作系统的一部分,但不需要由root做其属主,这使用daemon了.相应还有一个'daemon组'.但是现代系统也比较少用它们了.
c.nobody:普通NFS用户
网络文件系统(NFS)在进行文件共享的时候,使用nobody账号代表其他系统上的root用户.