1.11.1. | 安装 majordomo,aliases 文件中有:majordomo: "|/usr/local/majordomo/wrapper majordomo"。majordomo运行时报错:smrsh: "wrapper" not available for sendmail programs (stat failed)。为什么? |
因为Sendmail使用 smrsh (SendMail Restricted SHell)。smrsh程序的目的是作为在mailer中为sendmail定义的"/bin/sh"的替代shell。smrsh是一种受限shell工具,它通过"/etc/smrsh"目录来明确指定可执行文件的列表。简而言之smrsh限制了攻击者可以执行的程序集。当它与sendmail程序一起使用的时候,smrsh有效的将sendmail可以执行的程序的范围限制在smrsh目录之下。 在 sendmail.mc 文件中的配置: FEATURE(`smrsh',`/usr/sbin/smrsh')dnl smrsh 允许执行的程序,需要在 "/usr/adm/sm.bin" 目录中创建符号连接。如果定义了环境变量 SMRSH_CMDDIR,则smrsh允许运行的程序放在该环境变量定义的目录中,否则该目录为:"/usr/adm/sm.bin"。测试 smrsh: $ ln -s /usr/bin/vim /usr/adm/sm.bin/ $ /usr/sbin/smrsh -c /usr/bin/vim |
|
1.11.2. | 尤其是在和其它软件配合使用时,Sendmail经常会因为文件或者目录的权限问题——组写权限,而报错。怎么办? |
如果不想对文件、目录的设置过于苛刻的话,可以考虑使用 DontBlameSendmail 选项。例如: define(`confDONT_BLAME_SENDMAIL', `AssumeSafeChown') define(`confDONT_BLAME_SENDMAIL', `GroupWritableAliasFile') define(`confDONT_BLAME_SENDMAIL', `GroupWritableDirPathSafe') define(`confDONT_BLAME_SENDMAIL', `GroupWritableIncludeFileSafe') define(`confDONT_BLAME_SENDMAIL', `IncludeFileInGroupWritableDirPath') define(`confDONT_BLAME_SENDMAIL', `IncludeFileInUnsafeDirPath') |
|
1.11.3. | 如何让sendmail具有泛email支持?即无需设置本机账号的邮件账户? |
通过设置 LUSER_RELAY,还和 procmail 配合使用。 define(`LUSER_RELAY', `local:root') |
|
1.11.4. | 一个用户离开了公司,但仍然收到许多关于他/她的邮件,我怎么让别人知道此人已经使用新的邮件地址? |
加下面的行到M4宏配置文件中 FEATURE(`redirect')dnl 然后加下面的行到aliases文件中: olduser: him@new.address.REDIRECT 所有发到旧的邮件地址的人将收到一个新邮件地址的通知消息. |
|
1.11.5. | 为什么我更改了上面各种配置文件后仍然不起作用? |
更改配置后,需要进入到/etc/mail 目录下,执行: cd /etc/mail make newaliases /etc/init.d/sendmail restart 或者:在任意配置文件更改后都要运行makemap,例如: # makemap hash virtusertable.db < virtusertable 但是对于local-host-names和relay-domains文件的更改要用下面的命令重启Sendmail #killall -HUP sendmail 对aliases文件的更改要运行 #newaliases |
|
1.11.6. | 怎么检查一封邮件的发封过程? |
在Sendmail邮件服务器上执行下面的命令. # echo testing | /usr/sbin/sendmail -f sender@somedomain.com -v someone@somedomain.com |
|
1.11.7. | 如果用 POP3 命令,直接在服务器上操作邮件? |
telnet 登陆服务器的 110 端口,执行 POP3 命令:
|
|
1.11.8. | 如何用 SMTP 命令,远程登录到服务器上发送邮件? |
telnet 登陆服务器的 25 端口,执行 SMTP 命令:
|
Copyright © 2006 WorldHello 开放文档之源 计划 |