700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > qq邮件 外发服务器设置 利用腾讯企业邮箱配置外发邮件服务

qq邮件 外发服务器设置 利用腾讯企业邮箱配置外发邮件服务

时间:2020-03-24 08:28:45

相关推荐

qq邮件 外发服务器设置 利用腾讯企业邮箱配置外发邮件服务

首先在腾讯企业邮箱注册一个新账号,并且绑定域名。

然后去你的域名解析服务商那里按照说明设置解析记录。

如图所示即为正常。

然后你可以通过这个命令来检查自己用的是mailx还是mailutils,本文以mailutils做示范

$ whereis mail

mail: /usr/bin/mail.mailutils /usr/bin/mail /usr/share/man/man1/mail.1.gz

在这一步我走了一点弯路,因为有人说 ssmtp 容易配置,所以我就选用了 ssmtp,然而实际上,postfix 的配置也非常的简单。

我们先来讲讲 ssmtp 的配置吧!

SSMTP

直接贴配置档

$ cat /etc/ssmtp/ssmtp.conf

#

# Config file for sSMTP sendmail

#

# The person who gets all mail for userids < 1000

# Make this empty to disable rewriting.

root=demo@

# 这里填腾讯企业邮箱的发送服务器

# 注意腾讯企业邮箱和QQ邮箱不是同一个服务器

# 请注意区分

mailhub=smtp.:587

# 填写邮箱和密码(如果你用的是QQ邮箱,你可能会需要在这里填写“授权码”或“客户端专用密码”而不是“邮箱密码”)

AuthUser=demo@

AuthPass=你的密码

# 启用 STARTTLS

UseTLS=YES

UseSTARTTLS=YES

# Where will the mail seem to come from?

rewriteDomain=

# The full hostname

hostname=

# Are users allowed to set their own From: address?

# YES - Allow the user to specify their own From: address

# NO - Use the system generated From: address

FromLineOverride=YES

设置用户别名(否则会出现 501 mail from address must be same as authorization user 错误)

$ cat /etc/ssmtp/revaliases

# sSMTP aliases

#

# Format: local_account:outgoing_address:mailhub

#

# Example: root:your_login@your.domain:mailhub.your.domain[:port]

# where [:port] is an optional port number that defaults to 25.

eric:demo@:smtp.:587

root:demo@:smtp.:587

这里是将系统自动得出的邮箱地址(比如我的是eric@localhost)替换为你真正的邮箱地址。

配置中的所有 替换为你的域名,所有 demo@ 替换为你的邮箱。

Postfix

我直接参考这篇文章配置的,写得很清楚了。我稍微翻译一下。

准备

Debian 7 或更高版本的系统

更新软件包列表

sudo apt update

确保这个库已经安装并且是最新的

sudo apt install libsasl2-modules

注:此篇文章以非特权用户的视角来写,需要特权的命令将会冠以 sudo 前缀。如果你对 sudo 命令感到陌生,请参考这篇文章

安装 Postfix

在本章中,我将会安装 Postfix,设置域名和主机名。

安装 Postfix

sudo apt-get install postfix

在安装的过程中,一个对话框将会出现,询问你邮箱的配置方式(译注:并没有看到这个界面,也许是被移除了。)

我们选择 Internet Site

输入你的域名,

当你安装完成的时候,用你喜欢的编辑器打开 /etc/postfix/main.cf

$ sudo vim /etc/postfix/main.cf

...

myhostname =

...

确保 myhostname 项是你的域名(如果刚才没有那个配置界面的话,可以直接在这个配置文档里面设置)

配置 SMTP 用户名和密码

打开或创建 /etc/postfix/sasl_passwd 文件

sudo vim /etc/postfix/sasl_passwd

把你的邮箱提供商的服务器(SMTP Host)、用户名、密码按照这个格式填入(记得保留中括号):

[mail.isp.example] demo@:password

如果你的邮箱提供商使用的不是一个默认的端口,你可以像这样填写:

[smtp.]:587 demo@:password

用postmap命令创建哈希数据库文件

sudo postmap /etc/postfix/sasl_passwd

如果一切顺利,你现在应该会在 /etc/postfix/ 目录下看到一个 sasl_passwd.db 文件

修改你的密码文件和哈希数据库的权限,以确保安全

上面那一步创建的 sasl_passwd 和 sasl_passwd.db 文件会将你的账号和密码明文存储。

为了安全起见,你需要更改他们的权限,这样,只有 root 用户有权查看这两个文件。

用下面这两条命令来修改权限:

sudo chown root:root /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db

sudo chmod 0600 /etc/postfix/sasl_passwd /etc/postfix/sasl_passwd.db

配置中继服务器(Relay Server)

在这一步,我将用腾讯企业邮箱的 SMTP 服务器作为中继服务器来配置。如果你不知道什么是“中继服务器”,请看这篇文章。

打开 /etc/postfix/main.cf 配置文件

sudo vim /etc/postfix/main.cf

找到 relayhost 参数进行设置(记得保留中括号)

specify SMTP relay host

relayhost = [smtp.]:587

在配置文件的末尾加上这些参数来开启认证

# enable SASL authentication

smtp_sasl_auth_enable = yes

# disallow methods that allow anonymous authentication.

smtp_sasl_security_options = noanonymous

# where to find sasl_passwd

smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd

# Enable STARTTLS encryption

smtp_use_tls = yes

# where to find CA certificates

smtp_tls_CAfile = /etc/ssl/certs/ca-certificates.crt

保存并退出

重启 Postfix 服务

sudo systemctl restart postfix

试着发送一封邮件

测试你的配置最快的方式是发一封邮件给你的另一个邮箱地址,使用 mail 命令

echo "hello world" | mail -s "This is a test mail" -a "From: demo@" resipient@

番外篇:添加别名和修改邮件发送人

添加别名(可选)

这一步的作用是你可以把原本发给其他用户的邮件转发到你的收件箱。

vim /etc/aliases

里面内容类似于这样

$ cat /etc/aliases

# See man 5 aliases for format

postmaster: root

root: YourName

这里有个技巧,如果按照上文这样配置的话,root用户将会收不到邮件,如果想实现类似于“抄送”的效果,可以这么写:

$ cat /etc/aliases

# See man 5 aliases for format

postmaster: root

root: eric, root

然后生成数据库,重启服务

$ sudo newaliases

$ sudo systemctl restart postfix

修改 SMTP 邮件发送人

在 /etc/postfix/main.cf 中添加以下内容

# Rewrite outgoing mail from

smtp_generic_maps = hash:/etc/postfix/generic

然后新建 /etc/postfix/generic 这个文件

$ sudo vim /etc/postfix/generic

里面填上

@ admin@

@localhost admin@

当然 要换成你的域名

然后,生成数据库文件,重启 postfix 服务

$ sudo postmap /etc/postfix/generic

$ sudo systemctl restart postfix

至此,我们在服务器上发送邮件的需求已达成,本篇结束。

EOF

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。