為什麼我的一些日誌使用本地主機和其他主機名 - 不同的伺服器
我正在調試與 LDAP 登錄相關的內容,Ldap SSH 登錄不起作用 - 相同的配置在 20 多個其他伺服器上工作 - Ubuntu,我注意到在某些伺服器中,日誌使用 localhost,而在其他伺服器中它們具有主機名。擁有主機名似乎是最有意義的,特別是如果我們要集中日誌文件。
這是如何配置的?為什麼不預設使用主機名?只是有點讓我好奇…
例子 :
Oct 29 11:23:56 daily sshd[20625]: pam_unix(sshd:session): session opened for user LDAPUSERNAME by (uid=0)
或者
Oct 29 10:56:36 localhost sshd[2560]: pam_unix(sshd:auth): check pass; user unknown
更新:
user@qa-ops:~$ hostname qa-ops user@daily:~$ hostname daily.domain.com
也許這與 Daily 在主機名中有一個完整的域名有關?我一直認為 /etc/hostname 應該是主機名的簡短部分,而不是完整的 hostname.domain.com 等。
https://wiki.archlinux.org/index.php/rsyslog#Configure_Hostname
Rsyslog 使用 glibc 常式 gethostname() 或 gethostbyname() 來確定本地機器的主機名。如果您不使用 BIND 或 NIS ,gethostname() 或 gethostbyname() 常式會檢查
/etc/hosts
完全限定域名 (FQDN) 的內容。更具體地說,如果
localhost
您的 IP 條目首先出現在 中/etc/hosts
,那麼它將優先。(假設這
files
是hosts:
行中的第一個值/etc/nsswitch.conf
。或者,您的主機名無法使用 DNS 解析)。Arch Wiki 頁面繼續解釋:
您可以通過執行 hostname –fqdn 檢查本地電腦目前配置的 FQDN 是什麼。rsyslog 在寫入日誌消息時將使用 hostname –short 的輸出。如果您想在日誌中包含完整的主機名,您需要在文件的開頭添加 $PreserveFQDN(在使用任何寫入文件的指令之前)。這是因為,rsyslog 讀取配置文件並在執行中應用它,然後讀取後面的行。
/etc/hosts 文件包含許多將 FQDN 映射到 IP 地址以及將別名映射到 FQDN 的行。請參閱下面的範例 /etc/hosts 文件:
/etc/hosts
#<ip-address> <hostname.domain.org> <hostname> #<ip-address> <actual FQDN> <aliases> 127.0.0.1 localhost.localdomain somehost.localdomain localhost somehost ::1 localhost.localdomain somehost.localdomain localhost somehost
localhost.localdomain 是 IP 地址後面的第一項,因此 gethostbyname() 函式將返回 localhost.localdomain 作為本地電腦的 FQDN。然後 /var/log/messages 文件將使用 localhost 作為主機名。
使用 somehost 作為主機名。將 somehost.localdomain 移動到第一項:
/etc/hosts
#<ip-address> <hostname.domain.org> <hostname> #<ip-address> <actual FQDN> <aliases> 127.0.0.1 somehost.localdomain localhost.localdomain localhost somehost ::1 somehost.localdomain localhost.localdomain localhost somehost
在各種情況下,可能很難準確地說明如何從
/etc/hosts
(或 DNS)中選擇相關資訊。再次閱讀原始碼,我認為rsyslog
嘗試將系統主機名(hostname
命令輸出)解析為 FQDN。我認為這意味著上面說“gethostname 或 gethostbyname”的地方,實際上應該說“gethostname和gethostbyname”。因此,這些說明可能會有所改進,但它們至少會為您指明正確的位置。
在rsyslog-users mailing list上也有一個非常相似的問題。