1.用户下放权限配置
-超级用户下放权限配置:
vim /etc/sudoers //无语法检测
visudo //编辑文件/etc/sudoers,但有语法检测
-文件内容编辑:
@@
99 ##Allow student to run useradd in my host
100 student desktop126.example.com=(root) /usr/sbin/useradd
@@
注意: **怎么去查看主机名? hostname
**怎么查看命令useradd所在的文件? which useradd
**怎么实现第一次无密码执行命令? NOPASSWD:
/user/sbin/useradd
-下放权限的用户怎么使用
sudo useradd hello
2.用户认证信息的控制
-一个文件: /etc/shadow
(user:passwd:最后一次修改密码时间:最短有效期:最长有效期:警告期:非活跃期:失效期:保留期)
-两个命令:
chage(-d,-m,-M,-W,-I(大写i),-E)
passwd(-S,-d,-l,-u,-n,-x,-w,-i)
3.权限
a.查看文件属性(详细信息)
ls -l
结果显示:
-rw-r--r-- 1 root root 0 Dec 30 21:43 hello
drwxr-xr-x 2 root root 6 Dec 30 21:44 test
第一个字节:代表文件类型
- //普通文件
d //目录
s //socket文件
l //链接文件
u:文件所有人对于该文件的权限
g:文件所属组成员对该文件所拥有的权限
o:其他人对文件所拥有的权限
r(read):读权限
对于文件:cat
对于目录:ls
w(write):写权限
对于文件:vim,gedit
对于目录:touch/mkdir,rm/rmdir
x(exec):执行权限
对于文件:普通文件不需要执行权限
对于目录:能否cd到该目录
b.修改文件所有人和所有组
chown
chown student 文件
chown student.student 文件
chown student 目录 -R
chown student:student 目录 -R
chown --reference=find.all file
//参考find.all修改file文件的所有人和所有组
chgrp
chgrp student 文件
chgrp student 目录 -R
chgrp --reference=find.all file
c.修改文件权限
-通过字符方式修改
chmod <+|-|=> 目标
eg:chmod u+r,g-w,o=r /mnt/file
chmod u=rw,g=r,o-r /mnt/file
-通过数字方式修改
r:4 w:3 x:1
7:rwx 6:rw- 5:r-x 4:r--
3:-wx 2:-w- 1:--x 0:---
u:rwx g:rx o:-
d.系统默认权限的设定
umask值:系统默认要去掉的权限;
注意:默认文件不需要执行权限。
-从系统安全角度来看,umask越大越安全。
-如何设定umask
/etc/bashrc
/etc/profile
e.特殊权限
1).o+t权限:sticky,粘制位
效果:只针对于目录,当目录上有o+t的权限时,所有用户在该目录下均可创建文件,但只有文件所有人和root用户可以删除该目录下的文件。
设定方式:
chmod o+t 目录
chmod 1777 目录
在系统中的应用:
[root@desktop126 ~]# ll -ld /tmp/
drwxrwxrwt. 28 root root 4096 Dec 31 01:39 /tmp/
2).u+s权限:suid,冒险位
效果:只针对于二进制可执行文件,该命令发起的程序是以该命令所有
人的身份去执行。
设定方式:
chmod u+s 二进制可执行文件
chmod 4777 二进制可执行文件
在系统中的应用:
[root@desktop126 ~]# ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 27832 Jan 29 2014 /usr/bin/passwd
[root@desktop126 ~]# ll /etc/shadow
---------- 1 root root 1493 Dec 30 21:37 /etc/shadow
3).g+s权限:强制位
效果:
针对二进制可执行文件:该命令发起的程序是以该命令所有组的身份去执行;
针对目录:目录新建文件的所属组与该目录的所有组保持一致;
设定方式:
chmod g+s 文件|目录
chmod 2755 文件|目录
f.find命令
find 目录 寻找条件 条件内容
寻找条件:
-name //根据名字查找
-user //根据文件的所有人去查找
-group //根据所属组去查找
-perm //根据权限寻找(-666,并且;/666,或者)
-type //man find(搜寻-type)
-mmin //最后修改时间(-4,4min以内修改的)
-size //根据文件大小
-maxdepth //根据最大深度查找
-mindepth //根据最小深度查找
条件的连接:
-o //或者
-a //并且
对找到的所有执行:
-exec
eg:find /etc -name passwd -exec cp{} /mnt \;
g.locate 查找文件
-速度更快,但新建文件必须更新后才能找到
-更新方式:updatedb
f.打包
tar cvf etc.tar /etc
c:create
v:显示过程
f:指定包名
tar tf etc.tar
t:显示包的内容
tar f etc.tar -r westosfile
r:向包中添加文件
tar f /root/etc.tar --get westosfile
--get:获取包中的westosfile文件
tar f /root/etc.tar --delete westosfile
--delete:删除包中的westosfile文件
tar xf etc.tar -C /mnt/
x:解开包
-C:指定解包的目录