您的位置:首页 > 运维架构 > Linux

Linux中用户和组管理

2018-08-15 21:01 483 查看
1、用户与组概述1)用户账号:超级用户、程序用户、普通用户2)组账号:每个用户都至少属于一个组,这个组称为该用户的基本组;如果该用户还属于其他组,则称这些组为该用户的附加组3)UID和GIDUID:root用户:0;程序用户:1——499;普通用户:500——60000GID:root组账号:0;程序组账号:1——499;普通组账号:500——60000注:普通用户和组账户的UID、GID范围的配置文件:/etc/login.defs,可以更改2、用户账号管理1)用户账号文件/etc/passwd(7个字段)root:x:0:0:root:/root:/bin/bash
用户名:口令:UID:GID:用户全名:宿主目录:登陆Shell注:所有用户都可以读取passwd文件,但只有root用户才能修改2)用户密码文件
/etc/shadow(9个字段)nobody:!!:13675:0:99999:7:::
字段 1 用户名字段 2 使用MD5加密的密码字符串,为空表示无密码,当为“*”或“!!”时表示此用户不能登陆系统
字段 3 密码被修改的天数,自 1/1/1970 开始计算(0表示下次登陆时必须修改密码)
字段 4 密码最短使用天数(0 表示“可在任何时间修改”)
字段 5 密码最长使用天数(1 表示“永远都不能修改”)/etc/login.defs
字段 6 提前多少天警告用户密码将过期,默认为7天(-1 表示“没有警告”)
字段 7 密码过期后多少天内禁用此用户(-1 表示“永远不会禁用”)
字段 8 帐号失效时间(-1 表示“该帐户被启用”)
字段 9 保留字段,供将来使用注:只有root用户能读取shadow文件,不允许直接编辑此文件,但可强制修改保存3)用户账号初始配置文件
账户模板目录:/etc/skel.bash_profile:账户每次登陆时执行.bash_logout:账户每次退出登陆时执行.bashrc:每次加载shell时执行若希望对所有用户配置,可修改全局配置文件/etc/profile和/etc/bashrc注:文件~/.vimrc是vi编辑器默认加载的配置文件,可在每个用户的宿主目录中建立,用来设置参数4)添加用户useradd
-u :指定用户的UID -g :指定用户的基本组名(或使用GID)-G :指定用户的附加组名(或使用GID)-d :指定用户的宿主目录位置-e :指定帐号失效时间,如-e 2012-02-14-M :强制不建立使用者宿主目录-m :强制建立使用者宿主目录-s :指定用户的登陆Shell,默认是/bin/bash,如果指定为/sbin/nologin,表示禁止登陆注:①将用户的shell指定为/sbin/nologin或/bin/false都可以禁止用户登陆 ②区别:/bin/false是最严格的禁止login选项,一切服务都不能用,而/sbin/nologin只是不允许login系统,ubuntu中默认使用的就是/bin/false ③adduser也可用于创建用户,但已经很少使用5)设置密码passwd
管理员root可以修改所有人密码,并且没有密码安全限制;普通用户只能修改自己的密码,需要提供原密码,并且有密码复杂性限制(如不能直接使用英文单词,长度最少为6位等)-l 锁定用户-u 解锁用户-d清空用户密码,用户登陆系统时不再需要密码-S查看用户的状态(是否被锁定)6)删除用户userdel
-r表示将用户的宿主目录一并删除7)修改用户属性usermod
-l 更改账户的登录名称-u 修改用户uid-g 修改用户的基本组名-G 设置用户的附加组名列表-a 追加用户新的附加组,必须结合-G选项一起使用-d 修改用户的宿主目录-s 修改用户的登录shell-L 锁定用户(等同于pssswd -l)-U 解锁用户(等同于passwd -u)注:通过passwd -l锁定用户时shadow中对应密码字段前会添加两个“!!”,而通过usermod -L锁定时会添加一个“!”,需要注意,一般passwd -l -u和usermod -L -U分别成对使用3、组账号管理1)组账号文件
/etc/grouproot:x:0:root,webmaster组账户号:密码:GID:组成员注:在/etc/group文件中基本组对应的用户账号不会列出2)组密码文件(很少使用到)
/etc/gshadow root:::root3)添加组groupadd、删除组groupdel、修改组groupmod 如果某些用户的基本组是即将被删除的组,则该组无法被删除4)添加、删除组成员gpasswd(也可用于修改组密码)-a 添加组成员,例gpasswd –a mike root 将用户mike加入到root组-d 删除组成员,例gpasswd –d mike root 将用户mike从root组中删除-M 定义组成员列表,例gpasswd -M tom,jack,mike root5)查询用户和组id:查询用户的身份标识信息,所属基本组、附加组finger:查询用户的详细信息groups:查询用户所属的组users、w、who:查询当前登陆的用户信息system-config-users:图形化管理工具4、切换用户susu命令可以在不重新启动系统的情况下临时改变用户的身份语法:su - 用户名-表示使用目标用户的shell环境,相当于--login,不使用-则保持原用户的shell环境-c 选项表示临时以指定用户的身份执行命令,执行后会恢复原用户,如:su - -c ifconfig root注:①省略用户名参数时表示切换为root
②当由root切换为其他用户时不需要输入密码,否则需要输入密码
③很多Linux发行版默认情况下都不允许使用root用户登陆系统,如Fedora等,虽然rhel默认可以
5、vi参数配置文件.vimrc文件.vimrc是vi编辑器默认加载的参数配置文件,可在每个用户的宿主目录中建立~/.vimrc在.vimrc配置文件中,每行表示一条参数设置,设置的项对应于vi编辑器末行模式中的相关设置命令通过在.vimrc文件中添加参数配置,可以实现一些自动设置,如自动显示行号、智能缩进、语法高亮显示vi /root/.vimrcset nuset aiset background=darksyntax on注:①默认情况下用户的宿主目录下并没有.vimrc文件,需要手动创建,其只针对当前用户有效 ②如果希望针对所有用户有效,可直接修改/etc/vimrc文件,其为vi编辑器的全局参数配置文件
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux 用户