-u:啟動用戶的配額限製。
-g:啟動用戶組的配額限製。
5.關閉配額限製
[root@vm ~] quotaoff [-a]
-a:關閉所有的配額限製。
任務實施
一、配置Sendmail郵件服務器
Sendmail完成安裝後即可使用,但它默認隻監聽來自127.0.0.1的郵件收發請求,因此Sendmail還不能提供真正意義上的郵件服務。要使它能提供完善的郵件服務,需要管理員進行相應的配置,主要內容包括:郵件主機配置、設置郵件主機名、郵件服務器使用權限、郵件中繼認證等。
1.配置Sendmail郵件主機
Sendmail的配置文件大多存放在/etc/mail目錄中,其核心配置文件是sendmail.cf。
sendmail.cf的內容相當複雜,在實際配置中是通過修改配置文件sendmail.mc,然後通過工具程序m4導入到sendmail.cf來實現郵件主機配置的。
(1)修改配置文件sendmail.mc。
[root@vm ~]vi /etc/mail/sendmail.mc
dnl 在sendmail.mc文件中,和字符串dnl是注釋符,習慣以dnl開頭
dnl設置是否把注釋信息導出sendmail.cf中。divert(0)為導出,divert(-1)為禁止導出
divert(-1)
dnl
dnl include、OSTYPE等稱為設置函數,小括號中為設置參數
dnl 設置函數的作用請參考/usr/share/sendmail-cf/README中的說明,一般不用修改
dnl 設置m4在把sendmail.mc轉換成sendmail.cf時讀取的參數文件,必須修改
include('/usr/share/sendmail-cf/m4/cf.m4')dnl
dnl 設置版本標誌
VERSIONID('setup for Red Hat Linux')dnl
dnl 設置使用的操作係統類型
OSTYPE('linux')dnl
dnl
dnl define函數用於定義sendmail的參數項和參數值
dnl 設置郵件別名文件的存儲位置
define('ALIAS_FILE', '/etc/aliases')dnl
…
dnl FEATURE函數用於配置sendmail額外的特別功能
dnl 設置sendmail的訪問權限數據庫access.db
FEATURE('access_db', 'hash -T
…
dnl 設置sendmail的監聽參數,Addr指定監聽網段,改成內部網段或0.0.0.0
dnl 0.0.0.0代表所有網段。sendmail的基本配置隻需修改這一行就可以了
DAEMON_OPTIONS('Port=smtp, Addr=0.0.0.0, Name=MTA')dnl
…dnl MAILER函數設置郵件投遞代理(MDA)
dnl sendmail支持的MAILER可在/usr/share/sendmail-cf/mailer中找到
dnl local處理來自本機內部的郵件,smtp處理來自本機外部的郵件
MAILER(local)dnl
MAILER(smtp)dnl
(2)使用m4把sendmail.mc轉換成sendmail.cf。
[root@vm ~]cd /etc/mail
[root@vm mail]m4 sendmail.mc > sendmail.cf
2.配置POP3服務器
POP3和IMAP收件服務由dovecot服務提供。默認情況下,dovecot啟動後POP3和IMAP服務就能正常工作,不需要進行額外配置。dovecot的主配置文件是/etc/dovecot.conf。通常需要確認是否有如下的配置參數項:
[root@vm ~]vi /etc/dovecot.conf
在使用基本的POP3和IMAP服務時,不需要修改本文件,默認值就能很好支持
設置存放dovecot運行時數據的主目錄
base_dir = /var/run/dovecot/
指定服務協議,可以是imap imaps pop3 pop3s
protocols = pop3 imap
指定dovecot要監聽的主機IP地址,*表示所有IPv4地址,[::]表示所有IPv6地址
設置監聽所有IPv6地址
listen = [::]
設置監聽所有IPv4地址
listen =*
設置POP3的特性參數,一般不需進行任何修改,默認所有參數項都被注釋掉了
protocol pop3 {
login_executable = /usr/libexec/dovecot/pop3-login
mail_executable = /usr/libexec/dovecot/pop3
pop3_no_flag_updates = no
pop3_enable_last = no
UW’s ipop3d : %08Xv%08Xu
Courier version 0 : %f
Courier version 1 : %u
Courier version 2 : %v-%u
Cyrus (<= 2.1.3) : %u
Cyrus (>= 2.1.4) : %v.%u
Older Dovecots : %v.%u
pop3_uidl_format = %08Xu%08Xv
pop3_logout_format = top=%t/%T, retr=%r/%R, del=%d/%m, size=%s
mail_use_modules = no
mail_modules = /usr/lib/dovecot/pop3
pop3_client_workarounds =
}
文件中每個參數項都有說明,這裏不一一解釋,其他參數項省略
…
3.設置郵件服務器主機名
為了Sendmail服務正常工作,必須正確設置郵件服務器主機名或別名。
[root@vm ~]vi /etc/mail/local-host-names
每個主機名或別名占一行
主機有兩個別名:mail.hws.com和mail.hws.cn都可用來收發郵件,則應設置成
hws.com
mail.hws.com
hws.cn
mail.hws.cn
學藝錦囊
◎Sendmail的主配置文件sendmail.cf由特定宏語言編寫,非常複雜。切忌不要手動修改,而是通過修改sendmail.mc,然後用工具程序m4轉換生成。
◎在編輯sendmail.mc時要特別注意字母的大小寫,且不能在文件中隨意修改。
◎在sendmail.mc文件中,dnl和都是注釋符,dnl開始的行不會影響服務的行為,配置行結尾處的dnl不影響配置行起作用。
◎必須在local-host-names中正確設置郵件主機名後,郵件服務才能正常工作。
◎在進行配置前一定要把相關配置文件做好備份。
4.配置郵件服務器的使用權限
默認情況下,Sendmail關閉了開放中繼(OPEN RELAY),因此它隻傳輸來自郵件主機內部的郵件,來自主機外部的郵件一概退回。係統管理員需要配置/etc/mail/access來開放或阻止用戶使用郵件服務器的中繼功能。
(1)修改配置文件/etc/mail/access。
[root@vm ~]vi /etc/mail/access
access的設置格式:用戶範圍 在Sendmail上可進行的操作
用戶範圍:IP地址|網段|主機名|郵件地址,範圍前加from表示來源,to表示目的
在用戶範圍與操作之間用製表符分隔,即按Tab鍵
默認啟用的主機或IP
localhost.localdomain RELAY
localhost RELAY
127.0.0.1 RELAY
允許傳輸192.168.0.0/24網段和hws.com域的郵件
192.168.0 RELAY
hws.com RELAY
拒絕來自135.126.89.122和主機foo.works.cn的郵件
from:135.126.89.122 REJECT
from: foo.works.cn REJECT
丟棄[email protected]的郵件和到cbb.com.cn的郵件
[email protected] DISCARD
to:cbb.com.cn DISCARD
(2)生成訪問權限數據庫。
[root@vm ~]makemap hash /etc/mail/access.db < /etc/mail/access
5.啟動郵件服務器
(1)啟動或重新啟動sendmail。
[root@vm ~]service sendmail start
或
[root@vm ~] service sendmail restart
(2)啟動或重新啟動POP3服務。
[root@vm ~] service dovecot start
或
[root@vm ~] service dovecot restart
6.測試郵件服務
郵件服務器配置完成並成功啟動後,係統管理員要保證它能正常提供郵件服務還必須進行必要的測試。通常可以利用telnet來快速測試SMTP的寄信功能,或直接使用郵件客戶端程序如Linux下的mail、Kmail或者Windows下的Outlook Express來測試郵件服務係統的收發功能。
(1)快速測試SMTP的寄信功能。
測試操作說明:
telnet 郵件主機名或IP地址 25 啟動SMTP寄信測試
hello localhost 向郵件主機打招呼
mail from:”Testing”
rcpt to:[email protected] 指定收件人郵箱地址
data 請求寫郵件正文,以“.”結束
quit 退出
(2)在Linux下用mail撰寫發送郵件。
測試操作說明:
序號 操作 說明
1 mail 郵箱地址向指定郵箱發送郵件
2 Subject: 在其後輸入郵件標題
3 輸入郵件正文,空行首輸入“.”結束
4 Cc: 輸入抄送郵箱地址
(3)在linux下用mail接收管理郵件。
測試操作說明:
mail 打開當前用戶的郵箱,顯示郵件列表,U表示未讀郵件,N表示新郵件,>表示當前郵件
& mail的命令提示符
輸入郵件編號 讀指定編號的郵件,直接回車讀當前郵件
h 顯示郵件列表
s 郵件編號 文件名把指定編號的郵件存入指定文件中
d郵件編號刪除指定編號的郵件
help 顯示mail所有的操作說明
x 退出mail,不改變郵箱的狀態
q 退出mail,改變郵箱的狀態,已讀郵件轉存入mbox
mail僅用於測試Sendmail的本地郵件功能。