Linux 技术手札

QMail 新增额外 SMTP Port

现在很多 ISP 也会将用户的 port 25 封锁,只容许用户使用 ISP 提供的 smtp server。如果想架一台 smtp server 给被封锁 port 25 的用户使用,可以在 email server 多开一个 port 作为与用户的连线,只要用户在电邮软件修改 smtp port 便可以,以下是在 QMail 设定多一个 port 的方法:

假设要开启的 port 为 1225,首先将 /var/qmail/supervise/qmail-smtpd 整个目录复制多一份,一般上我会在复制目录名称后面加上 port 以便不会忘记:

# cp -Rp /var/qmail/supervise/qmail-smtpd /var/qmail/supervise/qmail-smtpd-1225
然后要修改 /var/qmail/supervise/qmail-smtpd-1225/run 档案,设定要监听的 port,应该会找到类以这一行:

-u “$QMAILDUID” -g “$NOFILESGID” 0 smtp

将 “smtp” 改成要新增的 port,那么就是要改成:

-u “$QMAILDUID” -g “$NOFILESGID” 0 1225

修改完以上档案后,便要修改 /var/qmail/supervise/qmail-smtpd-1225/log/run 档案,最后应该会有一行是指向 smtpd 的纪绿档,要指向一个新目录:

exec /usr/local/bin/setuidgid qmaill /usr/local/bin/multilog t /var/log/qmail/smtpd-1225

然后建立储存 smtpd-1225 的纪录档目录:

# mkdir /var/log/qmail/smtpd-1225/
# chown qmaill /var/log/qmail/smtpd-1225/
在 /service 目录下建立一个 soft link 到 /var/qmail/supervise/qmail-smtpd-1225/:

# ln -s /var/qmail/supervise/qmail-smtpd-1225/ /service/qmail-smtpd-1225/
到这里就只剩下修改 qmailctl 档案,里面有一行是:

svclist=”qmail-send qmail-smtpd”

需要加上新增的 port 才可正确启动:

svclist=”qmail-send qmail-smtpd qmail-smtpd-1225″

修改后重新启动 qmail 便完成了。

Exit mobile version