通过exim建立家庭网络的邮件系统

12/3/2006来源:其它邮件服务器软件人气:7237

By Jan W. Stumpel, Oegstgeest, The Netherlands

1 简介
通过Samba,ip Masqerading,和 diald等创建一个linux和Win95混合的家庭网络的技巧,已经有包括Linux公报在内的很多文章提到.但是到目前为止,我还没有找到一个在小型网络上通过一个拨号电子邮件账号创建Mail服务的解决方案. 这篇文章中, 我就来阐述以下我是如何实现的, 实现的功能包括:
网络中的用户可以实现本地邮件的发送和转发.
发往子网范围以外的邮件有正确From:邮件地址. 以使外部的邮件能够正确的回复.
电子邮件账号是所有本地子网用户所共享,但是要实现每个用户仅仅能够收到自己的邮件.
在我的机器上(基于Debian Linux 2.1),我是通过以下程序实现的:
exim作为邮件的收发代理(它比sendmail好配置的多).
fetchmail 用来从ISP一端收取邮件.
pine作为linux端的邮件客户程序(当然象mail之类的程序也可以使用).
Microsoft Internet Mail 作为Windows端的邮件客户程序(同样你也可以使用其它的类似工具).
qpopper 作为POP3服务器, 用来把邮件从Linux系统中转移到Win95机器上.
我在两台机器上(分别安装linux和win95系统)架设了这个系统, 但是无疑这种方案可以在更大一些规模的网络中运行, 而且应付一个小型的办公室应该绰绰有余. 注意: 我所写的这篇文章是基于Debain的. 如果你使用的是别的发行版本, 有些地方需要作适当的改动.
2 网络和命名
在这篇文章中我假定以下的名字(您实际应用时应该做写修改,以适应您的实际情况):
拥有者和系统管理员的名称 Joe Bloggs.
Linux机器名为 heaven.
Win95 机器名为 earth. 通常使用者为 Emily Bloggs.
Joe 在 heaven 机器上的注册用户名为 joe.
Emily 在 heaven 机器上的注册用户名为 emi.
Emily 在 earth 机器上的注册用户名也为 emi. 她的在linux下的heaven机器和 Microsoft 网络下的口令也相同.
Joe在一家域名为isp.com的ISP,拥有一个拨号账号(动态的IP地址),来自ISP的邮件可以通过POP3接收.
Joe在ISP的注册名为jbloggs.
Joe 和 Emily 都使用电子邮件地址:[email protected]
Joe到POP3收信的口令为zaphod.
ISP的发送邮件的邮件服务器为smtp.isp.com.
ISP的接受邮件的邮件服务器为pop3.isp.com.
机器heaven和earth都属于一个域,域名为home. 这个域名表示使用范围局限于一个内部家庭网络之内. Joe并没有注册这个域名, 因而对于外部网络来说, 并不能直接识别这个域名.
此外,我还假设内部网络已经正常工作, 通过exim建立家庭网络的邮件系统
 
By Jan W. Stumpel, Oegstgeest, The Netherlands

1 简介
通过Samba,IP Masqerading,和 diald等创建一个Linux和Win95混合的家庭网络的技巧,已经有包括Linux公报在内的很多文章提到.但是到目前为止,我还没有找到一个在小型网络上通过一个拨号电子邮件账号创建Mail服务的解决方案. 这篇文章中, 我就来阐述以下我是如何实现的, 实现的功能包括:
网络中的用户可以实现本地邮件的发送和转发.
发往子网范围以外的邮件有正确From:邮件地址. 以使外部的邮件能够正确的回复.
电子邮件账号是所有本地子网用户所共享,但是要实现每个用户仅仅能够收到自己的邮件.
在我的机器上(基于Debian Linux 2.1),我是通过以下程序实现的:
exim作为邮件的收发代理(它比sendmail好配置的多).
fetchmail 用来从ISP一端收取邮件.
pine作为linux端的邮件客户程序(当然象mail之类的程序也可以使用).
Microsoft Internet Mail 作为Windows端的邮件客户程序(同样你也可以使用其它的类似工具).
qpopper 作为POP3服务器, 用来把邮件从Linux系统中转移到Win95机器上.
我在两台机器上(分别安装linux和win95系统)架设了这个系统, 但是无疑这种方案可以在更大一些规模的网络中运行, 而且应付一个小型的办公室应该绰绰有余. 注意: 我所写的这篇文章是基于Debain的. 如果你使用的是别的发行版本, 有些地方需要作适当的改动.
2 网络和命名
在这篇文章中我假定以下的名字(您实际应用时应该做写修改,以适应您的实际情况):
拥有者和系统管理员的名称 Joe Bloggs.
Linux机器名为 heaven.
Win95 机器名为 earth. 通常使用者为 Emily Bloggs.
Joe 在 heaven 机器上的注册用户名为 joe.
Emily 在 heaven 机器上的注册用户名为 emi.
Emily 在 earth 机器上的注册用户名也为 emi. 她的在linux下的heaven机器和 Microsoft 网络下的口令也相同.
Joe在一家域名为isp.com的ISP,拥有一个拨号账号(动态的IP地址),来自ISP的邮件可以通过POP3接收.
Joe在ISP的注册名为jbloggs.
Joe 和 Emily 都使用电子邮件地址:[email protected]
Joe到POP3收信的口令为zaphod.
ISP的发送邮件的邮件服务器为smtp.isp.com.
ISP的接受邮件的邮件服务器为pop3.isp.com.
机器heaven和earth都属于一个域,域名为home. 这个域名表示使用范围局限于一个内部家庭网络之内. Joe并没有注册这个域名, 因而对于外部网络来说, 并不能直接识别这个域名.
此外,我还假设内部网络已经正常工作, 并且已经拥有使用daild实现的非永久拨号连接. 在haven机器上也不起DNS服务. /etc/resolv.conf中只是加入了ISP提供的两个DNS服务器的地址. 同样的设置也要加在earth机器上的TCP/IP设置中.
heaven机器上的/etc/hosts文件内容如下:

127.0.0.1 localhost
192.168.1.1 heaven.home heaven
192.168.1.2 earth.home earth

在earth机器上的c:windowshosts文件中的内容跟heaven机器中的/etc/hosts文件的内容一样.

3、邮件地址
在"To:"和"From:"中指定邮件地址是一封邮件的基本组成部分, 此外还有更多的内容. 举例来说:
To: Emily Bloggs

'Emily Bloggs'是一个"real-name part"(真实姓名部分). 这是通过撰写电子邮件的程序加上的. 这个部分就是将邮件发送给Emily本人的依据. 注意:如果在real-name part中有句点存在, 邮件地址必须用"符号包围起来(例如:"Joe C. Bloggs"). 您可以用man mailaddr参考一下相关的帮助页.

4 配置exim
在Debian linux下, 这一切都是由eximconfig程序来完成的. 程序将问到一些问题,你可以参考下面的回答:
你的,