真实网络环境下使用易邮搭建网络邮件服务器并测试通过

虚机IP地址

huyouni.cn

自己注册的域名

购买阿里云的公网虚拟主机的ip:114.215.154.53

实验环境

服务器:windows server 2012 64位

操作方式

本地电脑远程连接阿里云服务器

易邮服务器下载地址

http://download.csdn.net/detail/u010476739/8061899

实验文档下载地址

http://download.csdn.net/detail/u010476739/8061903


一. 搭建邮件服务器

1.1 在域名申请的地方注册mx解析记录:

1.1.1首先注册一条A记录:

mail.huyouni.cn如图:


1.1.2然后注册mx记录:


都注册好后,会看到:


1.1.3 为了确认能使用这条mx记录了,在自己的电脑上测试:

Cmdànslookupàset type=mxàhuyouni.cn,这样会显示结果,过程如图:


这就说明,确实注册了一个mx记录,接下来就在服务器这边搭建邮件服务器了

1.2 在自己的服务器上安装并设置好易邮邮件服务器

(安装包直接双击安装,傻瓜式)

安装好之后,设置如下:



设置好之后,新建两个账户,分别是:jack 123456,john 123456(密码均为123456)

建立jack账户示例:


两个账户都建立好之后,系统显示:


可见默认每个用户都有一封邮件(这个是系统管理员发送给新用户的邮件)。


二、服务器内部两个用户互发邮件

接下来我们就手动在自己的电脑上,给我们配置好的邮件服务器发送邮件了:

         首先使用telnet连接到我们的邮件服务器的主机(无法打开telnet功能的见附录A),连接过程这里提供,向下则不再提供:


一步一步的执行下面的命令。(下面每个命令以及命令的含义见附录B,发送邮件时登录到服务器是需要将用户名和密码进行base64编码的,base64编码的代码见附录C)


这时再观察我们的我们的服务器上面的邮件服务器的页面:


可以看出我们发送的邮件已经到我们的服务器了。

下面我们使用john的账号去获取我们刚刚发送的邮件:


这次我们看到我们刚刚发送的邮件了!

三、通过互联网发送邮件(服务器和互联网服务器之间发送邮件如:sina)

(我提前注册号了sina的一个邮箱,用户名:jack_demo@sina.com,密码:jack_demo)

5.1:下面是使用自己服务器的jack账户给sina的jack_demo@sina.com账户发送邮件

稍等片刻,然后登录新浪的邮箱,接收到了邮件:


现在成功了一小半!

5.2、下面是使用新浪的账号:jack_demo@sina.com给我们的jack@huyouni.cn发送一封邮件(可以再sina的web页面中手动发送,也可以在自己的cmd中连接到sina的服务器发送,后面的附录B里提供了后者的发送命令)

在Sina的web页面里给jack@huyouni.cn发送邮件情况如下图:


稍等片刻,查看我们的邮件服务器,如图:


这样我们直接从服务器端看到了收到的来自新浪邮箱的邮件,那么我们还可以使用telnet在自己的cmd窗口中取出来这封邮件:

 

下面是自己取出来sina发送来的邮件情况,如图(图里面的邮件内容,我也没看懂):


现在大功告成了,总结一下:我们完成了域名注册MX记录、安装配置服务器上的邮件服务器、和互联网上的其他邮件服务器互发邮件。

 

附录A:

telnet命令提示不是内部命令或程序的时候,将自己电脑的telnet功能开启:




附录B:

(附上自己试验的在命令行输入的那些命令,使用的时候现在文本编辑器里面根据自己的情况修改好,然后直接粘贴到命令行中即可。)

*******自己远程易邮服务器(内部的两个用户之间):jack给jhon发送邮件*********

telnet mail.huyouni.cn 25        【使用telnet命令远程连接到mail.huyouni.cn主机的25号端口】

ehlo xxx                      【向服务器打个招呼,‘xxx’代表任意值】

auth login                            【服务器,我要登陆了】

amFjaw==                           【自己登陆的用户名,是要经过base64编码的,这里的用户名是‘jack’经过base64编码后是:amFjaw==】

MTIzNDU2                       【自己登陆的密码,是要经过base64编码的,这里的密码是‘123456’经过base64编码后是:MTIzNDU2】

mail from:<jack@huyouni.cn>         【表示这封邮件是谁发送的】

rcpt to:<john@huyouni.cn>     【表示邮件发送的目的地】

data                             【标记下面是邮件的内容】

from:<jack@huyouni.cn>                  【再次说明邮件时谁发送的】

to:<john@huyouni.cn>             【再次说明邮件时发送给谁的】

subject:给各位老师的一封信        【邮件的主题】

各位老师:                       【邮件的内容】

                                     【注意:这里有一空行,起到的是标记作用】

.                                    【这里的符号‘.’结合上面的空行表示邮件内容结束】

quit                              【断开和服务器的连接】

*********发送成功了***********

 

 

**********自己远程易邮服务器(内部的两个用户之间):jhon接受jack发送的邮件***********

telnet mail.huyouni.cn 110      【使用telnet命令远程连接到mail.huyouni.cn主机的110号端口】

user john                    【表示自己是:john】

pass 123456                       【自己的密码是:123456】

stat                              【看一下自己邮箱的状态】

list                                【列出来自己邮箱的邮件】

retr 2                                    【取出来列表中的第二封邮件】

************注意不能因为输入错误就在命令行中进行修改,这是会出问题的。实验成功!******

 

 

 

 

*******自己远程易邮服务器:本地jack账号给新浪上的一个账号(用户:jack_demo@sina.com,密码:jack_demo)发送邮件*********

telnet mail.huyouni.cn 25

ehlo xxx

auth login

amFjaw==                           【base64编码:jack】

MTIzNDU2                          【base64编码:123456】

mail from:<jack@huyouni.cn>

rcpt to:<jack_demo@sina.com>

data

from:<jack@huyouni.cn>

to:<jack_demo@sina.com>

subject:给各位老师的一封信

火焰,你好,this is a demo!

        

.

quit

*********发送成功了***********

 

 

 

 

*******使用新浪上的一个账号:jack_demo@sina.com给我们服务器账户:jack@huyouni.cn发送一封邮件发送邮件,(这个可以再浏览器的页面中手动发送)*********

telnet smtp.huyouni.cn 25

ehlo xxx

auth login

amFja19kZW1v                           【base64编码:jack_demo】

amFja19kZW1v                           【base64编码:jack_demo】

mail from:<jack_demo@sina.com>

rcpt to:<jack@huyouni.cn>

data

from:<jack_demo@sina.com>

to:<jack@huyouni.cn>

subject:给各位老师的一封信

火焰,你好,this is a mail from sina.

        

.

quit

*********发送成功了***********

 

 

 

*******取出我们服务器上的jack账户下收到的来自sina的邮件*********

telnet mail.huyouni.cn 110

user jack

pass 123456

stat

list

retr 2

************注意不能因为输入错误就在命令行中进行修改,这是会出问题的。******

附录C

附上实验时base64编码的代码(使用的时候在eclipse中运行换上自己的要进行base64编码的值就可以了):

package com.jack;

 

import com.sun.mail.util.BASE64EncoderStream;

 

public classTemp {

  public static void main(String[] args) {

     System.out.println(newString(BASE64EncoderStream.encode("jack_demo".getBytes())));

     System.out.println(newString(BASE64EncoderStream.encode("jack_demo".getBytes())));

  }

 

}







  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jackletter

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值