第三章 在Debian上用Exim配置邮件服务器
本站整理 发布时间:2009-03-10 11:16:52 作者:jb51.net
我要评论
本文是在《通过exim建立家庭网络的邮件系统》一文的基础上修改的
输入用户名ganghua和她在linux下的口令。 输入姓名为ganghua Leng;
电子邮件地址为 ganghua@test.com。
注意电子邮件地址必须以本地域做后面的地址。
4 小测试
通过上述的设置,本地的用户之间应该已经可以实现相互的发送和回复信件了。在Outlook
Express里面的测试我就不说了,我来说一下在Debian上面用mail来做测试。
#
mail kanaka
Subject:
This is my First test-mail!
Hi,kanaka,
This is the first time that I send a mail by exim.
.
Cc: kanaka@yeah.net
#
上面我们给本地的kanaka发了一封邮件,并抄送给了互联网上的kanaka@yeah.net。注意,要结束一封信的内容,在新的一行输入“.”就可以了。我在Win2000上用Outlook
Express就可以收到发给kanaka的信;而发给kanaka@yeah.net的信,我到freemail.yeah.net站点上去,也收到了。
现在test.com已经真正成为了一个具有邮件转发功能的本地域,而且可以发送邮件到互联网上的kanaka@yeah.net。但是,一个格式为From:kanaka@test.com的地址显然是无法被外部用户回复的,
因为对于外部网络来说, test.com是一个不存在的(因而不合法)的域名。因此,我们还需要修改From:的地址。
5 修改 From: 的地址
在往互联网上发送邮件的时候,为了他们可以正确的回复,我们必须把本地的From:地址格式改变成为一个合法的电子邮件地址。
借助于exim的"传送过滤器", 我们可以实现这一功能。
往外部转发的邮件经过这个传送过滤器以后, From:
中的地址就会被改变, 而对于本地邮件则没有什么影响。
下面的过滤器将实现这个恶作剧式的技巧,
首先我们确定我们要改变的地址永远包含在"<>"符号之内。
虽然不能完全保证, 但是通常的邮件程序:mail甚至Microsoft
Outlook Express都是生成这种格式的电子邮件地址。
5.1 创建outfit文件
我们来创建一个文件,/usr/bin/outfit,内容如下:
#!/usr/bin/perl
while (<STDIN>) {
if (/^From: /) {
s/<.*>/<'kanaka@yeah.net'>/;
print "$_"; last;
}
print "$_";
}
while (<STDIN>) { print "$_"; }
把这个文件放到/usr/bin目录中,命名为outfit,不要忘记把上面的电子邮件地址换成你自己的电子邮件地址!
然后,通过下面的命令chmod +x /usr/bin/outfit加上可执行的权限。
#
chmod +x /usr/bin/outfit
5.2 修改exim.conf
打开/etc/exim/exim.conf,找到下面一行:
driver = smtp
在它的下面加上两行,就成了:
driver = smtp
headers_remove = "sender"
transport_filter = "/usr/bin/outfilt"
通过上述对/etc/exim.conf文件的修改,无论何时发送一封电子邮件到本地域以外时,都可以被exim正确的投递了。如果你使用的是拨号网络,那么Exim(通过daild)每发送一次邮件,就会向外拨一次号。而我们公司的宽带24小时在线,所以邮件每次都是直接就发出去了。
6 配置Fetchmail
我们需要运行fetchmailconfig,来在你的主目录里产生一个叫.fetchmailrc的文件,否则你就不能使用fetchmail。
fetchmial将从互联网的邮件服务器上取回邮件(并转交给exim再做本地投递)。
#
fetchmailconfig
fetchmialconf must be run
under X
你看到了吧,它说fetchmialconf这个程序比如在X下面运行。唉!我们要把debian做服务器用,而服务器根本不需要安装X的,我们不会为了配置fetchmail再去安装一个X系统和一个窗口管理器吧!好吧,那么我们就手工写这个文件吧,其实也很简单。
由于我们是要把邮件接收到kanaka在本地的信箱里面,所以应该在kanaka的主目录里面产生这个.fetchmailrc,所以我们切换到kanaka用户,再进行操作:
# su
kanaka
$ cd
$ nano
.fetchmailrc
然后,输入以下内容,存盘退出即可:
set postmaster "postmaster"
poll pop3.yeah.net with proto POP3 user "kanaka@yeah.net" password "kanakapswd"
.fetchmailrc文件可以在不同用户之间相互拷贝,只要把文件的属主设置成相关的用户即可。不过把用户的邮件密码用明码写在这个文件中显然是一种不明智的方式。
或许应该有更好的方法,请大家告诉我啊,呵呵。
然后,使用fetchmail命令来把邮件从互联网上拖到本地来:
$
fetchmail
1 message for kanaka@yeah.net at
pop3.yeah.net (1648 octets).
reading message kanaka@yeah.net@pop3.yeah.net:1 of 1 (1648 octets) .
flushed
然后,你可以在win2000的Outlook Express里面,从本地接收这些邮件。
7 修改exim的投递限制
Exim 缺省的一次投递邮件的最大数量为100封。
你可以根据你们单位的实际情况,修改这个值。如果需要取消这个限制,就把它改为0,不过小心受到攻击:
smtp_accept_queue_per_connection = 0
8 综合测试
你可以在Debian上和Win2000上多发几封邮件,做一下测试。
9 TODO
在下一个版本中,我们将描述如何使用.forward文件,实现转发,把信件正确的投递邮件给某个用户,而不是一下子都发给kanaka。
我们还将描述,如何建立一个webmail系统。
10 结束语
本文是《Debian服务器设置入门》系列教程之第三章,建议您按照顺序阅读,有问题可以和作者kanaka联系。
11 参考文献
本文在开头就声明,本文是在《通过exim建立家庭网络的邮件系统》一文的基础上修改的,作者:Jan
相关文章

