今日登錄服務(wù)器查看到這條信息:
提示信息
查看信息得知是每日定時(shí)任務(wù)里面的錯(cuò)誤:
/usr/bin/updatedb: can not open `/etc/updatedb.conf': Permission denied
報(bào)錯(cuò)信息
原本以為是updatedb.conf的權(quán)限問(wèn)題膛堤,修改為如下權(quán)限之后還是出現(xiàn)故障手趣。
嘗試修改權(quán)限
最后在網(wǎng)上找到說(shuō)可能和SELINUX的上下文權(quán)限有關(guān)。需要修改下就可以了肥荔。
此處出現(xiàn)restorecon的命令绿渣,另外關(guān)于上下文權(quán)限還有個(gè)命令chcon
ls -lZ /etc/updatedb.conf
restorecon -RFv /etc/updatedb.conf
解決故障
這些設(shè)置與selinux有關(guān):
有關(guān)上面的unconfined_u:object_r:user_tmp_t:s0的含義請(qǐng)看下文:
一個(gè)安全上下文由三部分組成:用戶、角色和類(lèi)型標(biāo)識(shí)符燕耿。常常用下面的格式指定或顯示安全上下文:
USER:ROLE:TYPE[LEVEL[:CATEGORY]]
1 USER
1)user identity:類(lèi)似Linux系統(tǒng)中的UID中符,提供身份識(shí)別,用來(lái)記錄身份誉帅;安全上下文的一部分淀散;
- 三種常見(jiàn)的 user:
? user_u :普通用戶登錄系統(tǒng)后的預(yù)設(shè);
? system_u :開(kāi)機(jī)過(guò)程中系統(tǒng)進(jìn)程的預(yù)設(shè)蚜锨;
? root :root 登錄后的預(yù)設(shè)档插;
- 在 targeted policy 中 users 不是很重要;
- 在strict policy 中比較重要踏志,所有預(yù)設(shè)的 SELinux Users 都是以 “_u” 結(jié)尾的阀捅,root 除外。
2 ROLE - 文件针余、目錄和設(shè)備的role:通常是 object_r饲鄙;
- 程序的role:通常是 system_r凄诞;
- 用戶的role:targeted policy為system_r; strict policy為sysadm_r忍级、staff_r帆谍、user_r;用戶的role轴咱,類(lèi)似系統(tǒng)中的GID汛蝙,不同角色具備不同的的權(quán)限;用戶可以具備多個(gè)role朴肺;但是同一時(shí)間內(nèi)只能使用一個(gè)role窖剑;
- 使用基于RBAC(Roles Based Access Control) 的strict和mls策略中,用來(lái)存儲(chǔ)角色信息
3 TYPE - type:用來(lái)將主體(subject)和客體(object)劃分為不同的組戈稿,給每個(gè)主體和系統(tǒng)中的客體定義了一個(gè)類(lèi)型西土;為進(jìn)程運(yùn)行提供最低的權(quán)限環(huán)境;
- 當(dāng)一個(gè)類(lèi)型與執(zhí)行中的進(jìn)程相關(guān)聯(lián)時(shí)鞍盗,其type也稱為domain需了;
- type是SElinux security context 中最重要的部位,是 SELinux Type Enforcement 的心臟般甲,預(yù)設(shè)值以_t結(jié)尾肋乍;
LEVEL和CATEGORY:定義層次和分類(lèi),只用于mls策略中
? LEVEL:代表安全等級(jí),目前已經(jīng)定義的安全等級(jí)為s0-s15,等級(jí)越來(lái)越高
? CATEGORY:代表分類(lèi)敷存,目前已經(jīng)定義的分類(lèi)為c0-c1023
如果需要繼續(xù)連接SELINUX的詳細(xì)內(nèi)容可以查看:
SELinux深入理解