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

Linux组和用户的管理、禁止普通帐号登录、批量添加用户、给普通用户赋权

2012-11-20 19:08 399 查看
############################################
# 一、配置文件 #
############################################
1、/etc/group:组信息配置文件
①vi /etc/group
第1列:表示组名
第2列:表示组密码[占位符]
第3列:表示组号
第4列:表示组内用户列表
②/etc/group 文件里的每一行都对应系统里的一个组
③组密码存到了/etc/gshadow文件里,第2列只是一个占位符
④ 组号0表示root组
组号1--499属于系统组 [自动创建的]
500以后的属于用户组,即用户手动添加的

2、/etc/gshadow:组密码配置文件

3、/etc/passwd:用户配置文件
①vi /etc/passwd
第1列:用户名
第2列:用户密码[真正的密码存储到了/etc/shadow文件里]
第3列:用户id
第4列:所属组的组id
第5列:注释信息
第6列:用户的主目录 比如:zhangsan /home/zhangsan
第7列:shell类型
②文件里每一行都对应着系统里的一个用户

4、/etc/shadow:用户密码配置文件
①vi /etc/shadow
第1列:用户名
第2列:用户密码

############################################
# 二、组和用户的相关命令 #
############################################
1、groupadd 组名[组号为已有组号的最大值+1]
功能:添加组
-g 添加组的同时,指定该组的组号
groupadd -g 700 组名[-g 700指定组号700]

2、groupmod 组名
功能:修改组
-n 修改组名
-g 修改组号
groupmod -n 新组名 旧组名
groupmod -g 新组号 组名

3、groupdel 组名
功能:删除组
注意:如果当前组内存在用户,不能删除改组

4、useradd [参数] 用户名
功能:添加用户
-g group_name :添加用户时,指定用户的组
useradd -g 组名 用户名
注:在添加新用户的同时,如果没有指定用户的组,则自动创建一个
以用户命名的组,然后将用户添加至该组
-d home:添加用户时,指定用户的主目录
useradd -d [用户主目录绝对路径] -g 组名 用户名

注意:
创建用户之后,默认是不允许登录的,必须设置他的密码

4.1、passwd [设置用户密码]
passwd 用户名

5、usermod[参数] 用户名
功能:修改用户
-c comment:修改用户的注释信息
usermod -c 注释信息 用户名
-l login_name:修改用户名
usermod -l 新用户名 旧用户名
-d home_dir:修改用户的主目录
usermod -d 新的主目录 用户名
-g group_name:修改用户的所属组
usermod -g 组名 用户名

6、userdel[参数] 用户名
功能:删除用户
默认:删除用户同时不会删除该用户的主目录
-r :删除用户的同时删掉用户的主目录
userdel -r 用户名

############################################
# 三、禁止普通帐号登录 #
############################################
1、禁止某个用户
/etc/shadow 保存用户密码的文件
找到这个用户,在前面加!

2、禁止所有用户
/etc/nologin
在/etc/目录下,创建一个叫nologin的文件
只要存在这个文件,系统中所有普通账户不能登录

############################################
# 四、用户口令及相关命令 #
############################################
1、passwd[选项]用户
功能:设置某个用户的密码
-S 查看当前用户密码状态
passwd -S 用户
-l 锁定用户[不能登录]
passwd -l 用户
-u 解锁
passwd -u 用户
-d 删除密码 [登录时,就没有输入密码的选项]
passwd -d 用户

2、gpasswd[参数] 组名
功能:添加或删除组成员(附属组)
-a user_name 添加
gpasswd -a 用户 附属组名
-d user_name 删除

3、su
功能:切换用户
普通用户之间的切换需要密码
普通用户切换至root用户需要密码
root切换至普通用户不需要密码

4、newgrp
功能:切换组
当一个用户登录至系统,默认他当前的组是它的主组,创建的文件也属于这个组

5、whoami
功能:显示当前用户

6、id
功能:查看某个用户的详细信息[包括附属组]

7、groups
功能:查看某个用户的所属组[包括附属组]

8、chfn [用户名称]
功能:设置用户资料

9、finger [用户名称]
功能:显示用户资料

############################################
# 五、批量添加用户 #
############################################
1>创建用户文件user.txt 添加:
user1:x:701:612::/home/user1:/bin/bash
user2:x:702:612::/home/user2:/bin/bash
user3:x:703:613::/home/user3:/bin/bash
user4:x:704:613::/home/user4:/bin/bash

2>创建密码文件passwd.txt 添加:
user1:111111
user2:222222
user3:333333
user4:444444

3>newusers:表示从一个文件中读取用户信息并写入到/etc/passwd之中
newusers user.txt
此时passwd中就会添加user.txt中的用户信息
/home下也会创建相应的主目录

4>chpasswd < 密码文件:表示将/etc/shadow文件的密码写到/etc/passwd之中
chpasswd < passwd.txt

5>pwunconv:表示将/etc/passwd 里的密码写回到/etc/shadow文件之中
pwunconv

############################################
# 六、赋予普通用户特俗权限 #
############################################
1、/etc/sudoers: 保存了普通用户可以执行特殊权限的信息

2、visudo: 编辑/etc/sudoers文件
在sudoers中添加给普通用户赋予的权限:
user2 localhost=/sbin/shutdown
user2 localhost=/usr/sbin/useradd
注:localhost后面是命令的绝对路劲
whereis 命令[查看命令的绝对路径]
/sbin中是超级用户才能执行的命令

3、sudo[选项]:以超级用户身份执行某些命令
①查看赋予了我哪些权限
sudo -l
②以超级用户身份执行某些命令
sudo /usr/sbin/useradd
注:执行超级用户赋予的权限时,需写全路径[否则在bin中查找命令]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: