主頁 >  其他 > Linux郵件服務器搭建實驗

Linux郵件服務器搭建實驗

2020-11-01 21:46:58 其他

Linux郵件服務器搭建實驗

前言

本文重點在于后面的搭建程序,前面會簡單介紹郵件服務原理與作業流程,如果有什么錯誤或遺漏的地方,歡迎大家指正批評,謝謝,

基本理論說明

電子郵件服務器是處理郵件交換的軟硬體設施的總稱,包括電子郵件程式、電子郵箱等,它是為用戶提供基于 E-mail 服務的電子郵件系統,人們通過訪問服務器實作郵件的交換,同時郵件具有法律效益,可以提供證明,即時通訊軟體則無法做到這一點,有些公司為了資訊安全,會在內部搭建郵件服務,

常見的郵件服務器

Sendmail、Qmail、Postfix、Zmailer、Exchange(MS)、Notes/Domino(IBM)
、Coremail、U-Mail、盈世,

郵件服務器組成

電子郵件系統有很多部分組成,下面簡單介紹其中四種,

MUA(郵件用戶代理)

指的就是如Foxmail,outlook,等郵件客戶端程式,

MTA (郵件傳輸代理)

MTA(Mail Transfer Agent),MTA就是“郵件傳輸代理”的意思,MTA是用在郵件主機上的軟體,它也是主要的郵件服務器,MTA主要功能如下,接收外部主機寄來的信件,幫用戶發(寄出)信,MTA會將信件送給目的地的MTA而不是目的地的MUA,常見MTA軟體Postfix、Coremail、Sendmail等,
MDA(郵件分發代理)

MDA(Mail Delivery Agent),“郵件分發代理”主要的功能就是將MTA接收的信件依照信件的流向(送到哪里)將該信件放置到本機賬戶下的郵件檔案中(收件箱),或者再經 由MTA將信件送到下個MTA,如果信件的流向是到本機,這個郵件代理的功能就不只是將由MTA傳來的郵件放置到每個用戶的收件箱,它還可以具有郵件過濾 (filtering)與其他相關功能,常見MDA軟體:maildrop
MRA(郵件獲取代理)

MRA(Mail Retrieval Agent)替用戶去獲取自己的郵件 ,“郵件獲取代理”提求了使MUA 可以遠程獲取電子郵件的效勞,如qpoper、cyrus-imap、courier-imap、dovecot 等,為了使得郵件存取格式兼容,正在MRA 順序中經常都提求了郵件投遞代理順序MDA,MRA 運用的協議有POP3 和IMAP4 等,POP3 可以運用戶從效勞器下載郵件并離線閱讀,IMAP4 運用于那些沒有外地信箱的用戶,具有遠程操作信箱的才干,IMAP4 容許多個客戶機器同時訪問一個信箱,

所用協議

發送協議 MUA 》 MTA

SMTP:簡單郵件傳輸協議,TCP 25 埠,加密時使用 TCP 465 埠

接收協議 MUA 》 MRA

POP3:第三版郵局協議,TCP 110 埠,加密時使用 TCP 995 埠
IMAP4:第四版互聯網訊息訪問協議,TCP 143埠,加密時使用 TCP 993 埠

實驗步驟

實驗目的:掌味訓礎郵件服務架構搭建,

實驗準備:C6標準試驗機一臺(防火墻與selinux已關閉)

實驗規劃:192.168.10.14 (郵件服務器)

? 192.168.10.15(訪問測驗)

實驗相關安裝包:郵件服務

ps:標準虛擬機安裝見網路階段Centos6安裝指南

一、配置DNS服務

yum install -y bind

編輯主組態檔

vim /etc/named.conf

修改為接受所有地址訪問

編輯區域檔案

vim /etc/named.rfc1912.zones

配置正向決議與反向決議區域

zone "extmail.org." IN {
        type master;
        file "extmail.zheng";
        allow-update { none; };
};


zone "10.168.192.in-addr.arpa" IN {
        type master;
        file "extmail.fan";
        allow-update { none; };
};

創建決議檔案

