真实网络环境下使用易邮搭建网络邮件服务器并测试通过
| 虛機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())));
? }
?
}
總結
以上是生活随笔為你收集整理的真实网络环境下使用易邮搭建网络邮件服务器并测试通过的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 本地邮件服务器 易邮 使用
- 下一篇: SpringBoot基于易邮邮件服务器实