我拥有 Linux 服务器 (CentOS 5.10) 的 root 访问权限。我想查看电子邮件服务器的设置,例如 SMPT 是否工作、是否有电子邮件服务器、端口号、是否需要 SSL、需要什么身份验证方法、电子邮件地址列表、如果可能的话,电子邮件地址的密码。我应该在哪里寻找文档?
这是netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 127.0.0.1:8005 0.0.0.0:* LISTEN 4796/java
tcp 0 0 0.0.0.0:8009 0.0.0.0:* LISTEN 4796/java
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 21409/mysqld
tcp 0 0 0.0.0.0:970 0.0.0.0:* LISTEN 3332/rpc.statd
tcp 0 0 0.0.0.0:44 0.0.0.0:* LISTEN 6765/sshd
tcp 0 0 0.0.0.0:10991 0.0.0.0:* LISTEN 4796/java
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 3271/portmap
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 4700/httpd
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 4796/java
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN 4768/postgres
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 4338/sendmail
tcp 0 0 0.0.0.0:30847 0.0.0.0:* LISTEN 4796/java
答案1
这很大程度上取决于您运行的 MTA。 CentOS 附带安装了两个主邮件服务器(sendmail 和 postfix)。 Sendmail 是默认设置。
如果您没有更改任何内容并且默认值已就位,您可以检查 /etc/mail/ 中的所有 sendmail 配置(/etc/aliases 中的别名除外)。
如果主服务器切换到 postfix,则所有配置都将位于 /etc/postfix/ 中。尽管您也可以使用 postconf -a 查看 postfix 当前活动的所有设置和相应的值。
对于任何一种,从文档开始的一个好地方是手册页。男子 sendmail 男子 postfix
如果您不知道,您可以随时使用 netstat 或 sockstat 来确定哪个 MTA 正在运行。netstat -pat | grep smtp
例如。最后一列应该告诉您绑定到端口 25 的可执行文件的 PID 和名称。
答案2
您正在运行 sendmail。这是 CentOS 5 中的默认 mta。CentOS 7 使用 postfix。 Sendmail 正在侦听本地主机上的端口 25。因此只有本地用户/应用程序可以使用它来发送邮件。本地用户也可以接收邮件。检查 /var/spool/mail 目录。您不需要 SSL 来发送邮件。我什至猜测,它没有配置。由于 sendmail 无法访问互联网,因此发送和接收电子邮件无需进行身份验证。检查目录 /var/spool/mail 以查看到目前为止谁收到了电子邮件。我猜只有“根”。如果该用户收到电子邮件,您将看到一个以用户名作为文件名的文件。不需要任何密码即可查看电子邮件,而且我确信从未配置过密码。
至于从哪里开始,请查看 CentOS 5 文档https://www.centos.org/docs/5/html/5.1/Deployment_Guide/s1-email-mta.html
我希望能够回答您所有的问题。
答案3
我写这篇文章有点晚了。但我想向来到这里的人们提供更多解释。
sudo netstat -ntlp | grep ':25'
您可以使用“不要忘记”检查您的服务器上正在运行哪个 MTA(邮件传输代理)
sudo
,否则您可能看不到程序/pid 的名称。
对于大多数人来说,您可能正在使用postfix
.所以,尝试一下
> sudo postfix status
你应该会看到这样的东西
postfix/postfix-script: the Postfix mail system is running: PID: 91245