cd /var/named/
cp -a named.localhost extmail.zheng
cp -a named.loopback extmail.fan

正向檔案配置

vim extmail.zheng
$TTL 1D
@       IN SOA  extmail.org. rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.extmail.org.
        MX  3   mail.extmail.org.
mail    A       192.168.10.14
dns     A       192.168.10.14

反向檔案決議

vim extmail.fan
$TTL 1D
@       IN SOA  extmail.org. rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.extmail.org.
        MX   3  mail.extmail.org.
14      PTR     dns.extmail.org.
14      PTR     mail.extmail.org.

啟動服務,設定為開機自啟,測驗DNS是否配置成功,

service named start
chkconfig named on
echo "DNS1=192.168.10.14" >> /etc/sysconfig/network-scripts/ifcfg-eth0
service network restart
nslookup

測驗通過,正向決議與反向決議均設定成功,

二、配置MySQL服務

yum install mysql mysql-server mailx httpd -y

啟動服務并設為開機自啟

service mysqld start
chkconfig mysqld on

設定初始化密碼

mysqladmin -uroot password 123

連接資料庫測驗

mysql -uroot -p123

資料庫設定完畢,

三、配置Apache服務

yum -y install httpd lrzsz

創建郵件服務網頁檔案目錄

mkdir /var/www/extsuite

準備extmail安裝鏡像(上方有下載鏈接),創建掛載目錄,掛載安裝鏡像,

mkdir /mnt/iso
mount -o loop EXTMAIL.iso /mnt/iso/

將鏡像內所有檔案拷貝至root目錄

cd
cp -a /mnt/iso/* .

將檔案解壓至對應目錄

tar -zxf extmail-1.2.tar.gz -C /var/www/extsuite/
tar -zxf extman-1.1.tar.gz -C /var/www/extsuite/

簡化目錄名稱,方便訪問,

cd /var/www/extsuite/
mv extmail-1.2 extmail
mv extman-1.1 extman

進行管理員配置,生成加密密碼,

grub-md5-crypt

將管理員密碼替換為生成的加密密碼,

vim init.sql

將兩個資料庫檔案還原至資料庫

mysql -uroot -p < extmail.sql
mysql -uroot -p < init.sql

四、配置POSTFIX服務

拷貝模版檔案至指定位置

cp mysql_virtual_alias_maps.cf mysql_virtual_domains_maps.cf mysql_virtual_mailbox_maps.cf /etc/postfix/

配置指定用戶

useradd -u 600 vmail
postconf -e inet_interfaces=all
postconf -e virtual_mailbox_base=/home/vmail
postconf -e virtual_uid_maps=static:600
postconf -e virtual_gid_maps=static:600

配置模版檔案,啟動服務,

postconf -e virtual_alias_maps=mysql:/etc/postfix/mysql_virtual_alias_maps.cf
postconf -e virtual_mailbox_domains=mysql:/etc/postfix/mysql_virtual_domains_maps.cf
postconf -e virtual_mailbox_maps=mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
service postfix restart

進行郵件發送測驗

echo "hello world" | mail -s test support@extmail.org

進入指定檔案查看

cd /home/vmail/
cat extmail.org/postmaster/Maildir/new/*localdomain

成功接收到郵件

五、配置MRA服務

下載dovecot與mysql 結合使用工具

yum install dovecot dovecot-mysql -y

編輯dovecot磁盤路徑相關配置

cd /etc/dovecot/conf.d/
vim 10-mail.conf
#修改24行
mail_location = maildir:/home/vmail/%d/%n/Maildir
#修改167行,指定運行用戶uid
first_valid_uid = 600

保存退出

編輯dovecot用戶驗證相關配置資訊

vim 10-auth.conf

取消120行注釋,使其通過資料庫進行認證,

保存退出,回傳上級目錄,復制dovecot與MySQL結合組態檔至當前目錄,

cp /usr/share/doc/dovecot-2.0.9/example-config/dovecot-sql.conf.ext  .

編輯Dovecot與資料庫連接相關配置

vim dovecot-sql.conf.ext:
#修改29行
driver = mysql
#修改63行
connect = host=localhost dbname=extmail user=extmail password=extmail
#取消73行注釋
defaulf_pass_scheme = MD5
#修改102行
password_query = \
  SELECT username, domain, password \
  FROM mailbox WHERE username = '%u' AND domain = '%d'
#修改120行
user_query = SELECT maildir, 600 AS uid, 600 AS gid FROM mailbox WHERE username = '%u'

保存退出,重啟服務開始測驗,

/etc/init.d/dovecot start

下載測驗軟體并進行連接測驗

yum -y install telnet
telnet localhost 110
user postmaster@extmail.org
pass extmail
list
retr 1

成功連接,

六、配置wed界面

編輯Apache主組態檔

vim /etc/httpd/conf/httpd.conf

配置虛擬主機,取消990行注釋,在檔案末尾添加以下資訊,

<VirtualHost *:80>
          ServerName mail.extmail.org
          DocumentRoot /var/www/extsuite/extmail/html/
          ScriptAlias /extmail/cgi /var/www/extsuite/extmail/cgi
          Alias /extmail /var/www/extsuite/extmail/html
          ScriptAlias /extman/cgi /var/www/extsuite/extman/cgi
          Alias /extman /var/www/extsuite/extman/html
          SuexecUserGroup vmail vmail
</VirtualHost>

編輯設定郵件wed頁面檔案

cd /var/www/extsuite/extmail
chown vmail.vmail cgi/ -R
cp webmail.cf.default webmail.cf

編輯主組態檔,完成基本設定,

vim wedmail.cf
#修改127行:(當前郵件目錄)
SYS_MAILDIR_BASE = /home/vmail
#修改136行:(當前資料庫密碼存盤方式)
SYS_CRYPT_TYPE = plain
#修改139、140行:(資料庫名與密碼)
SYS_MYSQL_USER = extmail
SYS_MYSQL_PASS = extmail

編輯設定郵件wed頁面管理員組態檔

cd /var/www/extsuite/extman
chown vmail.vmail cgi/ -R
cp webman.cf.default webman.cf

編輯郵件wed頁面管理員組態檔,完成基本設定,

vim webman.cf
#修改12行:(當前郵件目錄)
SYS_MAILDIR_BASE = /home/vmail
#修改18行:(快取目錄)
SYS_SESS_DIR = /tmp/
#修改27行:(隨機認證碼長度)
SYS_CAPTCHA_LEN = 4
#修改124行:(當前資料庫密碼存盤方式)
SYS_CRYPT_TYPE = plain

七、訪問測驗,

1.郵件服務端設定

安裝缺失依賴

cd
yum install *CGI  perl-GD gcc* -y
yum -y install perl-GD-2.44-3.el6.x86_64.rpm

安裝日志創建組件

tar zxf Unix-Syslog-1.1.tar.gz
cd Unix-Syslog-1.1
perl Makefile.PL
make test
make install

創建存盤目錄

/var/www/extsuite/extman/daemon/cmdserver -d

重啟Apache服務

service httpd restart

2.客戶端配置

配置DNS,重啟網卡,

echo "DNS1=192.168.10.14" >> /etc/sysconfig/network-scripts/ifcfg-eth0
service network restart

進行決議測驗

nslookup 192.168.10.14

成功決議,開啟圖形化界面,開始訪問測驗,

init 5

3.訪問測驗

打開瀏覽器,輸入普通用戶訪問網址,

mail.extmail.org

輸入測驗賬戶與默認密碼

測驗賬戶
postmaster
默認密碼
extmail

登陸成功

測驗管理員登陸

mail.extmail.org/extman

輸入設定好的密碼

進行功能測驗,進行郵件群發測驗,

登陸測驗用戶,查看是否收到,

成功收到群發郵件,郵件服務搭建完畢,

本文于2020年10月31日由Vonmerlot重新整理,

轉載需注明出處,

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/198534.html

標籤:其他

上一篇:Linux下安裝 SkyWalking 分布式追蹤系統--完全無代碼入侵【落地】

下一篇:無踩坑版 -- centos7安裝部署kvm 虛擬機并在kvm上安裝nginx

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more