天天看點

關于郵件伺服器

郵件伺服器

SMTP:簡單郵件傳輸協定 基于tcp 監聽25端口

POP3:郵局協定  Post Office Protocol   基于tcp 監聽110端口

IMAP4:網際網路郵件通路協定 Internet Mail Access Protocol  基于tcp 監聽143端口

MIME : 多使用者多功能網際網路郵件擴充Multipurpose Internet Mail Extensions

MUA:郵件使用者代理 Mail User Agent   常用的:Outlook,mutt,OE

MTA :提供SMTP SERVER 郵件傳輸代理 Mail Transfer Agent  是個統稱 能夠提供SMTP服務的伺服器都叫MTA    軟體Exchange  Sendmail  Lotus Note Domino  Postfix  Qmail   Exim

/var/mail目錄下使用者均有檔案

MDA: 郵件投遞代理 Mail Delivery Agent 提供此服務的軟體:procmail,maildrop

MAA :郵件通路代理 Mail Access Agent   

提供POP3,IMAP4服務的軟體: courrier-imap,dovecot   

MSA:郵件送出代理

SASL:簡單認證安全層   Simple Authentication Secure Layer 是種協定 

clamav  病毒郵件掃描器 發現有毒的話則進行标示   

caller 呼叫器: mimedefang,mailscanner,amavisd-new 

使用者的郵箱是個存儲空間 類型:mbox,maildir 

建構郵件伺服器 三個軟體 sendmail,postfix,exim 

發郵件:mail -v 後跟發給誰 或者echo “檔案正文” |mail -s ‘郵件主題’ 發給誰

允許其他主機發郵件的話 需要sendmail,sendmail-cf,sendmail-doc,m4軟體包

sendmail所有配置檔案都在/etc/mail下  主配置檔案是sendmail.cf

在配置檔案sendmail.mc中的116行改變檔案 使其可對外服務

但是郵件伺服器預設從主機到主機  在access中定義的有 如果允許誰發郵件 則在其中定義

sendmail不會識别access檔案 要轉換成access.db  重新開機服務自動轉換

郵件别名

[email protected] à [email protected]  把發給neil的都轉給aa

郵件别名在/etc/aliases  格式: neil:  aa  或者寫全稱

這個檔案不被識别 可以手動轉換 newaliases   但是重新開機服務自動轉換

可以群發 在/etc/aliases 格式:随便一名字:  要群發的對象(使用者間用逗号隔開)

用到的被改的檔案:(前面為使用的檔案,後面是實則改動的檔案)

sendmail.cf:sendmail.mc   access.db:access    local-host-names    /etc/aliases.db:/etc/aliases

這些是用來發郵件的 用來接收郵件 必須安裝接收郵件的包

dovecot包 用來接收郵件 屬于MAA 提供以下四種服務:pop3,imap4,pops,imaps

dovecot主配置檔案在/etc/dovecot.conf檔案  找到protocols 來定義啟動什麼服務

用telnet受郵件時  用telnet 後跟伺服器位址 後跟端口号110

進入後USER後跟使用者名  PASS後跟密碼  LIST檢視郵箱郵件數  RETR後跟數字表示檢視哪一封郵件

用mutt接收郵件  格式例如mutt -f pop://[email protected]

如何實作sendmail發郵件時的位址僞裝

如果發件人有多個名字  在發郵件時統一名稱

主配置檔案/etc/mail/sendmail.mc   僞裝位址修改MASQUERADE選項  啟用以FEATURE開頭的選項

如何讓sendmail支援smtps,sasl

smtps監聽465端口   用到證書

sasl  程序名字:saslauthd  /usr/lib/sasl2目錄中的配置檔案說明下密碼檢測方法 在Sendmail.conf中添加mech_list:login plain

編碼方式  echo  -n“被編碼内容” | openssl base64

imaps監聽993端口 pop3s監聽995端口

提供加密的imaps,pop3s服務  pop3àpop3s   imapàimaps

建立 CA的步驟:cd /etc/pki/CA 

openssl genrsa 1024 > private/cakey.pem生成私鑰檔案保留在此目錄下

生成自簽證書 生成前把/etc/pki/tls/openssl.cnf中的CA路徑修改一下以及預設項 openssl req -new  -x509  -key  private/cakey.pem  -out  cacert.pem  -days 6500

修改檔案權限為600 cacert.pem  private/cakey.pem

在/etc/pki/CA建立三個目錄 certs,newcerts,crl  再建立三個檔案 serial,index.txt   echo 00 > serial

抓包工具:wireshark  抓包格式:tshark -ni eth0 -R “抓包條件”

例如:tshark -ni eth0 -R "tcp.srcport eq 110 or tcp.dstport eq 110"

純粹為了測試使用的證書建立方法:

在/etc/pki/tls/certs下 make指令建立證書 例如make dovecot.pem

Postfix:和sendmail相同作用但是功能更大效率更高

Postfix是子產品化設計  其中master程序最重要,是核心程序 在其管理下有很多子程序 在postfix啟動時第一個啟動的程序。   master.cf    main.cf記錄這些子程序在完整的實作一個郵件系統的時候所用到的服務參數   parameter = value(定義的值)

postconf –n 檢視修改過的參數  postconf –d 檢視預設參數  postconf 顯示所有生效的選項

postconf –e  可以修改需要的參數為自己所需 用vim修改比較常用

檢視main.cf接受哪些參數哪些指令 用man postconf 配置檔案第五行 man後加5

安裝postfix 後 啟動服務前要解除安裝sendmail rpm –e sendmail –nodeps 忽略依賴關系強行解除安裝

主配置檔案/etc/postfix/main.cf  inet_interfaces選項指定監聽的接口位址,多個接口用逗号隔開

NSS:名稱服務轉換

PAM:可插拔式認證子產品

/lib/security下放着所有PAM可配置子產品  

在/etc/pam.d下有和子產品名對應的程序

繼續閱讀