oidentd 正確配置但無法在 CentOS 6 上正常工作
幾天來,我一直在使用 oidentd 遇到這個問題,但我似乎還無法找到解決方案。每次我想讓它在不同的伺服器上工作時,oidentd 似乎都讓我頭疼。
我不得不提到我已經使用 rpm 包(更準確地說是 oidentd-2.0.8-8.el6.i686)安裝了 oidentd,因為由於
yum install oidentd
某些未知原因直接輸入不起作用。我想使用它來使伺服器上的 ZNC 使用每個使用者名的 ident 回复 ident 請求。在最終安裝它之後,我已經完成了配置和東西(與我對另一台伺服器所做的完全相同的配置似乎工作正常):
$ nano /etc/oidentd.conf
對此:default { default { allow spoof deny spoof_all deny spoof_privport allow random_numeric allow numeric allow hide } } user root { default { force reply "UNKNOWN" } }
使用源 tarball 安裝 ZNC 1.0。我叫了一個使用者
znc
,然後從中執行 ZNC。然後我去了我的客戶並啟用了該identfile
模組。將每個使用者配置的欺騙文件設置~/.oidentd.conf
為global { reply "%ident%" }
. 確保使用者對文件具有 chmod 訪問權限~/.oidentd.conf
。一切都很完美,就像它在另一台伺服器上的配置方式一樣。一切都很順利,沒有錯誤,*identfile 甚至告訴我格式將擴展為什麼,我很高興也很興奮看到沒有任何問題。
直到我重新連接到伺服器。 它給出了一個 ident 響應(表明 oidentd 正在工作?)但問題是它總是用我正在執行 ZNC 的使用者名回复(應該是
znc
)這是一個小輸出,可以讓一切變得清晰:
[msg: *identfile]: getfile (*identfile) File is set to: ~/.oidentd.conf [msg: *identfile]: getformat (*identfile) Format is set to: global { reply "%ident%" } (*identfile) Format would be expanded to: global { reply "Tarmac" } Please wait while we process your connection. *** Checking Ident *** Got Ident response
然後我在我的暱稱上做了一個 WHOIS:
WHOIS Tarmac [whois: Tarmac] (registered nick) name: bri address: znc@random.geek
我嘗試重新啟動 oidentd 和 ZNC n次,但沒有結果。還是一樣的回复。
我真的不知道這裡出了什麼問題,但看起來 ZNC 有問題或 oidentd 有問題。到目前為止,我唯一的懷疑是 oidentd 可能無法正常工作,或者 *identfile 模組沒有正確地將格式寫入欺騙文件。
我現在很困惑,所以任何關於解決這個問題的建議都將受到高度讚賞。謝謝!
**編輯:**另一個提醒,似乎他們
oidentd
從包中刪除了?我不知道為什麼……如果我安裝 rpm,linux 核心有那麼重要嗎?我一直在嘗試不同的 rpm,但似乎沒有任何結果……**Edit2:**我嘗試從原始碼安裝 oidentd。安裝順利,沒有問題。
我嘗試禁用 *identfile,而我認為這是問題,已編輯但它仍然回复,除非我
/home/znc/.oidentd.conf
將其添加到:global reply { "testident" }``znc``/etc/oidentd.conf
user "znc" { default { force reply "testident" } }
所以基本上我進行了編輯
/etc/oidentd.conf
以強制回復使用者的特定身份znc
……它似乎有效,但是當我進入每個使用者配置並嘗試相同的事情時,它不會。我什至沒有……!讀取每個使用者的配置似乎有問題……但不確定是什麼?我將 chmodes 和其他東西設置為正確的設置,但它不能正常工作。
再次感謝。
看起來我必須刪除並讓它單獨創建一個新的……我什至不知道這是如何解決問題的,因為我之前嘗試過同樣的事情,我在安裝 ZNC 後
/home/znc/.oidentd.conf
讓它自己製作,但是。~/.oidentd.conf
..我很高興它現在終於起作用了哈哈!
我認為您在更改之後並沒有重新啟動 oidentd
/etc/oidentd.conf
,當您重新安裝 oidentd 時,它與重新啟動是互惠的,因此它以重新啟動您使用的方式開始工作,/etc/init.d/oidentd restart
如果您使用的是 ipv6,您需要oidentd -a ::
使用 root 訪問權限