2016-09-29

Bind9 的 log 權限問題…

其實這個問題很久了,只是因為沒有造成什麼大問題就沒有去理它…

是在「cat /var/log/message | grep named」時候出現一堆的「unable to rename log file '/var/log/named/general.log' to '/var/log/named/general.log.0': permission denied」

這個訊息不管它,最多就是 log 吃不進去或繼續的塞在單一個檔案而已…但越來越大也不太好

有確定過 owner 和讀寫權限都正常…但就算讀寫開到 777 也還是有這個訊息

後來在一次開新的 log 在 named 時才看到…原來是 named 在 log 的 SELiunx 「標籤」跟一般的 log 「標籤」不一樣…

「標籤」可以使用「ls -Z」查…

一般的「標籤」,在「/var/log/」底下的是「system_u:object_r:var_log_t:s0」,而我們在 named 的 config 設定 log 時,因為它的 log 檔是由使用者 touch 出來的檔案的「標籤」也是會和「/var/log/」底下的標籤一樣是「system_u:object_r:var_log_t:s0」或者是「unconfined_u:object_r:var_log_t:s0」…

但當 named 這個程序自己產生的 log 的「標籤」卻是「system_u:object_r:named_log_t:s0」…最大的不同也就是「named_log_t」…

所以,要將「var_log_t」改成「named_log_t」…可以使用
chcon -t name_log_t <file_name>

沒有留言: