系統中selinux與ftp有關用法
簡稱 SELinux,安全增強型 ,它是一個 Linux 核心模組,也是 Linux 的一個安全子系統
SELinux 主要作用就是最大限度地減小系統中服務程序可訪問的資源(最小許可權原則)
安全上下文是 SELinux 的核心
安全上下文可分為「程序安全上下文」和「檔案安全上下文」。
只有兩者的安全上下文對應上了,程序才能訪問檔案。
先將之前建立的/ftphome/westos 下面的所有檔案更改許可權為最大許可權:並檢視
這個情況下,所有westos使用者同時擁有下載的權力,那麼我們如果需要指定使用者擁有下載權力應該如何做呢?
首先建立一個指定由使用者名稱稱的檔案:如下
下面在配置檔案中需要加入128行,指定系統要在我們指定檔案中讀取資料
然後在我們指定的westos1中寫入,指定westos1 可以下載檔案
下面我們實驗一下,發現,此時只能用westos1 使用者上傳為檔案,westos2使用者被拒絕了,那麼我們就建立成功了
現在我們檢查一下selinux的狀態,發現是關閉的
在/mnt下面建立檔案,並將檔案移動到/var/ftp中
我們檢視到移動過來的檔案的前一段資料是空的
我們開啟selinux 讓他enforcing
然後再重起一下:
然後再建立檔名稱為westosfile1的檔案,
現在我們發現缺失的檔案部分存在了
繼續檢視檔案狀態的上下文與lftp連線進去的上下文不同,這樣我們就無法訪問這些目錄了,那怎麼解決這些問題呢
我們需要給這些位檔案加上相同的上下文
更改之後就如下圖:
再在配置檔案中更改進去的路徑
但是這種更改是臨時的,那麼我們如何永久更改呢,那就需要更改檔案了:
我們先檢視系統的登陸狀態
發現/ftphome的上下文是正確的
檢視一下他們都是由於將檔案寫入例如系統
我們現在將指定檔案也寫入系統:
檢查以下,寫入成功了
我們可以用這個命令可以對ftp中的一些許可權進行更改
如下是檔案許可權開啟
對於上下文中的匿名使用者寫許可權開啟的時候要注意,需要新增rw。
檢測一下,我們是否設定的成功,成功了
那就像上面,我們在實驗建立檔案過程中,由/mnt下面移動過來的檔案上下安全不同的話,系統是如何載入這些檔案的呢?主要是由一部分軟體來做這部分工作:
比如:我們再/mnt下面建立了一個檔案hello再移動到/var/ftp下面
發現看不見hello
但是我們可以再日誌中檢視到這些資訊
主要就是由以下這些軟體來工作收集了,沒有這些軟體的話,就看不到這些檔案的內容了