• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

如何安装一个hotmail的邮箱系统

发布: 2007-7-02 21:50 | 作者: admin | 来源: | 查看: 16次 | 进入软件测试论坛讨论

领测软件测试网 这个指南将引导你从开始到完成安装"hotmail"系统.过程分为几个阶段,你可以获得更多的技术指导.附加,我们包括了在NT和UNIX系统上完成安装的过程,使你能把它们综合在一起能很好的运行.

1. hotmail 系统概况
Hotmail系统是人们通用WEB使用的邮件系统.

为了启动hotmail服务,你需要安装一些组件让它们一起运行.这些包括基本的邮件服务和WEB界面.你也可以允许用户在线创建它们的组,你应该提供一些域名或是虚拟域名,希望允许某些用户管理他们自己独有的域.这些全部通过NetWin组产品.你可能在一个完善的系统中已经有用一些组件,你只需要添加一个WEB界面.假设它们遵循相关标准,那们就是可行的.

首先,你的hotmail系统需要下列组件.

某种WEB服务.支持WEB接口CGI应用服务web页.(CGI = NetAuth,Cwmail,DmailWeb 或Webmail)

从其它系统接收和发送邮件.也就是SMTP服务.DSMTP是Dmail邮件服务的一部分.

Email到你的用户,也就是pop服务.DPOP也是Dmail邮件服务的一部分.

在网络中从其它到查找你的mail服务传递邮件.需要DNS.你需要安装一个已有的DNS或者你自己的DNS.你当然需要记录,MX(Mail Exchange)记录.

如果你让用户用类似NetAuth的WEB界面在线创建或是离线操作,你可以用unix或NT的用户/密码,或是用email数据库或是LDAP数据库.NetAuth能够配置创建任何类型的用户.

用户阅读和发送邮件,比如一个可以通过WEB的邮件客户端.CWMail/Dmailweb 或是第三方软件WEBmail,WebMail也会正常使用.

管理你的系统,NetAuth作为系统管理者管理用户帐户,管理特殊的域名,你也可以设置用户权限.

你可以在一个域名或是在更复杂的域名下创建一个hotmail系统.一个简单的系统如图:

左边是因特网和一个域名服务.在右边的大框里,是你的服务器.正常接收WEB邮件通用你的WEB服务器.通用连线连接到email服务也是通过传统的email客户端.你有一个WEB服务器.两个cgi(CWmail各netauth),POP和SMTP服务及一些用户和口令的数据库.

我们假设某人用你的hotmail系统在外网发送给你邮件,然后得到响应:
john,在其它的系统中正在发送信息给sue.使用者在你的WEB邮件系统中有一个记录:
john在你的邮箱客户端创建了一个短信发送到sue@yourplace.com地址.
他的客户端软件连接到你本地的SMTP服务器并收到此消息.通过域名解析发送到yourplace.com.域名服务器在你的机器上获得SMTP服务器的IP地址.两个SMTP服务器连接到25端口.你的SMTP服务器首先查找用户sue.为得到,它通用外部权限认证检测用户数据,然后从sue接收邮件并添加到sue的地址栏.
Sue用她朋友的计算机,打开浏览器并连接到:http://yourplace.com/scripts/cwmail.exe,然后在你的机器上查找域名解析.她的WEB浏览器连接到你的WEB服务器80端口.你的WEB服务器作为进程启动cwmail.exe程序,获得请求并等待返回一个web页面.

CWMail进入注册页请求用户和口令.用过WEB浏览器寄给WEB服务器.然后CWMail结束.

Sue输入用户和口令点击login按扭,然后发送到你的WEB服务器进入cwmail.

CWMail连接到POP服务器进行用户认证,然后查找是否有新的邮件.
POP服务器验证用户数据确定口令正确性然后通过CWMail.
CWMail通过它返回到WEB服务器,对于WEB浏览器,Sue选择一条邮件,阅读并回复.(这些交互都是在浏览器之间,通过WEB服务器和CGI程序完成)

连接到你的smtp服务器和从john的回复寄到cwmail
你的smtp服务器用dns环回查找john地址,同时寄到你的smtp服务器.

这个简单交互描述了两个人邮件互递的过程.他们需要用户名及认证方式,下面是这些的安装文档.

安装目录:

1.总览
2.安装Dmail
3.安装CWMail /Dmailweb
4.安装Netauth
5.添加一个虚拟域名.
6.DNS,MX记录.
7.Telnet测试
8.Nslookup测试

为了安装一个最基本的系统,你至少需要2,3,4步.它装指导你安装DMail,CWMail,NetAuth,创建一个邮件服务器域名.完成以后,你可以从第五步开始设置一个虚拟添加到你的邮件系统.如果你的机器有注册的域名,如: myplace.com, 你只需在适应的DNS中检测MX记录确定邮件是发送到anyone@myplace.com.详细细节你可以参看第六步.测试你的系统是否安装完整,可以用telnet和nslookup进行调试.

--------------------------------------------------------------------------------

2. 安装DMail.
最简单的安装方式是第一次就连接到你的主机域,以后再添加一个虚拟的邮件域.安装完以后再解释如何用NetAuth进行认证,继而创建一个类hotmail的邮件系统.
第一步: 安装
到DMail的下载网址:http://netwinsite.com/dmail/download.htm下载到你的系统中.在NT系统中它自解压生成安装程序.在Unix中你需要展开压缩包,然后再安装. 安装完成后生成一个最基本的系统,没有外部认证及域.
第二步:添加外部认证
为了添加外部认证你必须编辑配置文件dmail.conf. 我将解释如何编辑这个文件,因为在UNIX系统中只有这种配置方法.
cd /etc
vi dmail.conf
找到有"authent_method"的行,将@#nt_user@#或@#unix_user@#改为@#external@#.
添加authent_process setting到/usr/local/dmail/nwauth,这个外部认证过程称为NWAuth,你可以在DMail的安装目录找到.
将authent_domain setting 设为@#true@#.这个设置命令的意思是Dmail查找你所用域名,及允许你以后添加虚拟域.如果没有设为TRUE值,添加虚拟域名时将产生警告.
第三步: 加载配置
你必须将新修改的配置文件加载到你的邮件服务器中.根据系统提示,敲入tellpop reload 和 tellsmtp reload,首先你可能要到DMail目录执行命令行.

在可用的邮件域中你已经安装完成DMail.接下来你需要安装CWMail和NetAuth.在此之前你可以看看"添加一个虚拟域名"章节.

--------------------------------------------------------------------------------
3.安装配置CWMail /Dmailweb

再到下载页:http://netwinsite.com/dmailweb/download.htm 下载到你的系统中.NT系统进行自解压,UNIX系统中你需要进行解压,然后运行WMSetup命令.当你安装完成后,可以键入: http://your.domain/scripts/cwmail.exe(dmailweb.exe) 或 http://your.domains/cgi-bin/cwmail.cgi(dmailweb.cgi). 你可以看到一个注册页.

--------------------------------------------------------------------------------

4. 安装配置Netauth.

到下载页:http://netwinsite.com/netauth/download.htm 下载到你的系统中.NT系统进行自解压,UNIX系统中你需要进行解压,然后运行nasetup命令.如果没有问题,你可以连接到:http://your.domain/scripts/netauth.exe 或 http://your.domains/cgi-bin/netauth.cgi. 你可以看到验证用户页.
测试NetAuth,试着添加一个用户.你可以在username档中添加"test",点击"check".到添加页面,你要输入密码然后点击添加.然后进行确认.如果有提示错误,你可以看NetAuth的手册页.
当你有新用户时,你可以连接到:http://your.domain/scripts/cwmail.exe (dmailweb.exe) 或 http://your.domains/cgi-bin/cwmail.cgi (dmailweb.cgi). 你可以看到一个注册页.输入用户和密码,第一次可能会询问你一些更详细的资料.

--------------------------------------------------------------------------------

--------------------------------------------------------------------------------
5.添加一个虚拟域名

一旦你用NetAuth创建了用户,而且这些用户正用CWMail注册,你将准备添加一个虚拟域名.因此你将需要设置dmail.conf,netauth.ini和cwmail.ini.当然为了安全你可能需要备份一下以防不测.NetAuth和CWMail在它们的临时目录已经创建了备份.配置有任何问题时你都可以更新这些备份.
记住,确定有备份时在WEB服务器目录修改.ini文件.
第一步:Dmail.conf
"vdomain" 假定是你所设置添加的虚拟邮件域名,当然它只是一种格式.
vdomain <prefix> <suffix or IP number / name> <domain name> <drop path>
当我们创建虚拟域名和进行域名认证(authent_domain),我们不必担心"prefix"设置, 重要是更改"suffix/ IP number"设置.
如果你有更多的IP并想让每个IP规划一个域,那你将创建"基于虚拟域的IP",否则将创建"基于虚拟域的suffix".

下面是基于vdomain行的后缀例子:
vdomain d2 /domain2 mail.domain2.com dmailin
vdomain d2 /dom2 mail.domain2.com /usr/local/dmail/in/2

下面是基于vdomain行的IP例子:
vdomain d2 1.2.3.4 mail.domain2.com dmailin
vdomain d2 2.3.4.5 mail.domain2.com /usr/local/dmail/in/2
当然,实际的后缀或是IP值将是不同的,它依赖于你的系统和你真实的IP.

