關於郵件服務器

郵件服務器

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 提供此服務的軟件:procmailmaildrop

MAA :郵件訪問代理 Mail Access Agent   

提供POP3IMAP4服務的軟件: courrier-imapdovecot   

MSA:郵件提交代理

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

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

caller 呼叫器: mimedefangmailscanneramavisd-new 

用戶的郵箱是個存儲空間 類型:mboxmaildir 

構建郵件服務器 三個軟件 sendmailpostfixexim 

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

允許其他主機發郵件的話 需要sendmailsendmail-cfsendmail-docm4軟件包

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 提供以下四種服務:pop3imap4popsimaps

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支持smtpssasl

smtps監聽465端口   用到證書

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

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

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

提供加密的imapspop3s服務  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創建三個目錄 certsnewcertscrl  再創建三個文件 serialindex.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下有和模塊名對應的進程

常見的模塊:pam_unix.so 是完全實現認證的模塊 實現本地用戶在登錄時認證的

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章