新建用户

​ Linux创建新用户的命令(useradd 、adduser)

命令相关参数

useradd [-d home] [-s shell] [-c comment] [-m [-k template]] [-f inactive] [-e expire ] [-p passwd] [-r] name
-c:加上备注文字,备注文字保存在passwd的备注栏中。
-d:指定用户登入时的启始目录。
-D:变更预设值。
-e:指定账号的有效期限,缺省表示永久有效。
-f:指定在密码过期后多少天即关闭该账号。
-g:指定用户所属的起始群组。
-G:指定用户所属的附加群组。
-m:自动建立用户的登入目录。
-M:不要自动建立用户的登入目录。
-n:取消建立以用户名称为名的群组。
-r:建立系统账号。(userdel -r -f //表强制并且删除用户的主目录)
-s:指定用户登入后所使用的shell。
-u:指定用户ID号

adduser 和 useradd 区别(在两个命令都不加任何参数的情况下)

使用useradd添加的用户默认是三无(无home,无密码,无系统shell),因此可能会出现创建了不能登录桌面
使用adduser时,创建用户的过程更像是一种人机对话,系统会提示你输入各种信息,然后根据这些信息创建用户
使用不同命令创建用户 如下

如果要使用useradd命令添加的用户

Ⅰ.mkdir创建用户目录

1
mkdir  /home/test10

Ⅱ.使用usermod修改用户的shell

1
usermod  -s  /bin/bash  -d  /home/test10  test10

Ⅲ.并将/etc/skel目录下的文件复制到该用户目录下

1
cp  /etc/skep/*  /home/test10

Ⅳ.设置密码(passwd)之后,新建用户就能和普通用户一样登录
如果还不能登录 你可以需要 sudo rm -r ~/.Xauthority* && sudo reboot
参考文章:http://blog.csdn.net/u010355144/article/details/45558073

Linux用户登录流程

1.找/etc/passwd 是否有账号
2.到/etc/group中读出用户的UID和GID(账号的家目录与shell也一并读出)
3.到/etc/shadow找对应UID的密码是否相符
4.进入shell管控阶段

用户相关的文件

/etc/passwd 用户信息文件
/etc/shadow 密码文件
/etc/group 用户组文件
/etc/gshadow 用户组密码文件
/etc/skel 用户环境目录文件
/etc/motd 登录信息
/etc/login.defs 用户默认属性文件
参考文章:http://www.cnblogs.com/qmfsun/p/3674024.html

普通用户不能使用sudo命令

还有一个问题就是普通用户不能使用sudo命令.如图(用户不在sudoers文件中。此事不被报告)

su xxx 切换管理用户修改 配置文件 /etc/sudoers 添加如图所示配置

口令安全

/etc/shadow 中的密文 可以使用工具爆破 john and johnny(推荐)
参考文章:http://blog.csdn.net/mikayong/article/details/6903201
eg1:

1
2
cat /etc/shadow > ~/miwen
john ~/miwen


eg2:



安全配置建议:
建议在/etc/login.defs文件中配置:PASS_MAX_DAYS 90 #新建用户的密码最长使用天数
建议在/etc/login.defs文件中配置:PASS_MIN_DAYS 0 #新建用户的密码最短使用天数
建议在/etc/login.defs文件中配置:PASS_WARN_AGE 7 #新建用户的密码到期提前提醒天数
设置连续输错10次密码,帐号锁定5分钟
vi /etc/pam.d/system-auth 修改配置文件,添加如下:
auth required pam_tally.so onerr=fail deny=10 unlock_time=300
设置密码至少8位,包含一位大写字母,一位小写字母和一位数字
vi /etc/pam.d/system-auth 修改配置文件,添加如下:
password requisite pam_cracklib.so difok=3 minlen=8 ucredit=-1 lcredit=-1 dcredit=1
设置用户登录3次以上就在20秒以内拒绝这个用户登录
vim /etc/pam.d/login 修改配置文件,添加如下
auth required pam_tally.so deny=3 unlock_time=20