Having SMTP Authentication in place on your mail server has a number of benefits. SMTP Authentication can add another layer of security to sendmail, and has the benefit of giving mobile users who switch hosts the ability to use the same mail server without the need to reconfigure their mail client settings each time.
Install security/cyrus-sasl2
from the ports. You can find this port in
security/cyrus-sasl2
. The
security/cyrus-sasl2
port
supports a number of compile-time options. For the SMTP
Authentication method we will be using here, make sure that
the LOGIN
option is not disabled.
After installing security/cyrus-sasl2
,
edit /usr/local/lib/sasl2/Sendmail.conf
(or create it if it does not exist) and add the following
line:
Next, install security/cyrus-sasl2-saslauthd
,
edit /etc/rc.conf
to add the following
line:
and finally start the saslauthd daemon:
#
/usr/local/etc/rc.d/saslauthd start
This daemon serves as a broker for sendmail to
authenticate against your FreeBSD passwd
database. This saves the trouble of creating a new set of usernames
and passwords for each user that needs to use
SMTP authentication, and keeps the login
and mail password the same.
Now edit /etc/make.conf
and add the
following lines:
These lines will give sendmail
the proper configuration options for linking
to cyrus-sasl2
at compile time.
Make sure that cyrus-sasl2
has been installed before recompiling
sendmail.
Recompile sendmail by executing the following commands:
#
cd /usr/src/lib/libsmutil
#
make cleandir && make obj && make
#
cd /usr/src/lib/libsm
#
make cleandir && make obj && make
#
cd /usr/src/usr.sbin/sendmail
#
make cleandir && make obj && make && make install
The compile of sendmail should not have any problems
if /usr/src
has not been changed extensively
and the shared libraries it needs are available.
After sendmail has been compiled
and reinstalled, edit your /etc/mail/freebsd.mc
file (or whichever file you use as your .mc
file. Many administrators
choose to use the output from hostname(1) as the .mc
file for
uniqueness). Add these lines to it:
These options configure the different methods available to sendmail for authenticating users. If you would like to use a method other than pwcheck, please see the included documentation.
Finally, run make(1) while in /etc/mail
.
That will run your new .mc
file and create a .cf
file named
freebsd.cf
(or whatever name you have used
for your .mc
file). Then use the
command make install restart
, which will
copy the file to sendmail.cf
, and will
properly restart sendmail.
For more information about this process, you should refer
to /etc/mail/Makefile
.
If all has gone correctly, you should be able to enter your login
information into the mail client and send a test message.
For further investigation, set the LogLevel
of
sendmail to 13 and watch
/var/log/maillog
for any errors.
For more information, please see the sendmail page regarding SMTP authentication.
本文及其他文件,可由此下載: ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/。
若有 FreeBSD 方面疑問,請先閱讀
FreeBSD 相關文件,如不能解決的話,再洽詢
<questions@FreeBSD.org>。
關於本文件的問題,請洽詢
<doc@FreeBSD.org>。