0

0

Linux系统中的用户管理

巴扎黑

巴扎黑

发布时间:2017-08-02 16:08:23

|

3656人浏览过

|

来源于php中文网

原创

1.常用配置文件

用户信息文件:  /etc/password
密码文件:      /etc/shadow
用户组文件:    /etc/group
用户组密码文件:/etc/gshadow

1.1 /etc/password文件

vim /etc/password

fubh:x:1020:1000::/home/fubh:/bin/bash

man 5 password  #查看配置文件帮助

(密码文件)里每行一条记录,并且每行有这样的格式:

account:password:UID:GID:GECOS:directory:shell
(帐号:密码:用户ID:组ID:一般的信息:宿主目录:shell)

字段描述如下:

              account   使用者在系统中的名字,它不能包含大写字母.

              password  加密的用户密码,或者星号。

              UID       用户 ID 数。

              GID       用户的主要组 ID 数。

              GECOS     这字段是可选的,通常为了存放信息目的而设的。通常,它包含了用户的全名.

              directory 用户的 $HOME 目录.

              shell     登录时运行的程序(如果空的,使用/bin/sh如果设为不存在的执行(程序),用户不能通过login(1) 登录.)

1.1.1 用户分类

UID=0的       是超级用户
UID=500~60000 为普通用户
UID=1~499     是伪用户(与系统和程序服务相关)

1.2 /etc/shadow 文件

root:#21312sd$44:wd323%cds:14945:0:99999:7:::
用户名:加密密码:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:账号闲置时间:失效时间:

1.3 /etc/group 文件

vim /etc/group

sudo:x:27:web,yanghuang,zhoumin,duyp,taofh,luanqq

group_name:password:GID:user_list
(组名:组密码:组ID:组成员)


同徽B2C电子商务软件系统
同徽B2C电子商务软件系统

开发语言:java,支持数据库:Mysql 5,系统架构:J2EE,操作系统:linux/Windows1. 引言 32. 系统的结构 32.1 系统概述 33. 功能模块设计说明 43.1 商品管理 43.1.1 添加商品功能模块 53.1.2 商品列表功能模块 83.1.3 商品关联功能模块 93.

下载

2、常用命令:

添加一个用户:useradd [-ugGdsce] 用户名
useradd -g webadmin -G root,web -c 'test suer' bob
-u UID
-g 缺省所属用户组GID
-G 指定用户属于多个组
-d 宿主目录
-s 命令解析器Shell
-c 描述信息
-e 指定用户失效时间

设置密码:passwd 用户名

修改用户信息:
             修改用户名:    usermod -l 新用户名 旧用户名
             添加用户所属组:usermod -G sys bob_fu

删除一个用户:userdel [-r] 用户名 (-r 删除用户的宿主目录)

给组设置密码: gpasswd 组名
gpasswd [-adArR] 用户名 组名
-a 将一个用户添加到某个组
-d 将用户从组中删除
-A 设置用户组管理员
-r 删除用户组密码
-R 禁止用户切换为改组

例如:
gpasswd webadmin
gpasswd -a bob_fu webadmin
gpasswd -A bob_fu webadmin
gpasswd -r webadmin

锁定一个用户:passwd -l  jack  / usermod -L jack
解锁一个用户:passwd -uf jack  / usermod -U jack

切换所属组:newgrp webadmin
查看所属组:groups lisi

添加组:groupadd [-g GID] 组名 (查看: grep webadmin /etc/group)

删除组:groupdel webadmin

组改名:groupmod -n 新名 旧名

3、其他命令:

pwck   检测/etc/passwd文件(锁定文件)
vipw   编辑/etc/passwd文件查看(锁定文件)
id     查看用户id和组信息
finger 查看用户详细信息
su     切换用户 (su - 用户名)
passwd -S 查看用户密码状态
who、w 查看当前灯虎用户信息
grpck  用户组配置文件检测
vigr   编辑/etc/group文件(锁定文件)
chage [-lmM]  设置密码(LINUX下可用)
      -l 查看用户密码设置 chage -l jack
      -m 密码修改的最小天数
      -M 密码修改的最大天数
      -d 密码最后修改的日期
      -I 密码过期后,牟定账号的天数
      -E 设置密码过期日期,若为0,表示密码立即过期,若为-1则永不过期
      -W 设置密码过期前,开始警告天数

4、案例:授权sofeware 目录 对jack 、mary有写权限

root创建一个目录:
mkdir /software

添加两个用户:
useradd jack
useradd mary

设置密码:
password jack
password mary

添加一个组
groupadd softadm

将用户添加到组
usermod -G softadm jack
gpasswd -a mary softadm

查看组成员:
grep softadm /etc/group

将目录有root组授权为softadm组
chgrp softadm ./software