现在你已经添加了vdomain行到dmain.conf,打开它并找到"host_domain"设置,输入自己的vdomain并在后面注释.这将有利于你以后阅读.如果你
需要的话可以添加更多的vdomain的行,但仅限于基于IP做域名的情况,并保证IP是可用的.你不能同一个IP添加两个vdomain.否则两个
vdomain都会是同一后缀.
现在添加了vdomain行,记住域名后缀或IP也是作为域名解析.如果你是用后缀的情况,建议你用分隔符作为后缀的起始符.在我的例子里有用@#/@#.
你也可以用@#@@#或是其它的字符.但是推荐使用@#/@#.

第二步:更新配置
为使新的配置起作用,你需要更新邮件服务器.在终端你输入:"tellpop reload"和"tellsmtp reload",第一次你可能需要到DMail目录执行命令.

第三步:Cwmail.ini
添加你的vdomain一行或是多行后,你必须申明关于域名的CWMail.为了这样做,在cwmail.ini文件中使用vhost行.CWMail处理虚拟邮件域名并能
够在URL地址中浏览. www.domain2.com地址是你所添加的第一个虚拟域.你必须添加vhost行像这样: "vhost www.domain2.com"
vhost作用于不同的区段,CWMmail首先匹配URL地址到vhost行,并加载所有行的设置,当访问vend行时会返回加载默认设置.
ini文件可能类似如下设置:

[cwmail.ini]
templates cwmail
pophost 1.2.3.4
smtphost 1.2.3.4

vhost www.domain2.com
pophost 2.3.4.5

vhost www.domain3.com
pophost 3.4.5.6
templates cwmail3

vend
nwimg /nwimg

实际上,ini文件有三种不同的方式加载.如果地址是"www.domain2.com,那么pophost和smtphost模块会被加载,并且pophost并变成
"2.3.4.5".然后nwimg设置也被加载.如果地址是"www.domain3.com",那么加载的模块会是:"cwmail3",pophost值是"3.4.5.6",如果地址是其
它,vhost环境变量将会忽略.
CWMail从SERVER_NAME环境变量中获得URL地址.有时这个变量并不是预定值,如果你发现vhost段并没有加载,你可以试试别的环境变量.为
申明CWMail作用另一环境变量,设置vhost_match配置这个变量值.类似"HTTP_HOST"返回URL主机.
你想添加新的设置到vhost段,这些变量要么替代以前的配置或是添加到先前的配置后.当模块设置时,新值将会取代旧的设置,在body_add设置
的情况,新值将添加到所有值的最后列.
现在你必须添加新的vhost段匹配添加的新虚拟域名.如果你使用基于域的后缀,vhost段必须包含后缀值(在vdomain行需要相同的值).如果使
用基本IP的域,pophost,smtphost设置需要新的IP值.启动新虚拟域名时,记住在vhost段中包含域名设置.它应该和vdomain行中的域相匹配.

第4步: Netauth.ini

在安装虚拟域的情况下,NetAuth也使用vhost段.它的运行类似于CWMail.如果需要的话也用vhost_match设置.
你必须添加vhost段匹配新的虚拟域名.如果使用基于后缀的虚拟域,你需要进行后缀设置.不像CWMail的NetAuth早期版本(version 3.0e或更早)
用双字符.而且suffix_seperator使用默认的的隔离符@#/@#.除非你在vdomain行使用其它的字符,你不必更改设置.后期版本(Netauth 4.0+)的后
缀设置使用CWmail的后缀.如果你使用基于IP的虚拟域,你必须为新的IP设置详细的新pophost设置.记得开启新域名时在vhost段中包含域名设置
,在vdomain行中匹配新的域名.

--------------------------------------------------------------------------------
------------------------------------------------------- -------------------------

6. DNS,MX,A 记录
DNS管理需要一个主名称服务器和一个从名称服务器.因为InterNIC并不承认你的域名,除非因特网上的域名信息至少有两个DNS服务器.另一个原

因是如果你仅有一个域名,一但关闭,用户将会阻止浏览因特网.下面给出三项DNS管理:

1.用你的ISP提供的主从名称服务器.
2.用你自己的主从名称服务器.
3.用一个ISP提供的名称服务器,另一个由自己设置管理

1:
你必须通知你的ISP为你分配主从名称器.如果他们不能或是不愿意,你不得不使用第二项.第二步是公布你的ISP提供的DNS记录,允许交互你的网

络.附加的,如果你需要收到此域的邮件和你的ftp和www服务器的档案,你必须有MX记录.你也必须通知你的ISP商这些地址.

