zoukankan      html  css  js  c++  java
  • 默认权限umask、文件系统权限、特殊权限

    第1章 权限相关错误

    1.1 普通用户 ls /root/

    /root  属于root 普通用户没有任何权限,所以无法查看

    [clsn@znix ~]$ ls /root/

    ls: cannot open directory /root/: Permission denied

    [clsn@znix ~]$ ls -ld /root/

    dr-xr-x---. 5 root root 4096 Sep  5 12:05 /root/

    1.2 普通用户touch /root/clsn.txt

    创建文件,要看文件所在目录的权限,/root  属于root 普通用户没有任何权限,所以无法再里面创建文件,创建文件需要有所在目录的wx权限。

    [clsn@znix ~]$ touch /root/clsn.txt

    touch: cannot touch `/root/clsn.txt': Permission denied

    [clsn@znix ~]$ ls -ld /root/

    dr-xr-x---. 5 root root 4096 Sep  5 12:05 /root/

    1.3 普通用户 m -f /etc/passwd

    删除文件需要有文件所在目录的wx权限,普通用户只有r-x权限,所以无法删除。

    [clsn@znix ~]$ m -f /etc/passwd

    rm: cannot remove `/etc/passwd': Permission denied

    [clsn@znix ~]$ ls -ld /etc

    drwxr-xr-x. 78 root root 4096 Sep  5 11:27 /etc

    [clsn@znix ~]$ ll /etc/passwd

    -rw-r--r-- 1 root root 1177 Sep  5 11:27 /etc/passwd

    1.4 普通用户cat /etc/shadow

    查看文件的内容的时候,需要看文件的权限,在这里普通用户对这个文件没有任何权限,所以无法查看文件的内容。

    查看文件的内容要用于文件的r权限。

    [clsn@znix ~]$ cat /etc/shadow

    cat: /etc/shadow: Permission denied

    [clsn@znix ~]$ ll  /etc/shadow

    ---------- 1 root root 881 Sep  5 11:27 /etc/shadow

    1.5 出现错误的解决办法

    1、先确定要操作的是文件还是目录

    2、确当你和操作对象的关系

    3、文件先看文件的权限

    4、目录先看目录的权限

    5查看文件内容、修改文件内容、运行文件(脚本),要看文件的权限

    6查看目录里的内容、删除文件、创建文件、重命名(文件改名),要看目录权限

    第2章 文件的访问过程

    2.1 过程

    2.1.1

    inode

    文件的权限

    block的位置

    block

    文件的实际内容

    文件

    相对路径访问文件

    2.1.2 据对路径访问

    /目录

    目录的block,找对应的文件

    /etc目录的inode

    inode

    文件的权限

    block的位置

    block

    文件的实际内容

    文件

                                                                               

    2.2 关系

    1.文件的名字是存放在所在目录的block里面

    2.文件名与inode的对应关系放在目录的block

    第3章 网站权限-让网站根安全

    3.1 linux系统默认权限

    3.1.1 文件默认权限

    文件最大权限-rw-rw-rw-  clsn.txt 666

    一般会给文件644权限   rw-r--r-- 

    3.1.2 目录默认权限

    目录默认最大权限-rwxrwxrwx 777

    一般会给目录  755 权限rwxr-xr-x  root root clsndir   

    3.2 如何规划网站权限,让网站更加安全

    3.2.1 让网站以www身份运行

    [root@znix /]# useradd www

    3.2.2 让主要的文件归root用户所有

    [root@znix /]# mkdir -p /app/blog

    [root@znix /]# mkdir -p /app/blog/upload

    [root@znix /]# ll -d /app/blog/ /app/blog/upload/

    drwxr-xr-x 3 root root 4096 Sep  6 10:09 /app/blog/

    drwxr-xr-x 2 root root 4096 Sep  6 10:09 /app/blog/upload/

    [root@znix /]# su - www

    [www@znix ~]$ cd /app

    app/         application/

    [www@znix ~]$ cd /app/blog/upload/

    [www@znix upload]$

    3.2.3 对于用户上传的文件处理

    让用户上传的文件放在属于www用户的文件夹中;

    限制文件的后缀;

    上传之后不能查看……

    [root@znix /]# chown www.www /app/blog/upload/

    [root@znix /]# ll -d /app/blog/ /app/blog/upload/

    drwxr-xr-x 3 root root 4096 Sep  6 10:09 /app/blog/

    drwxr-xr-x 2 www  www  4096 Sep  6 10:09 /app/blog/upload/

    [root@znix /]# cd /app/blog/upload/

    [root@znix upload]# touch aaa.png

    [root@znix upload]#

    第4章 umask - 默认权限控制

    控制着linux里面默认的权限

    4.1 系统中文件和目录默认权限

    file---666 -rw-rw-rw

    dir ---777 drwxrwxrwx

    4.2 umask 反掩码计算

    默认的最大权限减去 umask

    4.2.1 umask为偶数

    实例4-1 umask0022

    文件:

    file-  666-022=644

    目录:

    dir-  777-022=755

    4.2.2 umask为奇数

    实例4-2  umask0032

    4.3 umask为奇数时,计算文件的默认权限的时候,要在奇数位加1

    file- 666-032=634

          +010=644

    目录的不变

    4.4 示例umask=035

    [root@znix ~]# umask 035

    [root@znix ~]# touch file035

    [root@znix ~]# mkdir dir035

    [root@znix ~]# ll file035 && ll -d dir035

    -rw-r---w- 1 root root 0 Sep  6 10:42 file035

    drwxr---w- 2 root root 4096 Sep  6 10:42 dir035

    file=642  dir=742

    4.5 永久修改umask的方法

    [root@znix ~]# vim /etc/profile

    if [ $UID -gt 199 ] && [ "`/usr/bin/id -gn`" = "`/usr/bin/id -un`" ]; then

        umask 002

    else

        umask 022

    fi

    解释:

    如果 [ 用户UID>=199 ] 并且  [ 用户的名字 == 用户组名字 ];然后

        umask 002

    那么

        umask 022

    果如

    第5章 文件系统的权限

    5.1 chattr 设置文件系统的权限(change attr)

    chattr  +a  只能追加 append

    chattr  +i   无敌 不能进行任何操作(immutable

    5.2 测试 +a

    只能向文件中追加内容,不能删除

    [root@znix ~]# chattr +a clsn.txt

    [root@znix ~]# lsattr clsn.txt

    -----a-------e- clsn.txt

    [root@znix ~]# echo 123 >> clsn.txt

    [root@znix ~]# > clsn.txt

    -bash: clsn.txt: Operation not permitted

    5.2.1 取掉权限 -a

    [root@znix ~]# chattr -a clsn.txt

    [root@znix ~]# lsattr clsn.txt

    -------------e- clsn.txt

    5.3 测试 +i

    不能对文件进行任何操作,root用户也不能操作。

    [root@znix ~]# chattr +i clsn.txt

    [root@znix ~]# lsattr clsn.txt

    ----i--------e- clsn.txt

    5.4 lsattr

      list attr  显示文件系统的权限

    [root@znix ~]# lsattr -d  /etc/

    -------------e- /etc/

    第6章 linux的特殊权限

    -rw-r--r-- 1 root root 252 Sep  6 11:04 clsn.txt

    这个是9位基础权限。

    linux12位权限,还有3个特殊权限。

    6.1 三种特殊的权限

    [root@znix ~]# ls -ld /tmp/ /usr/bin/passwd  /usr/bin/locate  /bin/ls

    -rwxr-xr-x.  1 root root    117048 Mar 23 02:52 /bin/ls

    drwxrwxrwt. 11 root root      4096 Sep  6 11:29 /tmp/

    -rwx--s--x.  1 root slocate  38464 Mar 12  2015 /usr/bin/locate

    -rwsr-xr-x.  1 root root     30768 Nov 24  2015 /usr/bin/passwd

    6.2 rwsr-xr-x  

    放在主人的位置上 suid ,运行包含suid权限的 命令的时候,相当于这个命令的所有者。

    比如:/usr/bin/passwd修改用户密码

    6.2.1 rm目录suid权限

    [root@znix ~]# chmod u+s /bin/rm

    [root@znix ~]# ll /bin/rm

    -rwsr-xr-x. 1 root root 57440 Mar 23 02:52 /bin/rm

    [clsn@znix ~]$ m -f /root/clsn.txt

    [root@znix ~]# chmod u-s /bin/rm

    [root@znix ~]# ll /bin/rm

    -rwxr-xr-x. 1 root root 57440 Mar 23 02:52 /bin/rm

    6.2.2 suid S与小s

    文件的权限,x权限时+s为小s没有x+s为大S

    [root@znix ~]# ll test.txt

    -rw-r--r--. 2 root root 22 Sep  4 12:28 test.txt

    [root@znix ~]# chmod u+s test.txt

    [root@znix ~]# ll test.txt

    -rwSr--r--. 2 root root 22 Sep  4 12:28 test.txt

    [root@znix ~]# chmod u+x test.txt

    [root@znix ~]# ll test.txt

    -rwsr--r--. 2 root root 22 Sep  4 12:28 test.txt

    6.3 drwxrwxrwt 粘滞位

    [root@znix ~]# ll -d /tmp/

    drwxrwxrwt. 11 root root 4096 Sep  6 11:29 /tmp/

    设置了粘滞位的目录在目录下面创建的文件只能自己管理自己的

    6.4 rwx--s--x  sgid

           用户运行locate的时候是slocate组的。很少使用!

    rwx--s--x.  1 root slocate  38464 Mar 12  2015 /usr/bin/locate

    第7章  系统中病毒怎么办

    7.1 解绝办法

    1、使用top 命令看谁用的cpu最多

    2、找出占用cpu 或内存大的进程的pid号码

    3、根据进程的pid 杀掉进程

    7.2 结束进程的方法

    [root@znix ~]# kill 进程号码

    7.3 top命令

        PID pid process id 进程的号码 系统中是唯一的

        CMD 进程的名字(命令)

     PID   USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                     

     14011 clsn    20   0  102m  672  568 R 19.2  0.1   0:09.45 dd       

  • 相关阅读:
    python3内置函数大全
    字符串格式化及函数
    基础数据和编码
    python基本数据类型
    python基础
    python re模块
    python json模块
    python os模块
    python random模块
    python time模块
  • 原文地址:https://www.cnblogs.com/clsn/p/7597592.html
Copyright © 2011-2022 走看看