selinux(Security-Enhanced Linux)安全增強(qiáng)型linux,是一個(gè)Linux內(nèi)核模塊,也是Linux的一個(gè)安全子系統(tǒng)。
三種模式:
Enforcing:強(qiáng)制模式,在selinux運(yùn)作時(shí),已經(jīng)開(kāi)始限制domain/type。
permissive: 警告模式,在selinux運(yùn)作時(shí),會(huì)有警告訊息,但不會(huì)限制domain/type的存取。
disabled: 關(guān)閉模式。
可用getenforce
查看selinux狀態(tài)
selinux對(duì)文件的作用:
當(dāng)開(kāi)啟selinux后,selinux會(huì)給每個(gè)文件加載標(biāo)簽context,安全上下文必須配對(duì),否則文件不能訪問(wèn)
測(cè)試:
###開(kāi)啟selinux
![](/d/20211016/ae6c506ed8c9df2cc69c8fa87b7f0180.gif)
創(chuàng)建文件,移動(dòng)到ftp發(fā)布目錄
touch /mnt/filemv /mnt/file /var/ftp/
![](/d/20211016/04bab32980674c802d6bfa6f123e1431.gif)
用戶登陸ftp查看文件
![](/d/20211016/bbe793f534db54f472c40a5d68413594.gif)
可以發(fā)現(xiàn)前面移動(dòng)到ftp中的文件匿名用戶不能看
但是該文件存在于ftp目錄中
![](/d/20211016/30f4a98bf61533613abae72c24368b81.gif)
查看file的安全上下文
ls -Z /var/ftp/
![](/d/20211016/275fca50b891559c5bf63e2f96f4b647.gif)
可以看到兩個(gè)文件的安全上下文并不相同,因此不會(huì)顯示。
臨時(shí)修改安全上下文
chcon -t public_content_t /var/ftp/file
![](/d/20211016/7a0173e521ad492c5b1234e0ab60510c.gif)
登陸ftp查看文件
![](/d/20211016/8153dbf3a001586d8f33768f8c98532e.gif)
由于安全上下文對(duì)應(yīng)一致,所以可以顯示file該文件
chcon只是對(duì)安全上下文的臨時(shí)修改,當(dāng)系統(tǒng)selinux重啟后,修改則會(huì)失效。
###永久修改安全上下文
##創(chuàng)建自己的ftp家目錄,修改該目錄安全上下文標(biāo)簽
mkdir /ftphomesemanage fcontext -a -t pubilc_content_t ‘/ftphome(/.*)?‘
###查看該目錄的安全上下文
![](/d/20211016/ba3ce68286d8c249cb7ef5b91201fc38.gif)
這里可以看到安全上下文標(biāo)簽并沒(méi)有修改,我們需要重啟內(nèi)核列表服務(wù)
restorecon -RvvF /ftphome###R:遞歸 vv:顯示目錄下的子目錄或文件修改信息,F(xiàn):強(qiáng)制設(shè)置目錄中文件和目錄安全上下文一致
![](/d/20211016/a196efd06625528dd717ed7fe4defac5.gif)
安全上下文已經(jīng)修改完成
![](/d/20211016/27dd3865c90c023a823f4f10b039587d.gif)
selinux對(duì)服務(wù)的作用:
selinux對(duì)服務(wù)的作用相當(dāng)于給服務(wù)加上開(kāi)關(guān),該開(kāi)關(guān)默認(rèn)關(guān)閉。1:打開(kāi)開(kāi)關(guān);0:關(guān)閉開(kāi)關(guān)
selinux打開(kāi)狀態(tài)下,我們通過(guò)登陸ftp測(cè)試selinux對(duì)服務(wù)的開(kāi)關(guān)作用。
![](/d/20211016/7ce0c297b873f07af5c812ec1d2070a6.gif)
用戶不能對(duì)文件進(jìn)行上傳,刪除等操作
查看selinux對(duì)ftp開(kāi)關(guān)狀態(tài)
![](/d/20211016/ef9f4ac7cf38aadf8ee7c6969ce03b13.gif)
都是處于關(guān)閉狀態(tài),因此對(duì)用戶權(quán)限有限制
打開(kāi)功能開(kāi)關(guān)
setsebool -P ftp_home_dir onsetsebool -P ftpd_anon_write on
![](/d/20211016/94a4e959b694104dc70eae33fbd03281.gif)
重新登陸ftp,用戶可以上傳文件
![](/d/20211016/302b4fb3c6975e6cd11998957485854a.gif)
安裝setroubleshoot ,可以對(duì)selinux錯(cuò)誤日志,可以提供解決方案
/var/log/audit/audit.log ###記錄selinux采集的日志
![](/d/20211016/c609ce853c1a80dbe6a5061fb4d719cf.gif)
下/var/log/audit/audit.log ###記錄selinux采集的日志
![](/d/20211016/c89272805845a83540d80850937d4fbd.gif)
總結(jié)
以上所述是小編給大家介紹的Linux中selinux基礎(chǔ)配置教程詳解,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!