导航新进会员
在线用户目前共有 0 位用户和 3 位游客在线。
|
用 esmtp 通过 Gmail 邮局进行转发系统邮件 v0.1b (正在修正)作者:北南南北 目录: 1 esmtp简介; 2 本文应用范围; 3 安装 esmpt 4 配置esmtp; 4.1 创建用户; 4.2 包装sendmail 4.3 Google企业邮局和Gmail说明; 4.4 配置esmtp; 5 关于本文; 6 参考文档; 7 相关文档;
1 esmtp 简介;esmtp 是一款邮件转发程序,原理是模拟sendmail行为进行系统邮件转发。应用领域是服务器端,当我们没用专用的邮件服务器,如何把系统邮件转发出来。 2 本文应用范围;写这个文章的前提是咱们没有专用的邮件服务器,并且为了减轻服务器压力,服务器端并没有做邮件服务器,并且还要把系统邮件转发出去。应用主要有Web程序,有时Web用户创建,服务器会把密码发到用户信箱,或用户找回密码 …… 还有服务器的一些管理日志、崩溃信息等,也需要发送到管理员信箱。 举例说明:LinuxSir.org 只有一台服务器,而且压力非常大。所以在这台服务器上不可能做邮件服务器。但系统邮件必须转发出去,因为上面有linuxsir.org的文章管理系统和论坛系统,因为用户需要认证。服务器要为用户发送密码等方面的邮件。所以必须有一个邮局系统来处理这些事。但linuxsir.org又不能在这台服务器上架邮局,所以就要想办法把系统邮件转发出去,让其它邮局来处理。 这样解释或许明白点吧。 3 安装 esmpt如果您的发行版是 slackware, 您可以到 http://www.slackbuilds.org 上取回编译脚本来安装libesmtp和 esmtp,libestmp是esmtp的库文件。您可以自己源码包make安装; 对于其它发行版来说,都可以通过源码包来make安装; 对于常用发行版,可以用发行版所采用的软件包管理工具来安装,不同的发行版有不同的工具,其实大同小异; [root@linuxsir:beinan]$ sudo apt-get install esmtp 注:在debian、ubuntu 等在线安装方法;安装完成后,esmtp 会伪装成sendmail来发信。我们查看sendmail可执行文件得知; # ls -la /usr/sbin/sendmail4 配置esmtp;在安装好后,根据esmtp 文档,写一下 esmtprc 就可以用了,文件放在/etc目录下,或放在apache守护程序的拥有者的家目录下(一般情况下,就是apache 用户来执行,如果您自己编译和修改了其它用户,就要用其它用户),当放在apache的家目录下,要创建一个.esmtp 的文件。但经过测试并非如此,并不能把信转出去。因为apache用户由于环境变量的问题,不适合esmtp转信的环境;所以我们必须包装sendmail。 4.1 创建用户;因为esmtp也要通用一个用户来发信,所以我们必须创建一个用户,可以用这个用户来专门发送系统邮件;您可以通过adduser 命令来添加用户。比如创建一个用户linuxsir的UID是5505,用户组的GID也是5505,家目录位于 /home/linuxsir目录; # groupadd -g 5505 linuxsir我们再来查看一下是用户是否创建成功,我们要查看linuxsir 这个ID,以及/etc/passwd配置文件; #id linuxsir4.2包装sendmail 因为apache用户由于环境变量的问题,不适合esmtp转信的环境;所以我们必须包装sendmail。原理就是通过su 命令 切换到linuxsir这个用户下,通过这个用户来发邮件; 打开一个终端,把下面的内容贴到终端里即可; 本脚本由传说中的花花同学大力协助,在此感谢之中 ;) ; #!/bin/sh -x注:setreuid 和setregid 是分别设置UID和GID的,要根据自己所创建的用户的UID和GID来添写这个值,因为我创建的用户linuxsir的UID和GID都是5505 ,所以就写5505;/home/linuxsir是linuxsir这个用户的家目录,也是根据你所创建用户的家目录来设置,这个也是要你根据情况来修改; 4.3 Google企业邮局和Gmail说明;Gmail是全球最好的邮局系统,我们可以通过Gmail来帮助我们搭建企业级应用。我们就可以不必自己单独做邮件服务器了。一切应用都交给Google来处理。我们可以在企业邮局上为用户创建信箱 …… 优势多多,试试就知道了; 您可以通过 http://www.google.com/a/ 来申请属于自己的邮局系统。当然您得有一个域名,并且您有域名管理权,能自己设置DNS解析; 比如 LinuxSir.Org ,要在域名提供商的DNS上做解析,具体流程是: 确认 linuxsir.org 的所有权,要根据您创建邮局系统时的提示做;要在 linuxsir.org 的WWW服务器端,创建一个文件,要能访问的到。然后让Google来验证通过; 然后在域名提供商所提供的域名DNS管理界面,清空所有MX记录,并添加下面的MX记录;
因为 Google 的CNAME服务器 ghs.google.com 被封掉了,所以我们可以省略这一过程。但为了访问方便,我们可以用三级域名跳转的办法。 您可以添加一个三级域名指向到Gmail上的您的企业邮局,比如linuxsir.org 在Google上的邮局地址是 http://mail.google.com/a/linuxsir.org ,那我们就要做一个 http://mail.linuxsir.org 的域名跳转到 http://mail.google.com/a/linuxsir.org 。 纵观全球互联网企业所提供的邮箱或邮局,没有一家能和Google所提供的相比。优势是大容量、高效、安全、稳定 …… ,我们把一切赞美的词都给Google都不为过 …… 对不对? 我们申请Google的信箱也好,还是Google的邮局也罢,目的就是让esmtp把服务器系统上的邮件转发出去。通过谁转发更可靠?就是Google。如果您想以 beinan@linuxsir.org 来转信,就要申请Google邮局。如果只是用一个beinan@gmail.com 的信箱来把服务器系统的信转发出去,就不必申请邮局。 4.4 配置esmtp;我们还是接着前面的例子来说明如何配置esmtp,首先我们在Google申请了自己的信箱或邮局,这是前提。 如果您在Google上申请了企业邮局,要在里面创建一个信箱,比如我想用linuxsir.org@linuxsir.org 来转信,就要在linuxsir.org 的邮局上创建一个linuxsir.org 为用户名的信箱。设置好密码,以linuxsir.org 用户名登录后,要在设置中把pop服务打开 …… 接着我们在服务器端,在linuxsir用户的家目录下创建一个.esmtprc 的文件,内容大体如下; identity linuxsir.org@linuxsir.org 注:用户名,要完整的。Gmail也大体如此,自己试试;如果你有专用的邮件服务器,配置文件也大体差不多的,自己尝试一下; 验证是否成功,请用mailx程序测试,如果linuxsir.org@linuxsir.org 收到邮件,则表示成功,否则失败~ #mailx linuxsir.org@linuxsir.org注:mailx linuxsir.org@linuxsir.org 后按回车,在Subject:后面写上主题,然后再按回车,这样就可以写的信的内容了。写完后,按ctrl+d来发信 …… 发送后,到linuxsir.org@linuxsir.org 去收信 …… 值得注意的是,Gmail可能会把信扔到垃圾箱中,这也算把信收到了…… 5 关于本文;本文是在LinuxSir.Org 服务器资源紧张的情况下,迫不得已才采用的办法。一直以为都是架邮件服务器来解决。先后用过sendmail、qmail、postfix …… 而且邮件服务器会占用大量服务器资源,在无奈之中,才想到由第三方邮件服务器系统…… 在这之中,经历了太多的周折和痛苦…… 在2007年05月的时候,windrose兄说Gmail 的企业邮局可以申请,他就申请了一个,并把LinuxSir.Org 的邮局迁到Google上了;但服务器系统邮件没办法发送。在这次迁移服务器IDC的时候,把系统全面升级,又想到如何把邮件转发了去。于是想到了esmtp 。 本文得到花花同学的大力帮助,在此感谢! 6 参考文档;esmtp 的官方文档,请参见: http://esmtp.sourceforge.net/ 7 相关文档; |
最新评论
|
Thank you very much.As I
Thank you very much.As I know,jordans, are refered as michael jordan shoes, Jordans sneakers, they are popular products made by Nike, Inc.air jordan was designed for and endorsed by legendary professional basketball player, Michael Jordan. running shoes.The retro jordan shoes line is created by Jordan Brand, a sub-division of Nike. They are more popular than nike shox, Puma sneakers, puma shoes, Basketball sneakers, basketball shoes, nike air force (Also known as air force ones) and nike air max. Since its first release in 1984, there have been new designs of the air jordans released each year, even after Jordan retired from basketball.Of caurse,these are hotter than bapes.
re:用 esmtp 通过 Gmail 邮局进行转发系统邮件------RHEL下安装遇到的问题
在RHEL4下如何安装esmtp呢?
安装过程
#####download libesmtp和esmtp源码包
##### 1.装libesmtp
tar jxvf libesmtp-1.0.4.tar.bz2
cd libesmtp-1.0.4
./configure -prefix /usr/local/libesmtp
make
make install
##### 2.安装esmtp时有问题了
tar jxvf esmtp-0.6.0.tar.bz2
cd esmtp-0.6.0
./configure -prefix /usr/local/esmtp --with-libesmtp=/usr/local/libesmtp
.
.
.
checking libesmtp.h usability... yes
checking libesmtp.h presence... yes
checking for libesmtp.h... yes
checking for libESMTP... no
configure: error: libESMTP library not found
[root@test esmtp-0.6.0]#
libesmtp.h和libESMTP是两个不同的文件吗?那后者是有什么包安装的呢?还是当初编译libesmtp的时候要加什么参数?还是在编译esmtp的时候要加参数?一开始没有加./configure -prefix /usr/local/esmtp --with-libesmtp=/usr/local/libesmtp中的--with-libesmtp=/usr/local/libesmtp
时 checking for libesmtp.h... yes 这步都通过不了,加完后又出现了下一个错误,在google上搜libESMTP得到的全是关于libesmtp的信息
好像论坛里还有其他兄弟也遇到了这样的问题,南北老大,能帮忙看一下吗?
libESMTP这个文件如何让esmtp的安装程序认出来呢?
re:re:用 esmtp 通过 Gmail 邮局进行转发系统邮件------RHEL下安装遇到的问题
安装过程
#####download libesmtp和esmtp源码包
##### 1.装libesmtp
tar jxvf libesmtp-1.0.4.tar.bz2
cd libesmtp-1.0.4
./configure -prefix /usr/local/libesmtp
make
make install
把这个改为 ./configure ,你后面加了个/usr/local/libesmtp是画蛇添足
##### 2.安装esmtp时有问题了
tar jxvf esmtp-0.6.0.tar.bz2
cd esmtp-0.6.0
./configure -prefix /usr/local/esmtp --with-libesmtp=/usr/local/libesmtp 这句也是直接./configure
北南兄,"4.1
北南兄,"4.1 创建用户"中有个有个地方有错:
#id beinanlinux
uid=5505(beinanlinux) gid=5505(beinanlinux) groups=5505(beinanlinux)
应改为:
#id linuxsir
uid=5505(linuxsir) gid=5505(linuxsir) groups=5505(linuxsir)
谢谢,北南兄的精彩教程.
lxybhbh
谢谢~~
我会重新排版一下。
谢谢兄弟~
++++++++++++++++++++++++++++++++
自由与梦想齐飞,欢迎光临LinuxSir.Org;
开源传万世,因有我参与;
申请google的企业邮件服务遇到问题了
申请的时候,google说中国不支持此服务。请问“北南南北”是怎么申请的呀?谢谢!
遇到什么问题呢?我可以帮助你解决问题
您好,我在北南兄,这边看到你说在使用企业邮局 有遇到问题?那是遇到什么问题呢? 提出来大家分享一下,或者说,我也是可以帮助 你解决问题。我了联系方式:0591-28308054 28308062
简单~
国家选US,行业:教育
祝兄弟好运。
北南 呈上
+++++++++++++++++++++++++++++++++
自由与梦想齐飞,欢迎光临LinuxSir.Org;
开源传万世,因有我参与;
原来如此
谢谢!可惜我不是用于教育的。还是不申请了。
用邮局有什么好处?
没明白这个,直接用 linuxsir@gmail.com 发账号申请确认信有什么问题吗?
另外,有没有试验过 msmtp 呢?貌似这个开发比 esmtp 活跃些,而且有个
本地邮件队列的实现,这样可以避免客户端等待 msmtp 真正联网发信,也可以
在暂时连不上 gmail 服务器时暂存邮件,看 esmtp 主页上的 news 似乎它正在
开发这个功能。msmtp 配置 gmail 也很简单(我用的 ubuntu dapper 自带的
msmtp):
# Set default values for all following accounts.
defaults
tls on
tls_trust_file /etc/ssl/certs/ca-certificates.crt
logfile ~/.msmtp.log
timeout 30
account 126
domain 126.com
host smtp.126.com
from xxx@126.com
tls off
auth login
user xxx
password yyyyy
account gmail
domain gmail.com
host smtp.gmail.com
from xxxx@gmail.com
auth login
port 587
user xxxx@gmail.com
password yyyyy
# Set a default account
account default : gmail
在 ~/.mailrc 中写入
set sendmail="/usr/bin/msmtp"
就可以让 mail 命令使用 msmtp 发送,用 msmtp -a 126 和
msmtp -a gmail 可以选择用哪个 smtp 服务器。
msmtp 和 esmtp 的差别?
用过msmtp,但没用过 esmtp。不管怎么说谢谢兄台的好文了。看过以后觉得这2个还是有点差异啊。下面说下我的看法,可能有错的。
北南的意思好像是,想用 linuxsir@linuxsir.org 为名,对所有用户发邮件。但用户的回信将会发送至 beinan@gmail.com。这样方便管理员看系统信息和用户反馈。说穿了,就好像是把 linuxsir@linuxsir.org 作为 beinan@gmail.com 的别名。
这种说法不知对否?望指点一下。
如果真是这样的话,用 msmtp 就没办法了。msmtp 只是一个发送邮件的程序而已,不能做这个事情的。
有些邮件客户端好像直接能做这个事情。直接用别名来发,而别人回信只会回到真的地址上。比如 gmail 上收邮件时,只会看到发件人的名字,不会看到他的地址。而直接点名字的话,会跳出写信。其中收件人的后面如下所示:
Beinan < beinan@gmail.com >
我的理解不知道对不对?
用我的电子邮件域名,这不就是企业邮局么
用别人的邮局(邮件服务器),用我的电子邮件域名,这不就是企业邮局么?
只要能找到能绑定自己域名的免费邮局即可,把可以自己的站内信托管出去,
我用一个邮件客户端+向别人邮局上的帐号发信,然后让他转发, 伪装成了我自己的邮件服务器发出去的信。