给组添加目录写权限
chmod g+w ./software

5、扩展(RedHead系列)

5.1 批量添加用户

newusers命令导入用户信息文件
例如 user.info 内容如下
test01::10001:503::/home/test01:/bin/bash
test02::10002:503::/home/test02:/bin/bash
test03::10003:503::/home/test03:/bin/bash
test04::10004:503::/home/test04:/bin/bash
test05::10005:503::/home/test05:/bin/bash
test06::10006:503::/home/test06:/bin/bash

newusers
pwunconv 命令取消 shadow password 功能

pwunconv

chpasswd命令 导入密码

例如pass.info 内容如下
test01:admin+01
test02:admin+02
test03:admin+03
test04:admin+04
test05:admin+05
test06:admin+06

chpasswd
pwconv 命令 将密码写入shadow文件

pwconv

优化方案:写脚本

#!/bin/bash
#add-some-users.sh
#The script is add some users to a new group.

echo "Welcome to the add some users!"
echo -n "Please input the new group(example : mygroup) : "

read  my_new_group  
groupadd $my_new_group

echo -n "Add the $my_new_group group is successful!"
echo "&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&"
echo "Then add some users to the $my_new_group group!"

echo -n "Please input the username(example: student) : "
read new_user
echo -n "Please input the username(begin_id)(example: 1 ) : "
read begin_id
echo -n "Please input the username(end_id)(example: 10 ) : "
read end_id

echo "&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&"

for ((i=$begin_id;i<=$end_id;i++))
do

#add the new_user to the my_new_group,and no add new_user's group

useradd -n -g $my_new_group $new_user$i

#delete the new_user password

passwd -d $new_user$i

chage -d 0 $new_user$i     //

done

echo "&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&"

5.2 限制用户su 为root

groupadd sugroup

chmod 4550 /bin/su
chgrp sugroup /bin.su
ls -l /bin/su
设定后,只有sugroup组总的用户可以使用su切换root
sueradd bob
passwd bob
usermod -G sugroup bob

5.3 用sudo 替代su

sudo 的配置文件 /etc/sudoers

(管理员)编辑配置文件命令:
visudo
格式:用户名(组名)主机地址(主机名)=命令(绝对路径)

例如:
用户授权:bob 192.186.9.3=/usr/sbin/useradd,/usr/sbin/userdel
组授权:  %webadmin host1=/bin/vim /etc/httpd/conf/httpd.conf

相关专题

更多
云朵浏览器入口合集
云朵浏览器入口合集

本专题整合了云朵浏览器入口合集,阅读专题下面的文章了解更多详细地址。

0

2026.01.20

Java JVM 原理与性能调优实战
Java JVM 原理与性能调优实战

本专题系统讲解 Java 虚拟机(JVM)的核心工作原理与性能调优方法,包括 JVM 内存结构、对象创建与回收流程、垃圾回收器(Serial、CMS、G1、ZGC)对比分析、常见内存泄漏与性能瓶颈排查,以及 JVM 参数调优与监控工具(jstat、jmap、jvisualvm)的实战使用。通过真实案例,帮助学习者掌握 Java 应用在生产环境中的性能分析与优化能力。

20

2026.01.20

PS使用蒙版相关教程
PS使用蒙版相关教程

本专题整合了ps使用蒙版相关教程,阅读专题下面的文章了解更多详细内容。

62

2026.01.19

java用途介绍
java用途介绍

本专题整合了java用途功能相关介绍,阅读专题下面的文章了解更多详细内容。

87

2026.01.19

java输出数组相关教程
java输出数组相关教程

本专题整合了java输出数组相关教程,阅读专题下面的文章了解更多详细内容。

39

2026.01.19

java接口相关教程
java接口相关教程

本专题整合了java接口相关内容,阅读专题下面的文章了解更多详细内容。

10

2026.01.19

xml格式相关教程
xml格式相关教程

本专题整合了xml格式相关教程汇总,阅读专题下面的文章了解更多详细内容。

13

2026.01.19

PHP WebSocket 实时通信开发
PHP WebSocket 实时通信开发

本专题系统讲解 PHP 在实时通信与长连接场景中的应用实践,涵盖 WebSocket 协议原理、服务端连接管理、消息推送机制、心跳检测、断线重连以及与前端的实时交互实现。通过聊天系统、实时通知等案例,帮助开发者掌握 使用 PHP 构建实时通信与推送服务的完整开发流程,适用于即时消息与高互动性应用场景。

19

2026.01.19

微信聊天记录删除恢复导出教程汇总
微信聊天记录删除恢复导出教程汇总

本专题整合了微信聊天记录相关教程大全,阅读专题下面的文章了解更多详细内容。

160

2026.01.18

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 7.5万人学习

Git 教程
Git 教程

共21课时 | 2.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号