18.1.2-linux目錄文件隱藏屬性和特殊權限

18.1.2html

linux目錄文件隱藏屬性和特殊權限linux

內容:

1.linux權限查看 計算  修改 
2.文件和目錄rwx含義 
3.各類權限拒絕錯誤排查
4.如何讓網站經過權限控制 儘可能安全
5.經過umask計算默認的權限 
6.文件系統的屬性(隱藏屬性) 
7.linux特殊權限 suid , 粘滯位(/tmp

第1章 網站權限-經過控制權限讓網站安全
安全

1.1 文件或目錄安全  (比較安全的權限)

file    rw-r--r--    root  root   oldboy.txtbash

dir    rwxr-xr-x   root  root   oldboy.txt服務器

file    644       dir   755           屬於  root網絡

 

1.2 網站安全:      ---站點目錄(存放網站程序)

/app/blog            網站程序存放app

/app/blog/upload      用戶上傳目錄(用戶的頭像 上傳的圖片或附件)ide

 

 

1.3 如何讓/app/blog目錄安全

1.3.1  

1.blog目錄 測試

file 644 root root 網站

dir  755 root root  

2.blog/upload目錄

file 644 www www  

dir  755 www www  

運行博客 經過www用戶(虛擬用戶,被破譯也不能夠登陸系統)運行  (root用戶運行太危險,一旦破解就掌控了服務器)

 

1.3.2 環境準備:

useradd www (普通用戶) 

mkdir -p /app/blog/upload

touch /app/blog/awk.html /app/blog/renyi.jpg   /app/blog/li.avi

1.3.3 測試及報錯

su - www

#www用戶上傳一個文件

#www用戶在 upload裏面建立一個文件

[www@oldboyedu43-lnb blog]$ touch upload/oldboy.jpg

touch: cannot touch `upload/oldboy.jpg': Permission denied

[www@oldboyedu43-lnb blog]$ #upload目錄

[www@oldboyedu43-lnb blog]$ ls -ld upload/

drwxr-xr-x 2 root root 4096 Dec 28 17:47 upload/

[www@oldboyedu43-lnb blog]$ #其餘人 r-x

1.3.4 解決方法1 給其餘用戶寫權限

chmod o+w upload  

drwxr-xrwx 2 root root 4096 Dec 28 17:47 upload/

權限太大了

 

1.3.5 解決方法2 upload目錄送給 www

chown www.www upload

drwxr-xr-x 2 www  www 4096 Dec 28 17:47 upload/

 圖片1.png 

noexec 不讓運行

最後  只能上傳,不能查看

 

               1) --網站是以www用戶的身份運行

網站權限的控制  2)--file 644 dir  755 root root

                3)upload  file 644      www  www

代碼程序控制  1)--上傳上來的文件沒法運行

              2)--上傳上來沒有執行權限

 

第2章 umask   --反掩碼 是什麼 怎麼計算  如何修改

2.1 Linux中默認的最大權限

file  666

dir   777

 

 

 

2.2 umask

2.2.1 做用:控制系統默認的權限

2.2.2 查看 [root@oldboy ~]# umask

0022

2.2.3 經過umask計算 系統默認的權限

file  666

-022

=644

dir  777

-022

=755

2.2.4 umask

臨時

[root@oldboy ~]# umask 032

[root@oldboy ~]# umask

0032

新建立文件

file 666

-032    

=634

+010

=644

文件:奇數位加一

 

新建立目錄

dir 777

  -032

=745

目錄正常

 

永久(瞭解,千萬不要改)

/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

果如

第3章 文件系統屬性(文件的隱藏屬性)

3.1 與文件系統屬性相關命令       查看隱藏權限lsattr

查看文件系統屬性lsattr      = == ==ls attribute

[root@oldboy ~]# lsattr

-------------e- ./install.log.syslog

-------------e- ./oldboy.txt

 

 

修改文件系統屬性chattr      = = == = change attr   + 加某種屬性  - 去除某種屬性

a  ==只能追加 (不能刪除或修改原文件內容,只能在最後追加)

i  ==無敵了(不能刪除,修改或追加)

1:  a屬性

[root@oldboy ~]# lsattr oldboy.txt                             查看文件系統屬性

-------------e- oldboy.txt

[root@oldboy ~]# chattr +a oldboy.txt                          爲文件加上a屬性

[root@oldboy ~]# lsattr oldboy.txt

-----a-------e- oldboy.txt

[root@oldboy ~]# echo "I love you">>oldboy.txt                 能夠爲文件追加內容

[root@oldboy ~]# echo "I love you">oldboy.txt                  不能夠清空原文件增長內容

-bash: oldboy.txt: Operation not permitted

[root@oldboy ~]# rm -f oldboy.txt                              不能夠刪除原文件

rm: cannot remove `oldboy.txt': Operation not permitted

[root@oldboy ~]# chattr -a oldboy.txt                           最後實驗完記得把文集系統屬性改回來

[root@oldboy ~]# lsattr oldboy.txt

-------------e- oldboy.txt

2:   i屬性

[root@oldboy ~]# lsattr oldboy.txt                              查看文件屬性

-------------e- oldboy.txt                   

[root@oldboy ~]# chattr +i oldboy.txt                           爲文件加上i屬性

[root@oldboy ~]# lsattr oldboy.txt

----i--------e- oldboy.txt

[root@oldboy ~]# echo "I love you">>oldboy.txt                  不可往文件中追加內容

-bash: oldboy.txt: Permission denied

[root@oldboy ~]# echo "I love you">oldboy.txt                   不可清空文件

-bash: oldboy.txt: Permission denied

[root@oldboy ~]# \rm -f oldboy.txt                              不可刪除文件

rm: cannot remove `oldboy.txt': Operation not permitted

[root@oldboy ~]# chattr -i oldboy.txt                           實驗完記得把文件系統屬性改回來

[root@oldboy ~]# lsattr oldboy.txt

-------------e- oldboy.txt

 

 

3.2 重要用法:

主要命令文件   +i

重要配置文件   +a

第4章 查看系統負載系列

w  查看系統負載

top 動態查看負載 (顯示不全)

做業:yum安裝  --(爲何安不上  怎麼及解決)

htop升級版的top

iotop 查詢系統磁盤讀寫

iftop 查看網絡信息 流量

第5章 特殊權限

5.1 情景引入:                 查看特殊權限   ls -l     s

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

drwxrwxrwt. 5 root root     4096 Jan  2 03:42 /tmp/                      特殊權限,顏色的不一樣

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

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

 

5.1.1 -s  用戶在運行這個命令時至關於root用戶   ===4    ==suid setuid

[root@oldboy ~]# ls -l /usr/bin/passwd                            查看文件隱藏權限

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

[root@oldboy ~]# chmod u-s /usr/bin/passwd                        爲文件去除s隱藏權限

[root@oldboy ~]# ls -l /usr/bin/passwd

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

[root@oldboy ~]# chmod u+s /usr/bin/passwd      也能夠 chmod 4755 爲文件添加s隱藏權限

[root@oldboy ~]# ls -l /etc/shadow                                用戶密碼文件默認都沒有任何權限

----------. 1 root root 1094 Jan  2 01:20 /etc/shadow

[root@oldboy ~]# su - oldboy

[oldboy@oldboy ~]$ passwd                                         oldboy用戶能夠設置本身的密碼

Changing password for user oldboy.

Changing password for oldboy.

(current) UNIX password:

New password:

BAD PASSWORD: it is too simplistic/systematic                     密碼太簡單,複雜一點就OK

1. 用戶運行passwd命令

2. 用戶至關因而root用戶

3. root用戶能夠修改/etc/passwd文件

 

5.1.2 -s(小寫)-S(大寫)的區別

你添加 -s(小寫)的選項,查看時有時候會發現變成S(大寫)

若是文件沒有x權限,會變成S;反之,s(小寫)

S(大寫)=s(小寫)+x            s權限必須和x權限搭配

[root@oldboy oldboy]# chmod 4755 gao.txt                  爲文件加上s權限

[root@oldboy oldboy]# ls -l gao.txt

-rwsr-xr-x. 1 root root 28 Jan  2 06:26 gao.txt           顯示權限爲s(小寫)

[root@oldboy oldboy]# chmod u-x gao.txt                   去掉文件x權限

[root@oldboy oldboy]# ls -l gao.txt

-rwSr-xr-x. 1 root root 28 Jan  2 06:26 gao.txt           顯示爲S(大寫

 

5.2 -t 粘滯位   /tmp 目錄 (777必須記住)  ---1    ===sticky

5.2.1 做用 (至關之重要)

任何人均可以在這個目錄裏建立文件(原來的權限是777)

每一個人只能管理本身的文件,其餘人的處理不了

 

 

 

5.3 sgid localte   用戶在運行一個命令的時候,至關於屬於這個命令所在的家庭(用戶組root)   不重要-瞭解

ls -l which local

5.4 特殊權限總結:

1. -s --suid setuid

  做用:運行某一個命令命令的時候至關於這個命令的全部者(root)

  設置方法:chmod u+s /bin/rm chmod 4775 /bin/rm

  危險:全部用戶運行命令的時候都至關因而root

  :/usr/bin/passwd

2. -t  --sticky 沾滯位(1777 /tmp目錄)

  任何人均可以在這個目錄中從建立文件(原來權限是777)

 -t 權限   --- 每一個人只能管理本身的文件,其餘人的處理不了

3  sgid localte  運行某一個命令命令的時候至關於這個命令的用戶組(root)

 

5.5 特殊權限和隱藏屬性查看及修改的區別:

隱藏屬性:

查看:lsattr +文件名

修改:chattr  +a/+i +文件名

特殊權限:

查看:ls -l +文件名 / stat +文件名

修改:chmod 1777 /u+s /+t +文件名

 

5.6 總結:
1.linux權限查看 計算  修改 
2.文件和目錄rwx含義 
3.各類權限拒絕錯誤排查
4.如何讓網站經過權限控制 儘可能安全
5.經過umask計算默認的權限 
6.文件系統的屬性(隱藏屬性) 
7.linux特殊權限 suid , 粘滯位(/tmp


題目:
1.安裝並使用
#htop 升級版top命令 
#iotop 查詢系統磁盤讀寫  
#iftop 查看網絡信息 流量 

2.如何找出系統中帶有特殊權限的文件或目錄

相關文章
相關標籤/搜索