新建用户:1.useradd 2.passwd
完成的操作: (1)/etc/passwd添加一行 (2)/etc/shadow添加一行 (3)/etc/group添加一行 (4)创建用户家目录 (5)创建用户邮件文件
例:创建用户jerry,要求: uid:777,主组:hadoop(800),附加组:python(850)、hbase(860),家目录:/home/jerry,描述:I am jerry,密码:123456,最少使用3天才能再次修改,最长使用30天,到期前5天发送报警。
实现步骤: 1、创建用户基本信息(/etc/passwd).
vi /etc/passwd
jerry:x:777:800:I am jerry:/home/jerry:/bin/bash
2、检查用户
id jerry
3、使用openssl来生成密码。 格式:openssl passwd -1 -salt "string"
说明: -1:表示md5加密算法。 -salt:表示加密的时候插入杂志(提高安全性)
openssl passwd -1 -salt "abc123"
jerry:!!:19691:3:30:5:::
4.修改密码文件
jerry:$1$abc123$vjm57GdqK4XMr62ZyVaki.:19691:3:30:5:::
$1$123456$wOSEtcyiP2N/IfIl15W6Z0
zhangsan:$1$123456$wOSEtcyiP2N/IfIl15W6Z0:19864:3:30:5:::
5.创建密码文件
vi /etc/group
oop:x:800
python:x:850:jerry
hbase:x:860:jerr
6.创建家目录
cp -r /etc/skel /home/jerry
cd /home
chown -R jerry.hadoop /home/jerry/
chown -R --reference=user150 jerry #按照 user150 的所有者和群组来更改 jerry 目录的所
有者和群组。
7.创建用户邮件
cd /var/spool/mail/
touch jerry
chmod 660 jerry
chown jerry.mail jerry
8.测试用户是否可以正常使用
[root@localhost mail]# userdel jerry
[root@localhost mail]# useradd jerry
useradd:警告:此主目录已经存在。不从 skel 目录里向其中复制任何文件。正在创建信箱文件: 文件已存在。
用户授权
如果是普通用户需要执行特殊操作,有两种方法:
1. su- root 切换到root账户进行特殊操作,然后再回返回到普通用户 2. sudo
su命令:
优点:使用简单。 缺点: root密码容易泄露 普通用户执行操作不可控。
duso命令:
作用:给普通用户授权,让普通用户执行特定的操作。 缺点:需要进行权限配置。
优点: 1.不要切换到root用户(buyongzhidaoroot密码) 2.用户可执行预定的操作 3.可以记录每个用户执行过的命令。
sudo使用: 第一步:通过sudo配置文件为普通用户授权。 第二步:普通用户执行特殊操作。
sudo的配置文件: /etc.sudoers
格式: root ALL=(ALL) ALL.
用户名 主机=(用户名) 全部命令。
例: jerry ALL=jerry ALL。 %aa 代表给aa组授权
ALL:全部命令; /usr/bin/touch授权单个命令; /usr/bin/touch,/usr/bin/ls 授权多个命令用,隔开; /usr/bin/* 授权/usr/bin下的全部命令。
修改配置文件:visudo
添加一行 jerry ALL=(root) /usr/bin/touch,/usr/bin/ls
用普通用户执行命令:
用管理员身份执行需要: sudo命令 来执行。 例: sudo touch /a
前面有%代表是个用户组授权。