Linux用户管理学习笔记

来源:互联网 发布:sql 微整型 编辑:程序博客网 时间:2024/06/10 21:54

Linux安全系统的核心是用户账户,Linux对于每个账户的权限都有严格的控制。每个用户有一个UID(ID具有唯一性)。

下面首先学习一下与用户账户有关的配置文件:

(1)/etc/passwd文件:

root:x:0:0:root:/root:/bin/bashdaemon:x:1:1:daemon:/usr/sbin:/bin/shbin:x:2:2:bin:/bin:/bin/shsys:x:3:3:sys:/dev:/bin/shsync:x:4:65534:sync:/bin:/bin/syncgames:x:5:60:games:/usr/games:/bin/shman:x:6:12:man:/var/cache/man:/bin/shlp:x:7:7:lp:/var/spool/lpd:/bin/shmail:x:8:8:mail:/var/mail:/bin/shnews:x:9:9:news:/var/spool/news:/bin/shuucp:x:10:10:uucp:/var/spool/uucp:/bin/shproxy:x:13:13:proxy:/bin:/bin/shwww-data:x:33:33:www-data:/var/www:/bin/shbackup:x:34:34:backup:/var/backups:/bin/shlist:x:38:38:Mailing List Manager:/var/list:/bin/shirc:x:39:39:ircd:/var/run/ircd:/bin/shgnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh

这里之列出了部分,每一列代表的意思分别是:登录用户名,用户的密码,用户账户UID,用户组帐号GID,用户账户的文本描述,用户HOME目录位置,用户默认的shell。
root用户也就是系统的根用户UID为0。Linux系统为各种非实际用户的函数创建了大量用户账户,这些称为系统账户。在后台模式中运行的所有服务都需要作为系统用户账户登录到Linux系统。
密码这一行都为“x”,可以理解为占位符……早期Linux系统中,这个地方显示的是加过密的密码。虽然是加过密的,但是还是存在危险性,因为普通用户就可以得到查看这些加过密的密码(因为都有权限查看/etc/passwd),这样势必会存在危险性。所以现在将密码信息放在shadow文件中,下面认识以下/etc/shadow文件
(2)/etc/shadow
shadow文件只有根用户才有权限查看,对于系统中的每一个用户账户,在shadow文件中都有对应的记录。
csc:$6$qox1OAAP$5X/Fd.714v4uFOh3TcWgX8Tmern9jxjPD14jVVh.0AlxPFmxrwUPVAnQtnAxRzaSfEHzVc6DH7T.MJh0tGy8q0:15218:0:99999:7:::sshd:*:15218:0:99999:7:::
每一项代表的意思分别是:用户的登录名,密码上次修改时间距1970.1.1的天数,距能够修改密码时的最小天数,距必须修改密码的天数,距密码逾期并警告用户修改密码的天数,从密码逾期开始到账户被禁用的天数,用户账户已被禁用的天数,扩展字段
从这些项的含义可以看出Linux系统对于用户密码的管理控制很细……
(3)useradd命令
     useradd 如果不加任何参数的话,会使用系统的默认值创建用户,具体系统的默认值有(通过useradd -D查看):
root@csc-desktop:/home# useradd -D
GROUP=100                //将新用户添加到组ID为100的公共用户组里面
HOME=/home               //创建家目录的路径,若新添加用户a,家目录就是/home/a
INACTIVE=-1          //当密码过期的时候,账户不会被禁用
EXPIRE=                      //新账户不会在设定日期被设置为逾期
SHELL=/bin/sh          //新用户默认执行的shell
SKEL=/etc/skel            //系统会将/etc/skel目录中的内容复制到用户的HOME目录
CREATE_MAIL_SPOOL=no //系统是否会在邮件目录中创建一个文件用于用户账户接收文件

若使用默认参数,可直接使用“useradd  用户名” 来添加用户,若要修改某些默认值需要添加参数,具体可以通过man手册查看……
(4)userdel命令
删除用户使用的是userdel命令,如果只是执行“userdel 用户名”,则该命令只是删除passwd文件中的账户信息,不会删除账户在系统中拥有的文件。
如果想将该用户所拥有的文件也删除的话需要添加参数-r(使用-r参数可以删除该用户的家目录和邮件信息)
(5)账户修改
        usermod:它是最强大的用户账户修改实用工具。
        -l: 用于修改用户账户的登录名               -L:用于锁定账户,使其无法登录 -p:修改密码  -U:用于解除账户
        usermod  不  允  许 你 改 变  正 在线 上 的 使 用 者 帐 号 名 称 。
        passwd  用户名  这个命令也可以修改密码
        chsh:修改用户默认的登录shell  如 chsh -s /bin/csh test

原创粉丝点击