1.linux中的一个用户有两个id,一个是用户ID,简称UID。一个是用户组ID,简称GID。对于UID,为0表示是系统管理员,1~499表示系统账号,500~65535表示可登录账号。
2.用户管理相关的配置文件
备注:在/etc/passwd中有关用户默认的shell配置,有两种比较特殊的:一种是/bin/false,一种是/sbin/nologin。/bin/false是最严格的禁止login选项,一切服务都不能通过设置了/bin/false的账号进行登录,而/sbin/nologin只是不允许系统login,像ftp服务可以使用该种账号进行登录。
3.与账号相关的操作命令
(1)useradd ——新增账号
useradd一些常用的选项如下:
-d HOME_DIR —— 指定用户的家HOME目录
-g GROUP_NAME —— 指定用户所属的用户组
-r —— 建立一个系统账号
-s SHELL_NAME —— 指定用户登录成功后的默认shell
-u num —— 指定用户UID号用法举例:useradd wahaha #创建账号wahaha
useradd -r -g mysql -s /bin/false mysql #创建一个系统账号mysql,属于mysql用户组,账户为不可登录的账户
(2)passwd ——修改用户密码
格式:passwd [账号] #若后面不带账号,表示修改当前用户的登录密码
eg: passwd work
eg: echo "wahaha" | passwd root --stdin #--stdin表示新设置的密码可以来自标准输入设备或者来自管道。
(3)usermod —— 修改用户的属性
usermod -a -G nagios,nagcmd apache #表示将用户apache添加到用户组nagios和nagcmd中,作为apache的辅助用户组(4)userdel —— 删除指定的账户
备注,如果加上-r选项,表示连用户的HOME目录也一起删除
(5)groupadd —— 新增用户组
(6)groupmod —— 修改用户组的相关属性
(7)groupdel —— 删除指定的用户组
(8)gpasswd —— 修改用户组管理密码
4.ACL
ACL可以满足一些特殊维度的权限设置,比如文件A,通过ACL机制,可以为某个账户x单独配置权限,也可以为某个用户组单独配置权限等等。而不仅仅是只能为owner,owner所在用户组,others设置权限。
ACL机制主要是通过setfacl和getfacl来配置的。
5.
关于账户或用户组管理的设置有两种方式,一种是直接修改配置文件,如/etc/passwd; 另一种是通过各种命令去修改,如useradd,userdel等等
6.关于密码和账号一些参数的查看和配置工具chage
作用:密码和账号一些参数的查看和配置。
选项:
-l —— 列出该账号的详细密码参数。
-d —— 修改密码最后一次更改的时间
-E —— 账户失效时间
-m —— 设置距离上次密码修改之后多少天才可以修改密码,为0表示随时可以修改
-M —— 设置距离上次密码修改后多少天,就将强制用户修改密码后才可以登录(即为密码的过期时间设置)
-W —— 密码过期前多少天提醒用户密码即将过期
-I —— 设置密码过期多少天后,密码失效。
常用举例:
(1)列出账号的详细密码参数
[root@localhost ~]# chage -l jianfei
Minimum: 1 #距离上次密码修改后至少Minimum天才可以修改密码,为0表示随时可以修改。
Maximum: 90 #举例上次密码修改后超过Maximum设定的参数,就将强制用户修改密码后才可以登录(即为密码的过期时间设置)。
Warning: 7 #用户密码过期前,提前收到警告信息的天数。
Inactive: -1 #如果一个密码过期后Inactive天后用户还没有修改密码,那么此密码失效,该用户再也无法使用该账号登录系统了。注意与密码失效和密码过期是不一样的。 若配置为-1表示不启动该功能。
Last Change: Oct 14, 2015 上次更改密码的时间
Password Expires: Jan 12, 2016 #是上面Maximum折算成失效的日期
Password Inactive: Never #将上面的Inactive折算成日期,即密码失效日志。
Account Expires: Never #账号过期时间。(2)chage -d (user)是密码最后一次的修改日期。如果接数字的话是从1970年1月1日累加的如 chage -d 5 student 修改时间就变成1970年1月6日。也可以直接接日期如 chage -d 2013-02-18 student 密码修改时间就变成了2013年2月18日。如果用命令 chage -d 0 student 则代表该用户需立即修改密码。
(3)chage -E (user)是账户的失效时间
用法也是直接接数字或者日期如 chage -E 2013-02-18 student 表示student用户在2013年2月19日这一天失效无法使用。默认时间是永远有效如果想要让用户永远有效改成 chage -E -1 student 即可。
(4)chage -m (number) (ueser)是用户密码最短修改时间在这个天数之内无法修改密码。
chage -m 5 student 意思就是说如果今天是2013-2-18用户密码在2013-2-22之前无法修改2013-2-23可以修改密码。
(5)chage -M (number) (ueser)是设置密码最长使用时间,还有几天超过这个时间必须修改密码。
chage -M 5 student 如果今天是2013-2-18用户密码在2013-2-23之前使用都正常2013-2-24会提示用户需要修改密码。
(6)chage -W (number) (ueser)是设置密码过期前的提醒时间默认是7天。
chage -M 5 -W 3 student 如果今天是2013-2-18在用户21 22 23号这三天登录系统时候得到距离密码最后使用时间的提示。
(7)chage -I (number) (ueser)是密码过期后多少天之后账户失效。
chage -M 5 -I 2 student 如果今天是2013-2-18用户密码在2013-2-23之前使用都正常2013-2-24和25号会提示用户需要修改密码如果这两天都没有修改密码账户会在2013-2-26号失效。
本文深入探讨了Linux系统中的用户与账号管理,包括用户ID、组ID的概念,用户管理配置文件及其相关命令,以及ACL权限设置。同时,介绍了密码和账号参数的查看与配置工具chage,并详细解释了账户或用户组管理的两种方式。
1247

被折叠的 条评论
为什么被折叠?



