sendmail限制用户發送的郵件的大小

之前在一份國賽的試題上看到有一題要求限制sendmail發送郵件的附件大小,但是我翻遍了百度和谷歌,試遍了各種方法,也詢問了來學校培訓Linux的兩位老師及外校一名久負盛名的指導教師,均未能得到有效答案。
記憶猶新的是,當我和其中一位培訓老師説,我試遍了各種方法也行不通,想請老師指點的時候,對方直接拋給我一句話:我不知道,但這個題目已經考了好幾次了,你在質疑賽題的準確性?自己百度去。。。汗。。。
最後我不得不妥協一步,既然無法限制附件的大小,那我直接限制整封郵件的大小好啦(郵件大小=正文+附件+郵件信息等附加內容的大小總和)。
編輯sendmail的/etc/mail/sendmail.cf配置文件

# vim /etc/mail/sendmail.cf

轉到第186行(因軟件版本號不同位置可能略有不同,可在vim中搜索關鍵字來查找),可以看到如下內容(翻譯成中文是,每條消息的最大大小):

將# O MaxMessageSize=0選項前的註釋去掉,其參數值就是每封郵件的最大值,單位是KB。例如,我想限制用户只能發送2MB大小的郵件則可以將其修改為如下形式:

O MaxMessageSize=2048

保存退出後直接重啓sendmail服務就可以,不需要使用m4工具重新生成sendmail.cf文件,因為我們編輯的就是sendmail.cf文件。

# service sendmail restart

最後,盡情測試吧。

4 thoughts on “sendmail限制用户發送的郵件的大小”

    1. 這塊我又測試了一遍,結果顯示單位是KB。也許這個問題可以再探討下,可以加我QQ:1642491905

  1. 大師兄,那個MaxMessageSize選項好像不在sendmail.mc裏哦,sendmail.cf裏就有。。。我找了半天sendmail.mc都找不到這個,233

Leave a Reply to 阮裕光 Cancel reply

Your email address will not be published. Required fields are marked *

Captcha Code