Linux系統裡所有檔案許可權為777會有什麼後果?
777
許可權的意思是,“所有人都能讀寫或者執行這個檔案”。這行命令一跑,你就讓所有使用者都有了最高許可權。為什麼會出問題呢?
1. 任何人在你的系統上都可以想幹嘛就幹嘛。
密碼形同虛設了:所有人都能讀取 /etc/shadow
然後爆破密碼,但更簡單的,直接改密碼就行了!
可執行檔案不安全了:你可以寫一個新的 login
程式讓你無條件登入。
檔案許可權不存在了:要是有人手滑敲了 rm -r /
那就涼涼了。是你跟系統說讓他為所欲為的!
2. 所有初始化要檢查檔案許可權的程式都會炸。
sudo
,sendmail
和很多別的程式都再也打不開了。啟動的時候它們會檢查關鍵檔案的許可權。如果許可權不對就會報錯。
ssh
也會炸(關鍵檔案的許可權如果被改了 SSH 就會覺得不安全,拒絕啟動)。
3. 所有程式上的 setuid
和 setgid
許可權位都丟失了。
777
許可權實際上是 0777
,第一個數字包含了 f="
https:
//docs.oracle.com/cd/E56344_01/html/E53951/secfile-69.html">setuid 和 setgid 許可權位。
有一些程式,比如 passwd
,許可權上自帶了這些位,因為它們必須用特殊許可權啟動。現在這些都不能用了。
4. /tmp
和 /var/tmp
也會炸。
上面第一個數字裡還有一個 sticky
位,這可以防止 /tmp
/var/tmp
裡的檔案被別的使用者刪掉。
很多垃圾腳本里的清理命令都是 rm -r /tmp/*
,沒了 sticky
位臨時目錄裡的檔案就會被刪得一乾二淨。
有些程式的邏輯寫得不好,臨時檔案不見了就會崩潰。
5. /dev
,/proc
和別的一些檔案系統都會炸。
這個問題主要是在老的 Unix 系統上,/dev
會是一個真正的檔案系統。裡面有一些用 mknod
建立的特殊檔案,這些檔案的許可權在重啟以後不會重置。改了這些許可權首先會導致安全問題,還可能導致核心崩潰。
6. Socket(套接字)和 Pipe(管道)可能會炸。
套接字和管道要麼會炸,要麼會有安全問題,因為任何人都可以隨意讀寫了。
7. 所有的檔案現在都是可執行檔案了。
很多人的 PATH
環境變數裡都有 .
這個路徑,這是個壞習慣。隨便誰都能建立一個檔案,改成命令的名字(比如 make
或者 ls
),你就有機率把它執行起來。
8. 有些系統的 chmod
會重置 ACL(訪問控制列表)
這樣的話你除了修復許可權還得修復 ACL,所以這個命令的確是能造成資料破壞的。
已經跑起來的服務和程式大概還能撐一段時間,但如果你想新開一個程式,重啟一個服務,甚至重啟整臺機器,上面的第 2,第 3 點就會在等著你了。
我的公眾號,歡迎大家關注哦!
相關推薦
Linux系統裡所有檔案許可權為777會有什麼後果?
777 許可權的意思是,“所有人都能讀寫或者執行這個檔案”。這行命令一跑,你就讓所有使用者都有了最高許可權。為什麼會出問題呢?
linux下將一個檔案mount為一個檔案系統
This is called mounting a loopback device. 3 steps. Creating the file that can be mounted as a file systemAssigning the file as a block deviceMounting t
Linux系統 /etc/passwd 檔案結構
ger 使用 擁有 沒有 ack 區分 核心 我們 lin /etc/passwd 檔案結構這個檔案的構造是這樣的:每一行都代表一個賬號,有幾行就代表有幾個賬號在你的系統中! 不過需要特刪留意的是,裏頭的多賬號本來就是系統正常運作所必須要的,我們可以簡稱他為系統賬號, 例如
Linux系統——NFS網路檔案系統
在企業叢集架構的工作場景中,NFS網路檔案系統一般被用來儲存共享視訊,圖片,附件等靜態資原始檔,通常網站使用者上傳的檔案都會放到NFS共享裡,然後前端所有的節點訪問這些靜態資源時都會讀取NFS儲存上的資源。NFS是當前網際網路系統架構中最常用的資料儲存服務之一。 叢集:多臺普通伺服器,多臺之
Linux 系統目錄存放檔案基本原則
Linux 的軟體安裝目錄是也是有講究的,理解這一點,在對系統管理是有益的 /usr:系統級的目錄,可以理解為C:/Windows/,/usr/lib理解為C:/Windows/System32。/usr/local:使用者級的程式目錄,可以理解為C:/Progrem Files/。使用者自己編
Linux系統裡讓vim支援markdown格式的語法高亮
Markdown是深受程式設計師喜愛的一個檔案格式。 然而Linux裡預設的vim設定,並不支援markdown格式的語法高亮顯示。 下面就來介紹如何設定使得markdown格式的檔案在vim裡也能享有語法高亮的待遇。 首先安裝一個vim的外掛管理工具: vim-pathogen 它的原始碼地址:
在Linux系統裡安裝Virtual Box的詳細步驟
今天我試圖在Linux 伺服器上安裝Kyma時,遇到如下錯誤訊息: E1009 23:51:37.685891 358 start.go:174] Error starting host: Error creating host: Error executing step: Running precreat
Linux叢集儲存——day5——Ceph叢集上部署Linux系統、Ceph檔案系統、Ceph的物件儲存系統
Ceph叢集儲存的應用 紅帽的Linux已經把Ceph整合到核心中了,可以直接把作業系統裝在分佈儲存檔案中。 將虛擬機器的Linux作業系統安裝在Ceph叢集中: 0. 如同Ceph叢集進行初期環境部署。
linux 系統管理(2) 檔案或目錄數量統計
統計某資料夾下檔案的個數 ls -l |grep "^-"|wc -l 統計某資料夾下目錄的個數 ls -l |grep "^d"|wc -l 統計資料夾下檔案的個數,包括子資料夾裡的 ls -lR|grep "^-"|wc -l 如統計/home/han目錄(包含子目錄)下的所有js檔案則:
LINUX系統排錯 ------- 檔案引導階段檔案的恢復
錯誤一.引導檔案丟失 grub引導檔案/boot/grub2/grub.cfg指定/boot分割槽的位置,用於載入核心,啟動系統初始化程序。 如果系統檔案丟失,讀到boot分割槽,不知道要讀取什麼了,便會停滯不前,出現這種問題,我們應該怎麼辦呢??? 1.模擬問題 rm -fr
Linux常用基本命令-檔案許可權類
一、檔案屬性 Linux系統是一種典型的多使用者系統,不同的使用者處於不同的地位,擁有不同的許可權。為了保護系統的安全性,Linux系統對不同的使用者訪問同一檔案(包括目錄檔案)的許可權做了不同的規定。在Linux中我們可以使用ll或者ls -l命令來顯示一個檔案的屬性以及檔案所屬的使用
python基礎——Linux系統下的檔案目錄結構
單使用者作業系統和多使用者作業系統 單使用者作業系統:指一臺計算機在同一時間只能由一個使用者使用,一個使用者獨自享用系統的全部硬體和軟體資源。 多使用者作業系統:指一臺計算機在同一時間可以由多個使用者使用,多個使用者共同享用系統的全部硬體和軟體資源。 UNIX和Linux
淺談linux系統中pdf檔案的預設開啟方式
atril、gimp和evince,三者均可以開啟application/pdf格式檔案。gimp為一款影象處理軟體;atril為mate環境下常用的文件檢視器;evince為gnome環境下常用的文件檢視器。 某mate桌面和gnome伺服器環境中配置檔案mimeapps.list都定義了applicat
linux系統之常用檔案處理命令
(一)檔案命名規則 (二)常用檔案處理命令 1.ls命令 2.cd命令 3.pwd命令 4.mkdir命令 5.touch命令 6.cp命令 7.mv命令 8.rm命令 9.cat命令 10.more命令 11.head命令 12.tail命令 13.ln命令 &
LINUX系統結構和檔案管理
linux系統結構 1.linux系統是一個倒樹狀結構 2.linux中最大的目錄為“/”,根目錄(絕對路徑總是從根目錄開始) 3.“/”根目錄中的二級目錄是系統裝機時自動建立的 4.linux系統中,我們把“資料夾”稱為“目錄” 二級目錄資訊(需特別注意的目錄
Linux系統上的檔案型別及命令歷史的使用
Linux系統上的檔案型別: -: 常規檔案:及f: d; directory, 目錄檔案: b: block device, 塊裝置檔案,支援已“block”為單位進行隨機訪問 c: character device 字元裝置檔案支援以“ch
在系統裡設定檔案預設開啟APP
在系統裡設定檔案預設開啟APP public boolean setPreferredActivity(String packName,String clsName,Uri uri,String type){ PackageManager packageM
【linux】ftp建立檔案許可權問題
一、問題 有一個這樣的需求,admin為一個Linux為其FTP應用建立的一個有許可權限制的使用者,通過admin使用者可以進行登入FTP服務,登入FTP服務後,建立資料夾,該資料夾的使用者和使用者組都是admin,屬性為755,即只有admin使用者才有寫的許可權,但是,
Linux系統各項目錄檔案的含義
/root/ 根使用者(超級使用者)的主目錄。 /lib/ 包含許多被 /bin/ 和 /sbin/ 中的程式使用的庫檔案。目錄 /usr/lib/ 中含有更多用於使用者程式的庫檔案。/lib目錄下放置的是/bin和/sbin目錄下程式所需的庫檔案。 /bin/ 用
visual studio VisualGDB 無法找到Linux系統標頭檔案
如果Linux裡確認有這個檔案, 可以新建一個Project,在最後一步Include dirs(advanced)的對話方塊,檢查是否包含了標頭檔案的目錄,然後選擇下面的Delete the lcoal cache and re-download every directory,原因可