[精讚] [會員登入]
397

[DNS] 把Named 產生的log放到遠端伺服器

把named的log放到log server以符合資安的需求。

分享此文連結 //n.sfs.tw/16378

分享連結 [DNS] 把Named 產生的log放到遠端伺服器@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2024-06-07 01:26:55 最後編修
2024-03-19 16:46:58 By 張○○
 

自動目錄

此例是把named的log放到logserver。

OS

CentOS Linux release 7.4.1708 (Core)   &&
Rocky Linux release 9.3 (Blue Onyx)

修改named.conf

named.conf 在options{} 後加上以下 設定[1]

logging {
.. <部分省略>
         channel lamer-log {
                 file "data/lamer-log" versions 3 size 100m;
                 severity info;
                 print-severity yes;
                 print-time yes;
                 print-category yes;
         };
         channel query-log {
                 file "data/query-log" versions 20 size 100m;
                 severity info;
                 print-severity yes;
                 print-time yes;
                 print-category yes;
         };
...
         category lame-servers { lamer-log; };
         category queries { query-log;};
 };

file "data/lamer-log" versions 3 size 100m;

此範例log檔會存在 /var/named/data/ 的目錄下,檔名會是 lamer-log、 lamer-log.0、 lamer-log.1 共存 3份,每份最大100mb循環寫入

重啟named

# service named restart

 

修改 rsyslog.conf

修改rsyslog.conf [3]

加入模組 imfile

CentOS Linux release 7.4.1708 (Core)

$ModLoad imfile

Rocky Linux release 9.3 (Blue Onyx)

module(load="imfile")

 

新增檔案 /etc/rsyslog.d/named.conf

input(type="imfile" File="/var/named/data/query-log" Tag="ddnss-querylog" Facility="local3" Ruleset="nreporter")
input(type="imfile" File="/var/named/data/lamer-log" Tag="ddnss-lamerlog" Facility="local3" Ruleset="nreporter")
ruleset(name="nreporter"){ action(type="omfwd" Target="192.168.53.147" Port="514" Protocol="udp") }

重啟 rsyslog

# service rsyslog restart

如此就能把LOGS 送到遠端的機器192.168.53.147中。

我是這樣想的,結果LOG SERVER一直沒有收到資料,原來是SELINUX的問題…

 

SELINUX

Selinux 如果不關掉的話,在啟動rsyslog時就會出錯[4]

python: SELinux is preventing in:imfile from read access on the file query-log.#012#012*****  Plugin catchall (100. confidence) suggests   **************************#012#012If you believe that in:imfile should be allowed read access on the query-log file by default.#012Then you should report this as a bug.#012You can generate a local policy module to allow this access.#012Do#012allow this access for now by executing:#012# ausearch -c 'in:imfile' --raw | audit2allow -M my-inimfile#012# semodule -i my-inimfile.pp#012

audit中的錯誤

type=AVC msg=audit(1710820132.783:14087335): avc:  denied  { getattr } for  pid=22562 comm="in:imfile" path="/var/named/data/query-log" dev="dm-0" ino=34444606 scontext=system_u:system_r:syslogd_t:s0 tcontext=system_u:object_r:named_cache_t:s0 tclass=file

AVC stands for Access Vector Cache. [2]

 

依上面的指示下指令

# ausearch -c 'in:imfile' --raw | audit2allow -M my-inimfile
# semodule -i my-inimfile.pp

查看

# audit2allow -a

#============= syslogd_t ==============
#!!!! This avc is allowed in the current policy
allow syslogd_t named_cache_t:file { getattr ioctl open read };

 

以上就能正確的將NAMED產生的LOG傳到LOG SERVER了。

 

參考資料

[1] BIND Queries log to Remote Syslog Server https://www.linuxquestions.org/questions/linux-server-73/bind-queries-log-to-remote-syslog-server-4175669371/

[2] https://wiki.gentoo.org/wiki/SELinux/Tutorials/Where_to_find_SELinux_permission_denial_details

[3] https://www.npartnertech.com/upload/Download/N-Partner_Linux_BIND(DNS)_syslog-TW-004.pdf

[4] https://access.redhat.com/documentation/zh-tw/red_hat_enterprise_linux/6/html/security-enhanced_linux/sect-security-enhanced_linux-selinux_contexts_labeling_files-persistent_changes_semanage_fcontext

 

 

END

你可能感興趣的文章

[CentOS6] 設定 sendmail Centos6上設定sendmail,基本上sendmail會設定多半是為了寄系統信和收垃圾信(喂!!?)

[Centos] 安裝及使用postfix,設定虛擬帳號及轉寄 使用postfix來設定虛擬帳號及轉寄

[Linux] 怎麼修改終端機console下ls的顏色? 在linux下的ls使用--color的參數時,雖然目錄有上色,但是顏色是深藍色很難辨識,要怎麼修改呢?

[Centos7] 安裝apache+php7+mariadb10+selinux Centos7 安裝apache+php7+mariadb10+selinux

[Rocky9] codeignitor4+ nginx+ php8.1-fpm + docker compose 這次的目標是把服務裝在docker,裡面放入 nginx 和 php8.1-fpm的 docker container, 並採用codeignitor4。

[Centos6 7] 掛載磁碟 只是掛載新磁碟

我有話要說

>>

限制:留言最高字數1000字。 限制:未登入訪客,每則留言間隔需超過10分鐘,每日最多5則留言。

訪客留言

[無留言]

隨機好文

[jQuery] textarea 的取值和給值 HTML 的 TEXTAREA 標籤若要用 jquery 取值,不能使用 .text() 或 .html() ,使用 .

TFTP Server 安裝及使用 讓設備的網路設定檔或是韌體經由TFTP拷備出來,操作的方法

魔球中小女孩唱的歌 The show 魔球中小女孩唱的歌 The show

「許功蓋」的字以及源由 有玩過電腦一段時間的人,都聽過這個人(有一天我才發現7年級的竟然都不認識這個

[PHP]解決ksort新增的SORT_NATURAL|SORT_FLAG_CASE方法 php>=5.4中ksort函數多了SORT_NATURAL 和 SORT_FLAG_CASE 旗標,對舊版的PHP中要怎麼辦?