linux用户管理

用户管理:

1 既然管理,首先要有用户
	# useradd 用户名[user] (简简单单就添加了一个用户)
2 加上用户后你会发现刚添加的用户就是一个花瓶,不能用怎么办?要想用应该这样
	# passwd 用户名[user]	(按照提示输入密码[复杂性,易记性,时效性])
	没设密码在shadow文件2字段是!! or * 
3 新用户添加完密码用ssh 登陆此用户登陆成功,但是一脸蒙蔽,用户在哪呢!
	# vim /etc/passwd (用户在这个文件中,命令模式G 到最下方看到[user])
	3-1: 看是看到用户在这文件夹里躺着呢,但是这一行行的都是什么鬼东西???(小问号有很多朋友)
		# 1) shift+: 退出vim 
		# 2) whereis passwd (whereis 不尽显示命令位置 这家伙还把相关的帮助文档都给显示)
		# 3) centos7 不出以外显示 passwd: /usr/bin/passwd /etc/passwd [[/usr/share/man/man5/passwd.5.gz]] /usr/share/man/man1/passwd.1.gz
		# 4) 3中双中括号中的那个文档就是我们需要的(你要问我怎么知道是这个文档的,我是不会告诉你我是一个个文档打开看的~~~)
		# 5)man 5 passwd (为什么不是路径而是一个5 因为man知道文件在哪,他要你告诉他的是你要打开哪一个版本的文档.gz 前面的数字)
		# 6) 打开后显示
			 6)-1): account:password:UID:GID:GECOS:directory:shell 
			      (帐号:密码:用户ID:组ID:一般的信息:目录:shell)
			 6)-2): account 用户名[user]
			 		password 密码标识[x 代表有密码(不对啊我的密码是123加密后也不能是x呀,!linux 号称最安全稳定的系统, 怎么可能在一个权限为644的文件中显示加密后的密码这不是让我的密码被破解性大大提高吗)]
			 		uid 用户id (给系统看的系统只认识数字0 超级用户 1-999 系统用户 1000-60000 普通用户)
			 		gid 组id 
			 		GECOS 备注
			 		directory 家目录 [/home/user]
			 		shell 用哪个shell解释 [/bin/bash(标准shell)]
	3-2: ...
4 用户是看到了,密码还是没看到,他在哪呢?
	# vim /etc/shadow (用户密码文件 文件权限000 狠吧,谁都不让看,但是,我们有牛逼的root,钢铁之躯 上天入地无所不能)
	4-1: 打开之后发现和passwd 文件差不多(差不多到底差多少???)
	4-2:  一共有9个位置
	4-3: 0 用户名
		 1 sha512 加密后的密码
		 2 创建此用户时的时间戳 [16676]1970-1-1
		 3 现用密码与上个密码的修改间隔时间[0 用户登陆则会立马提示用改密码,修改完成后立马退出要求重新新密码登陆]
		 4 现用密码的有效时间
		 5 距离有效时间提前多长时间提示你修改密码
		 6 宽限天数密码过了有效期几天后必须更改密码(延迟修改[5到期后再过5天强制让用户修改密码])
		 7 密码失效时间
		 8 保留位
5 听说还有个家目录,在哪呢?
	# ls /home/ (会看到刚创建的user 目录,每一个用户都有一个家目录)
	5-1: 你这家伙老喜欢骗我们这老实人,那每一个用户都有一个家目录, 我在/home/ 这个家里也没有看到root的家啊!
	5-2: root用户,他可是超级管理员啊,超级!!!怎么可能在/home/这个小家庭中呢,当然要把家按在最容易看到的地方,好监视你们这些小家庭成员,在哪呢? 试试 ls / 看看是不是有个root 目录 , nao 那不是root他家吗。
	5-3: 哎哎哎,你别走,我刚刚在user目录中ls 了一下啥也没有,ls -a 一下出来好几个东西,这,,,,,,东西哪来的1
	5-4: 系统吗,人做的! 当然是从某个地方已经存在,拷贝过来的呗.(想知道拷贝的哪个地方吗? 叫我一声大哥,大哥告诉你 QAQ )........ 
		# ls -a /etc/skel/ (有没有发现这个文件下的和刚刚添加用户家目录下的义模亿阳)
		没错,新建用户家目录中的内容就是拷贝的/etc/skel/中的内容
		不信! 
		# vim /etc/skel/canglaoshi.txt
		# useradd canglaoshi
		# ls /home/canglaoshi/
		有没有发现ls 不加-a 也有了一个文件 canglaoshi.txt
6 useradd 创建目录功操作如下文件
	/etc/passwd (添加用户信息)
	/etc/shadow (添加用户密码信息)
	/etc/group (添加用户组信息)
	/etc/gshadow(添加用户组密码等信息)
	/var/spool/mail/ (添加用户邮箱文件[与用户名同名])
	/home/用户名[user] (添加用户家目录)
	/etc/skel/ (拷贝此目录中的内容)

