我最近更改了我的 gmail 密码,并且也更改了 server.conf 中的密码,但现在 graylog 的电子邮件警报失败,并显示:
Sending the email to the following server failed : smtp.gmail.com:587 (javax.mail.AuthenticationFailedException: 535-5.7.8 Username and Password not accepted. Learn more at 535 5.7.8 https://support.google.com/mail/?p=BadCredentials h12sm2292608qkp.52 - gsmtp )
以下是 server.conf 中的电子邮件条目:
transport_email_enabled = true
transport_email_hostname = smtp.gmail.com
transport_email_port = 587
transport_email_use_auth = true
transport_email_use_tls = true
transport_email_auth_username = [email protected]
transport_email_auth_password = Fake!@$#%^&*()"password
transport_email_subject_prefix = [Log-Alerts]
transport_email_from_email = [email protected]
Web GUI 中的警报配置中的设置也相同。
我知道用户名、电子邮件、端口、服务器和 tls 选项是正确的,因为 zabbix(托管在同一台服务器上)能够完全正常地向我的 gmail 发送电子邮件。
我担心我的新密码包含特殊字符,!@#$%^&*"
会导致 server.conf 出错并读取错误密码。
有没有办法将 server.conf 中的密码字段改为外部文件?Graylog 在其文档中的任何地方都没有提到这一点。
答案1
在配置文件的开头,我们可以看到以下内容:
# This is the Graylog configuration file. The file has to use ISO 8859-1/Latin-1 character encoding.
# Characters that cannot be directly represented in this encoding can be written using Unicode escapes
# as defined in https://docs.oracle.com/javase/specs/jls/se8/html/jls-3.html#jls-3.3, using the \u prefix.
# For example, \u002c.
因此,请仔细检查密码中的每个字符是否列在ISO/IEC 8859-1代码页。否则,您必须对其进行转义。如有疑问,请对字符进行转义。