linux 笔记2

swency 2010-03-28

超级用户

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用户.

相关推荐

InJavaWeTrust / 0评论 2020-01-28