Sendmail限制拒绝服务(DOS)攻击
问题描述:如何知道将限制Sendmail拒绝服务攻击的配置指令。
解决方法:Sendmail是一种邮件传输代理(MTA),即将电子邮件消息从一台计算机传输到另一台计算机。
攻击者可能会用DOS淹没邮件服务器(这是一种攻击,其中没有获得对系统的访问权,但是却导致服务损失,即您的邮件服务器将死亡)。
为了避免针对Sendmail服务器的DOS,它带有可通过sendmail.mc宏文件进行配置的指令。
在各种UNIX和Linux环境中使用的Sendmail。
从Sendmail:
所有描述均以以下方式组织:M4变量名称/配置/描述和[默认] /推荐:
confMIN_FREE_BLOCKS MinFreeBlocks [100]队列文件系统上接受SMTP邮件的最小可用块数。
(在8.7之前,它是minfree/maxsize,其中minfree是可用块数,maxsize是最大消息大小。
在当前版本的sendmail中,将confMAX_MESSAGE_SIZE用作第二个值。
)推荐:4000或者更大。
confMAX_MESSAGE_SIZE MaxMessageSize [infinite]将被接受的最大消息大小(以字节为单位)。
推荐:4MB(?
)
confAUTO_REBUILD AutoRebuildAliases [False]如果需要,自动重建别名文件。
如果设置了这种拒绝服务攻击的可能性。
设置为False。
confQUEUE_LA QueueLA [varies]启用仅队列功能的负载平均值。
默认值为(8 * numproc),其中numproc是联机的处理器数(如果可以确定)。
设置为10(取决于CPU功率)。
confREFUSE_LA RefuseLA [varies]拒绝传入SMTP连接的平均负载。
默认值为(12 * numproc),其中numproc是联机的处理器数(如果可以确定)。
设置为8(取决于CPU功率)。
confMAX_DAEMON_CHILDREN MaxDaemonChildren [未定义]守护程序允许的最大子代数。
此号码之后,连接将被拒绝。
如果未设置,则为confMAX_HEADERS_LENGTH MaxHeadersLength [undefined]所有标题总和的最大长度。
设置为32或者64K
confMAX_MIME_HEADER_LENGTH MaxMimeHeaderLength [未定义]某些MIME标头字段值的最大长度。
设置为1024以下。
confMAX_RCPTS_PER_MESSAGE MaxRecipientsPerMessage [infinite]如果设置,则在SMTP信封中最多允许指定数量的收件人。
其他收件人会收到452错误代码(即,将他们推迟到下一次发送尝试)。
网站政策:10 100。