您好,登录后才能下订单哦!
Linux用户、用户组权限管理详解 --- 01
Linux用户管理三个重要文件详解:
Linux登陆需要用户名、密码。/etc/passwd 文件保存用户名。登录Linux时,Linux 先查找 /etc/passwd 文件中是否有这个用户名,没有则跳出,有则读取用户名的user ID 、 group ID 、用户名对应的根目录路径以及所使用的 shell ,最后在 /etc/shadow 中核对该 UID 对应的 PWD 是否正确,正确则登录到该用户的 shell。
1.1 /etc/passwd详解:
cat /etc/passwd
帐号名:用户名称,root 是系统默认最高管理员用户。密码:由于密码保存在 /etc/shadow 文件,所以这里用 “x” 表示,如果没有设置口令,则该项为空。用户ID:系统内部用户的唯一标识ID,其中用户 ID 有以下几种:
0 代表系统管理员,如果想建立一个系统管理员,可以先建立一个普通帐户,再将其用户ID改为 0 。
1-500 系统预留 ID,500 以上是普通用户 ID。
组ID:用户组标识 ID ,/etc/group 有关。描述信息:帐号的描述。用户根目录:用户登录起始目录,登录系统后首先进入此目录。root 用户默认是 /root,普通用户则是 /home/用户名。用户登录shell:用户登录系统后使用的 shell。
1.2 /etc/shadow详解:
早期的 unix 系统,用户帐号、密码都保存在 passwd ,即使密码以密文方式保存在 passwd 中,但 passwd 文件对所有用户可读,存在安全隐患。现在 Linux 使用“shadow”保存密码的密文,使用passwd文件保存用户帐号信息。“shadow” 文件只有管理员用户才可以访问。cat /etc/shadow | tail -4
帐户名称:用户名称,和 passwd 的意思相同。密码: 用户密码的密文。
密码栏的第一个字符为 “*” 表示这个用户不能登录,如果不想让此用户登录,在他前面加个“*” ;
第一个字符为“!”,则表示该用户被禁用,新创建的用户还没密码时就是禁用状态,使用“!!”表示;
第一个字符为“空”,表示用户没有密码,登录时不需要密码。
上次改动密码的日期:密码的最后更改日期,为什么是 15181 ?因为 Linux 计算日期是以1970年1月1日作为1,1971年1月1日就是366,因此推导我修改密码的日期表示为 15181。密码不可被改动的天数:表示多久后才可以改密码。“0” 表示可以随时更改。密码需要重新更改天数:必须在这个时间内更新密码,否则帐号将会暂时失效。99999,表示密码不需要更新。密码变更期期限快到前的警告期:帐号密码失效期限快到时,系统依照这个字段设定,发出警告,提醒用户密码将过期请更新密码,默认是 7。帐号失效期:如果过了警告期没有更新密码,使得密码失效,并且用户在这个字段限定的时间内没有向管理员报告,让帐号重新激活,这个用户将暂时失效。帐号取消日期:这个字段也使用1970年以来的日期计算方法,表示用户在此字段规定的时间之后将无法再使用。保留:保留字段。
1.3 /etc/group 详解:
从第一行开始分析,一共有四项,依次为:组名称:用户组名称了。组密码:一般不需设定,很少使用群组登录。但这个密码也保存在 /etc/shadow 中。组ID:用户组ID了。支持帐号的名称:这个群组的所有帐号。如果你想让david用户属于root这个群组,在第一行最后加上 “,davidi” 注意添加的时候没有空格。
2,用户、用户组管理操作详解:
2.1 adduser 添加用户:
adduser [-u uid][-g group][-d home][-s shell]
-u:直接给出userID
-g:直接给出GID
-d:直接将根目录建立在已存在目录
-s:定义shell
添加用户 garfield
1 adduser garfield
通过前面介绍的三个用户管理文件检验用户 garfield 的添加是否成功:
当我们新建用户时,通过 /etc/login.defs 和 /etc/default/useradd 两文件实现新用户的基本设置。
cat /etc/login.defs
cat /etc/default/useradd
这个文件中SKEL这个选项指定用户的根目录内容是从 /etc/skel 这个目录下复制过去。
2.2 passwd 设置用户密码:
passwd [用户名] 设置密码
2.3 usermod 禁用、启用帐号:
usermod -L [用户名] 禁用帐号
usermod -U [用户名] 启用帐号
usermod -e YYYY-MM-DD [用户名]
usermod 命令禁用和启用账号通过在 /etc/shadow 中相应用户密码位之前添加和删除 "!" 实现的。
2.4 groupadd 创建组:
groupadd [-g gid [-o]] [-r] [-f] group
2.4.1 创建用户的时候指定用户属于那个用户组:
usersadd -g group_name user_name
2.4.2 更改用户的用户组:
usermod –g group_name user_name
2.4.3 将用户添加到其它组:
usermod –G group_name user_name
2.5 修改组的名称:
groupmod -n new_group_name old_ group_name
2.6 修改用户名称:
usermod –l new_user_name old_ user_name
2.7 删除用户:
userdel [-r] user_name
2.8 删除组:
groupdel group_name
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。