沙盒技術:linux
1. 查看進程的上下文關聯vim
ll -Z
服務器
drwxr-xr-x. root root unconfined_u:object_r:admin_home_t:s0spa
參數解釋:rest
這條語句經過:劃分紅了四段,第一段 system_u 表明的是用戶,第二段 object_r 表示的是角色,第三段是SELinux中最重要的信息,admin_home 表示的是類型,最後一段 s0 是跟MLS、MCS相關的東西日誌
. 是這個文件正在被selinux保護進程
若是沒有selinux,就會致使攻擊的時候先攻擊一個服務,而後成功的話會提權而後攻擊其餘的服務,ci
2.context: 有關聯的上下文、get
用戶,角色,類型,級別(敏感度高 )it
u表明用戶信息,系統用戶,r規則,系統操縱,t
drwxr-xr-x. root root unconfined_u:object_r:admin_home_t:s0
用戶:
system_u:selinux用戶,系統進程
root_u:root用戶
user_u:系統用戶
角色:
object_r:通常文件目錄的角色
system_r:進程角色
type:
文件和進程都有類型,限制存儲權限
目錄的造成:依靠硬連接的關聯關係,
s0:
[MLS MCS] 一個是進程權限,一個是進程區分
3.查看selinux的狀態
sestatus -v
4.getenforce 查看當前臨時權限
5.關閉selinux
臨時
setenforce 0
setenforce 1 開啓selinux
永久
vim /etc/selinux/config/
解決沙盒控制的方法:
方法一
萬能解決
對某個目錄的放問由selinux來控制
1.客戶端
yum install ftp
安裝ftp客戶端
2.服務端
安裝vsftpd軟件包,啓動服務
清空防火牆
修改ftp的默認目錄爲/data,
mkdir /data
vim /etc/passwd
直接修改,強制保存
安裝這個軟件包
yum install setr*
啓動這個服務才能夠作日誌實時監控
/etc/init.d/auditd restart
這個時候須要先開啓selinux
setenforce 1
監控日誌
tailf /var/log/messages
客戶端訪問ftp
ftp 192.168.117.144
在監控的日誌的時候因爲開啓了沙盒因此會報錯,而後會出現一個報錯信息,內含一條這個命令
sealert -l bd5893c8-1aa2-4dd3-902e-dd8796421404
而後運行這條命令會生成一條臨時解決沙盒拒絕ftp的命令,選擇第一個評分高的而後執行。
setsebool -P allow_ftpd_full_access 1
setsebool -p 系統臨時設置的策略,只限於yum的包
查看容許的ftp的策略,
getsebool -a | grep ftp
發現有一條容許ftp的策略:
setsebool -P allow_ftpd_full_access --> on
驗證:客戶端這個時候是能夠訪問/data的目錄的
方法二:
經過指定的type分發的權限來控制:
而後將這條策略關閉:
setsebool -P allow_ftpd_full_access 0
驗證:這個時候是訪問不到的,由於selinux關閉了臨時開啓的策略
注意:
restorecon /data/ 還原到默認的context值,須要重啓
首先查看這個目錄下的這個文件的權限類型,而後將這個容許訪問的類型複製過來,而後給/data目錄設置這個權限,而後這個目錄就有了訪問的權限,
ll -Z /var/ftp/
cd /data
chcon -t public_content_t /data -R
ll -Z
驗證:這個時候就能夠了訪問了
添加:
[root@lpc didi]# setenforce 1
[root@lpc didi]# getenforce
Enforcing 強制執行
[root@lpc didi]# setenforce 0
[root@lpc didi]# getenforce
Permissive 容許
沙盒對samba服務器的控制:
yum -y install smb
vim /etc/samba/smb.conf
mkdir /didi
chmod 777 /didi/
cd /didi/
ls
touch haha
ls
service smb restart
service nmb restart
vim /etc/samba/smb.conf
[DD]
path=/didi
public=yes
read only=yes
writable=yes
setenforce 1
cd /etc/samba/
ll -Z
cd /didi/
chcon -t samba_etc_t /didi/ -R
客戶端訪問:
smbclient //192.168.117.144/DD