7 useradd 的参数
	# useradd -u 6666 -G root,bin -c "test user" -d /home/canglaoshi -s /bin/bash boduolaoshi
	7-1: u 创建用户时手工指定用户uid
		 g 手工指定用户初始组
		 G 手工指定用户附加组
		 d 指定用户家目录
		 s 指定用户登陆shell 默认/bin/bash
8 删除用户
	# userdel -r user (连根拔起,用户家目录一并删除)
	# userdel user (保留用户家目录)
	也可手动删除6中的那些文件
9 useradd 有这么多参数,为什么不带也行
	9-1: 用户默认值文件 
		 # vim /etc/default/useradd
		 [GROUP=100  # 用户默认组 (id 号)[公有模式 是这个,私有模式中系统会默认创建与用户名同名的组] 显然现在我们的是私有模式
		  HOME=/home # 用户家目录 (这就是为什么添加用户的家目录都在/home下,可以随便改自己喜欢的路径)
		  INACTIVE=-1 # 密码过期宽限天数 (shadow文件7字段  在上方4中的6号字段)
		  EXPIRE=     # 密码失效时间(shadow第8字段  4中的7)
		  SHELL=/bin/bash # 默认shell
		  SKEL=/etc/skel  # 模板目录
		  CREATE_MAIL_SPOOL=yes # 是否添加邮箱
		  ] 
	9-2: 可以发现上方文件只定义了 shadow 文件的7 8 字段 ,其它在下方文件
		# vim /etc/login.defs 
		[
			PASS_MAX_DAYS	99999 #密码有效期 5
			PASS_MIN_DAYS	0    # 密码修改间隔 4
			PASS_MIN_LEN	5    # 密码最小5(PAM)[PAM 生效,默认8]
			PASS_WARN_AGE	7    # 密码到期警告 6
			UID_MIN         1000 # 最小最大UID 范围
			UID_MAX         60000
			ENCRYPT_METHOD SHA512 #加密模式

		]
		
10 锁定与解锁用户
	# passwd -l user (锁定用户,用户无法登陆。仅root可用)
		也可以修改shadow 2字段加密密码前加!!
	# passwd -u user (解锁用户,仅root可用)
		也可以修改shadow 2字段加密密码前去掉!!
	# passwd -S user (查询用户密码状态,仅root用户可用)
		user PS 2021-07-28 0 99999 7 -1 (密码已设置,使用 SHA512 算法。)
		PS 后面: 2021-07-28 密码设定的时间 shadow 中是时间戳
				0 密码修改间隔
				99999 有效期
				7 到期前7天提示
				-1 宽限时间 -1 无宽限时间
	3 echo "123" | passwd --stdin user
		shell 脚本中使用 ,为用户添加密码

11 修改用户信息 
	# usermod [-u -g -G -c -d -s -L -U]  user 
		修改用户信息
		# usermod -G root {组名,已存在} user 将user 加入到附加组, 附加组名为root
		# vim /etc/group   (组最后一个字段为附加的用户)
			root:x:0:user	 
	# chage -d 0 user 
		-d 修改日期  (记住这一个就行了,其它用到man一下复制英文丢百度翻译)
		一般shell 脚本中创建用户时用,当前命令的意思是将shadow 文件的第3字段修改为0 即创建时间为1970-1-1
		此用户第一次登陆时会直接进入修改密码,
		修改成功后退出链接
		然后用户需要重新用新密码登陆
12 切换用户
	root 切换普通用户不需要输入密码
	普通用户切换成root 用户 必须输入密码
	# su root 切换成user用户(此是环境变量并没有被改变,用户是root界面也显示# 但是功能还是user 的功能,并没有root所有权限)
		env 回车 
		查看USER=user 
	# su - root 加上 -  前后空格 
		env 回车
		查看USER=root 
		所有信息均是root的
	# su - root -c "whoami"
		临时使用root权限执行一条命令

		
	

用户组管理

1 添加用户组
	# groupadd [-g GID 指定gid] 组名 [canglaoshi]
2 修改用户组
	# groupmod [-g GID 修改id] 组名 [canglaoshi]
	# groupmod [-n 新组名] 组名 [canglaoshi]
		# groupmod -n canglaoshizuimei canglaoshi
			将canglaoshi组名 改为 canglaoshizuimei 
3 删除用户组
	# groupdel 组名 [canglaoshizuimei]	
		如果有用户初始组为canglaoshizuimei 则不能删除canglaoshizuimei
		应该先userdel -r 用户名 [user]
		再 groupdel canglaoshizuimei
		附加组就没这种问题
4 把用户添加到组or 从组中删除
	# gpasswd -a 用户名[canglaoshi] 组名[canglaoshizuimei]
		操作的是附加组
		组必须是已经存在的
		-a 添加到组
	# gpasswd -d 用户名[canglaoshi] 组名[canglaoshiheifen]
		-d 将用户从组种移除
5 将用户加入到扩展组或者删除都可以再配置文件中直接删除或增加
	# vim /etc/group
		chrony:x:995:[[user,canglaoshi]]
		在最后字段添加删除,多个用,
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值