Fedora Linux 42 稳定版发布: 带来大量新功能和软件更新
Fedora 42昨日发布,这是 Red Hat 赞助开发的杰出前沿 Linux 发行版的最新版,包含大量新功能和软件更新,使其成为 2025 年上半年发布的一款出色的 Linux 操作系统之一,内2025-04-16
如何在Linux查看硬盘信息? 查看Linux硬盘大小类型和硬件信息的5种方法
使用Linux系统的过程中,查看和了解硬盘信息是非常重要的工作,尤其是对于系统管理员而言,那么在Linux系统中如何查看硬盘信息?以下是具体内容介绍2025-03-12
如何在 Linux 中查看 CPU 详细信息? 3招轻松查看CPU型号、核心数和温度
在日常运维工作中,获取 CPU 信息是系统运维管理员常见的工作内容,无论是为了性能调优、硬件升级还是仅仅满足好奇心2025-03-11
什么是 Arch Linux? 独树一帜的Arch Linux发行版分析
Arch Linux是为简化,优化,现代化,实用主义,用户中心和多功能性而创建Linux发行版,究竟是什么让 Arch 与众不同?下面我们就来简要解读2025-02-19
一直用的linux办公,想要将笔记本电脑从 Linux 系统切换回 Windows 11,我们可以制作一个win11装机u盘,详细如下2025-02-17
Rsnapshot怎么用? 基于Rsync的强大Linux备份工具使用指南
Rsnapshot 不仅可以备份本地文件,还能通过 SSH 备份远程文件,接下来详细介绍如何安装、配置和使用 Rsnapshot,包括创建每小时、每天、每周和每月的本地备份,以及如何进2025-02-06
Linux Kernel 6.13发布:附更新内容及新特性解读
Linux 内核 6.13 正式发布,新版本引入了惰性抢占支持,简化内核抢占逻辑,通过减少与调度器相关的调用次数,让内核在运行时表现更优,从而提高效率2025-01-23
五大特性引领创新! 深度操作系统 deepin 25 Preview预览版发布
今日,深度操作系统正式推出deepin 25 Preview版本,该版本集成了五大核心特性:磐石系统、全新DDE、Treeland窗口合成器、AI For OS以及Distrobox子系统2025-01-18
Linux Mint Xia 22.1重磅发布: 重要更新一览
Beta 版 Linux Mint“Xia” 22.1 发布,新版本基于 Ubuntu 24.04,内核版本为 Linux 6.8,这次更新带来了诸多优化和改进,进一步巩固了 Mint 在 Linux 桌面操作系统领域的2025-01-16
LinuxMint怎么安装? Linux Mint22下载安装图文教程
Linux Mint22发布以后,有很多新功能,很多朋友想要下载并安装,该怎么操作呢?下面我们就来看看详细安装指南2025-01-16









最新评论