/etc/passwd
档案结构以冒号隔开,共分为七个字段,分别是[账号名称、密码、UID、GID、全名、家目录、shell]
UID 另有 0 不非为 0 两种,非为 0 则为一般账号。一般账号又分为系统账号 (1~499) 。可登入者账号 (大于 500)
ACL 可进行单一个人或群组的权限管理,但 ACL 的设置需要有文件系统的支持; ACL的设定可使用 setfacl ,查阅则使用 getfacl ;
PAM 模块可进行某些程序的验证程序!PAM 模块有关的配置文件位于
/etc/pam
.d/* 及
/etc/security/
*
Q:如何让
test
具有root权限?
A: 将
test
的UID 和GID 字段变成 0
Q:如何让
test
不能登录?
A: 在
/etc/passwd
中设置
/sbin/nologin
/etc/shadow
的密码字段和第八个字段
Q:如何修改一般用户和root密码?
A: root可用
passwd
随意修改一般用户密码;root密码忘记了只能在单人维护模式中修改;
useradd
userdel
usermod
passwd
useradd
-u 700 -g
users
youngray
/etc/default/useradd
新添加用户的默认值
/etc/login
.defs 密码参数等
/etc/skel/
默认家目录的基准目录,例如添加类似.bashrc的文件
passwd
-luS youngray
chage -d 0 students
userdel [-r] username 连同家目录一起删除
finger youngray 修饰用户信息
chfn chsh
id
添加用户或者群组
/etc/sudoers
或者visudo
这样,
sudo
passwd
可以修改root密码?
su
- -c
"head -n 3 /etc/shadow"
和
sudo
"
head
-n 3
/etc/shadow
" 的区别
特殊shell :
/sbin/nologin
让系统以较低权限运行各个系统服务,系统账号mail,www等
这样,即使某个服务(对应的系统用户)被攻破也不会影响整个系统。
/etc/nologin
.txt
系统各用户之间通信:
例子:write vbird1 pts
/2
mesg n
wall
"I will shutdown my linux server..."
mail vbird1 -s
"nice to meet you"
( . Cc:)
端口:
80: www 22: ssh 21: ftp 25: mail
批量建立账号的脚本:
if
[ ! -f account1.txt ];
then
echo
"所需要账号档案不存在,请建立 account1.txt ,每行一个账号名称"
exit
1
fi
usernames=$(
cat
account1.txt)
for
username
in
$usernames
do
useradd
$username <==新增账号
echo
$username |
passwd
--stdin $username <==和账号相同的密码
chage -d 0 $username <==强制登入修改密码
done