2:
下列理由是你使用自己的服务器名称,包括:
你的ISP商不允许你使用或不能为你提供合法的名称服务器.
你有因特网的一部分(名称空间)
如果你运行是基于IP的应用,你的内部网络用户如果通过名称访问外部网络,你并不想为名称或是地址做广告,或是受到外部攻击的话.
你想完全控制自己的DNS服务器,这意味着你可以直接修改,而不必等待你的ISP商去为你改变什么.
你必须购买DNS软件.像大多数运行于Unix机器的服务器一样,最流行的是BIND,找到它并学习如何运用DNS管理.

3:
很多部分都类似于2项,有两项选择:
你管理主名称服务器.
你管理从名称服务器.
如果你选择管理主名称服务器,那你应该记住自己不得不管理DNS记录.
如果你只是有一个从名称服务器,那么你的ISP提供商将会为你做任何事,你的服务器也只是从主服务器上周期性的简单下载一些数据.

DNS记录:

DNS记录,MX记录(邮件传递),A 记录号(用于解析机器名到IP)

MX记录:
MX记录,或是邮件传递记录,如下格式:
<domain_name> <machine_with_mail_server> <preference>

例如:一个MX记录可能包含:
netwinsite.com netwin.co.nz 0;
netwinsite.com mail.netwin.co.nz 1;
netwinsite.com mail3.netwin.co.nz 2;
在这个例子当中,邮件首先传递到netwin.co.nz,如果传递失败,将传送到mail.netwin.co.nz,最终到mail3.netwin.co.nz.


A 记录号

@#A@#记录联接计算机名和活动的IP地址,如下格式:
<computer_name> <address>

例如:一个A记录可能如下:
netwin.co.nz 1.2.3.4
这个例子里,DNS服务器将用netwin.co.nz和IP 1.2.3.4到本地机器.
你需要在MX记录里为所有的机器有A记录.所有的机器是指你希望运行ftp(文件传输协议)和运行www服务的机器.

--------------------------------------------------------------------------------

7. 用@#Telnet@#

7. Using @#Telnet@#
Telnet命令适用于NT和Unix系统.它允许你测试IP地址的任何端口.
这里我们需要检测:
SMTP端口.
POP端口.
我将重点介绍Telnet在Unix系统下的测试方法.


Unix - Telnet
为了执行telnet,在命令提示符下健入:telnet,你会看到类似的界面:
telnet>
键入 ? ,你可以看到可用的命令参数列表.为连接到机器,键入:open <machine> <port>,<machine>是指你的IP或是你的计算机名.端口包括:
23:telnet端口.25:smtp端口.110:pop端口.还有一些其它端口.连接成功后,你可以看到此端口的回应.
为了测试你系统的这些端口,你应该知道每个端口是如何工作的.下面解释一下POP端口是如何工作的.

POP 端口
POP端口用于检测/接收/删除来自邮件服务器的邮件.端口号110.进入POP服务器后你会执行一系列的命令.当然首先你必须登入POP服务器.键入:
user <username>, 回车, pass <password>,回车.当然你必须有合法的用户和口令.
命令 例程 作用
list list list命令列出用户的邮件.
uidl uidl uidl命令通过UID号列出信息行.T
retr retr 1 retr命令是重新找回信息的内容.这个例程里是一条信息.
dele dele 1 删除记录.这个例程里是一条信息.
top top 1 10 top命令显示X条记录.这个例子里是10行.
quit quit 该命令是断开你的POP服务器连接.

--------------------------------------------------------------------------------

8. Using @#Nslookup@#

Nslookup是一个命令行的实用程序.是一种简单的检测你的DNS解析是否正确的命令.

执行nslookup,你可以看到类似如下信息:


Default Server : ns-100Mb.webpros.com
Address : 206.127.192.1
>

这是nslookup命令的帮助文件列表.为了获得帮助,键入:"?",按回车.你也可以在命令后加你想查找的域名直接查找.

Default Server: ns-100Mb.webpros.com
Address: 206.127.192.1
>netwinsite.com
Server: ns-100Mb.webpros.com
Address: 206.127.192.1

Name: netwinsite.com
Address: 207.230.97.10

>

你也可以查找 MX 记录


Default Server: ns-100Mb.webpros.com
Address: 206.127.192.1
>set type=MX
> netwinsite.com
Server: ns-100Mb.webpros.com
Address: 206.127.192.1

netwinsite.com preference = 10, mail exchanger = eagle.webpros.com
netwinsite.com preference = 20, mail exchanger = falcon.webpros.com
netwinsite.com nameserver = ns.webpros.com
netwinsite.com nameserver = ns.professionals.com
eagle.webpros.com internet address = 206.127.192.10
falcon.webpros.com internet address = 206.127.192.2
ns.webpros.com internet address = 206.127.192.1
ns.professionals.com internet address = 207.230.127.126

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网