Linux基本安全防護技術
概述
常用命令
-
whoami
-
顯示與當前的有效使用者ID相關聯的使用者名稱
-
簡單的說,就是在操作之前確認一下我是誰
-
-
id
-
檢視使用者的id
-
id username
檢視username使用者的id
-
-
useradd
-
新增使用者
-
-m : 一起建立使用者的家目錄,如果沒有-m指令不會建立使用者的家目錄
-
-s: 指定使用者的登入shell型別,
-s /bin/bash
-s 可以不用指定
-
示例:
uaseradd -m -s /bin/bash xxx
adduser命令更好用:
直接 adduser 使用者名稱就好
-
-
userdel
-
刪除已存在使用者
-
-r: 使用者主目錄以及使用者主目錄下檔案一起刪除
-
示例:
userdel -r newuser
-
-
passwd
-
修改使用者口令
-
兩種典型用法:
-
修改當前使用者口令
passwd
-
修改指定使用者口令
passwd username
-
-
常用術語
-
訪問、主體、客體
-
訪問: 兩個實體間的資訊流動
-
主體: 發起訪問的實體,主動的, 通常為代表某個使用者的程序
-
客體: 響應訪問的實體,被動的, 通常為檔案
-
-
訪問型別
訪問就是資訊的流動,可以分為讀、寫、執行三種類型
* 讀(Read/r):
* 資訊由客體流向主體
* 寫(Write/w):
* 資訊由主體流向客體
* 執行(Execute/x):
* 將客體的內容引入記憶體並作為程式碼執行
補充說明 在有些文件中,目錄檔案的執行,稱之為搜尋(Search)對目錄的內容進行搜尋(查詢)。
以 cat file
為例解讀上述基本概念
訪問許可權(許可位)
檔案許可權
我們探討檔案許可權, 準確的描述是“使用者A對檔案B的訪問許可權” , 判斷使用者A是否被允許訪問檔案B。 可以分兩步:
-
先判斷使用者A的類別(所謂A的類別,就是A是屬主? 屬組? 還是其他?)
-
在根據使用者的類別,檢視相應的許可位
屬主、屬組、“其他”的概念
在探討一個檔案是否被允許訪問,首先需要明確訪問者的“身份類別",因為檔案的訪問許可就是以檔案的屬主、屬組、其他來組織的。
以一下內容,參考自《Linux私房菜-基礎篇》, 舉例比較清晰
關於者和屬組的關係, 我們可以使用目前“家庭”的觀念來來進行解說。假謳有一家人,家裡只有三兄弟,分別是王大毛、王二毛、王三毛三個人, 而這個家庭是登記在王大毛的名下的!所以,“王大毛家有三個人,分別是王大毛、王二毛,王三毛”, 而且這三個人都有自己的房間,並且共同擁有一個客廳喔!
-
屬主的概念: 由於王家三人各自擁有自己的房間, 所以, 王二毛雖然可以進入王三毛的房間,但是二毛不能翻三毛的抽屜喔!那樣會被三毛K的! 因為抽屜裡面可能有三毛自己私人的東西,例如情書啦,日記啦等等的,這是“私人的空間”,所以當然不能讓二毛拿啦。
-
屬組的概念: 由於共同擁有客廳,所以王家三兄弟可以在客廳開啟電規機啦、 翻閱報紙啦、坐在沙發上面發呆啦等等的! 反正,只要是在客廳的玩意兒,三兄弟都可以使用喔! 因為大家都是一家人嘛!
這樣說來應該有點曉得了喔! 那個“王大毛家”就是所謂的“屬組”, 至於三兄弟就是分別為三個“屬主”,而這三個屬主是在同一個屬組裡面的喔! 而三個屬主雖然在同一屬組內,但是我們可以設定“許可權” 好讓某些使用者個人的資訊不被屬組的屬主查詢,以保有個人“私人的空間”啦! 而設定屬組共享,則可讓大家共同分享喔!
-
“其他”的概念: 那麼今天又有個人,叫做張小豬,他是張小豬家的人,與王家沒有關係啦! 這個時候,除非王家認識張小豬,然後開門讓張小豬進來王家,否則張小豬永進沒有辦法進入王家, 更不要說迚到王三毛的房間啦!不過,如果張小豬透過關係認識了三毛,並且跟王三毛成為好朊友,那麼張小豬就可以透過三毛進入王家啦!呵呵!沒錯!那個張小豬就是所謂的“其他人,Others”囉!
因此, 簡單的說,在 Linux 裡面,任何一個檔案都具有"User, Group 及 Others”三種身份的個別許可權, 我們可以將上面的說明以底下的圖來解釋:
一般來說, 我們通常用簡寫字母來表示屬主、屬組、其他:
-
u: 屬主
-
g: 屬組
-
o: 其他
從ls命令輸出,進行逐列介紹
Panda.Guo@2018-04-03 14:32:43 $ ls -l
drwxr-xr-x 2 panda panda 4096 6月 3 14:32 dir
-rwxr--r-- 1 panda panda 0 6月 3 13:43 file1
許可權(訪問許可位)
許可位,共計4組組成, 每組3位,
-
S/Owner/Group/Other
-
S組
-
b3 → SUID;b2 → SGID;b1 -> Sticky
-
-
Owner組
-
b3 → Read;b2 → Write; b1 -> Execute
-
-
Group組
-
b3 → Read;b2 → Write; b1 -> Execute
-
-
Other組
-
b3 → Read;b2 → Write; b1 -> Execute;
-
-
可以採用chmod來修改許可權、
-
普通檔案許可權控制:
-
r 可讀檔案
-
w 可寫檔案
-
x 可執行檔案
-
-
目錄檔案
r:讀取目錄下的目錄項
w:在目錄下建立、移動重新命名和刪除檔案