Levelező szerverünkön az SMTP protokoll hitelesítésének (SMTP Authentication) engedélyezése több szempontból is előnyökkel bír. Az SMTP hitelesítésének bekapcsolása egy újabb réteget képez a sendmail védelmében, és az olyan állandóan mozgásban levő felhasználók számára is megoldást nyújt, akik anélkül képesek használni ugyanazt a levelező szervert, hogy minden alkalommal újrakonfigurálnák a levelező kliensüket.
Telepítsük fel a security/cyrus-sasl2 portot. A
security/cyrus-sasl2 port
több fordítási idejű
beállítást támogat. Itt most az
SMTP hitelesítését
fogjuk használni, ezért gondoskodjunk a
LOGIN
opció
engedélyezéséről.
A security/cyrus-sasl2
telepítés után nyissuk meg
szerkesztésre a
/usr/local/lib/sasl2/Sendmail.conf
állományt (vagy ha még nem
létezne, hozzuk létre), és benne
vegyük fel a következő sort:
pwcheck_method: saslauthd
Ezt követően telepítsük a security/cyrus-sasl2-saslauthd
portot, és tegyük bele az
/etc/rc.conf
állományba ezt
a sort:
saslauthd_enable="YES"
Végezetül indítsuk el a saslauthd démont:
#
/usr/local/etc/rc.d/saslauthd start
Ez a démon fog közvetíteni a
sendmail és a FreeBSD
passwd
adatbázisa közti
hitelesítésben. Ezzel elkerülhetjük
az új felhasználói nevek és
jelszavak felvételét az SMTP
hitelesítés használatához,
így a hozzáférések és a
levelezés jelszava ugyanaz marad.
Most pedig írjuk hozzá az alábbi
sorokat az /etc/make.conf
állományhoz:
SENDMAIL_CFLAGS=-I/usr/local/include/sasl -DSASL SENDMAIL_LDFLAGS=-L/usr/local/lib SENDMAIL_LDADD=-lsasl2
Ezek a sorok állítják be a sendmail számára, hogy fordítás közben a cyrus-sasl2 függvényeit használja. A sendmail újrafordítása előtt mindenképpen legyen fenn a cyrus-sasl2 port.
A sendmail újrafordítását a következő parancsok végrehajtásával intézhetjük el:
#
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
A sendmail
fordítása esetén semmilyen
problémának nem szabadna előfordulnia,
kivéve ha a /usr/src
könyvtárat és a szükséges
osztott könyvtárakat nem változtatjuk
időközben túlságosan gyakran.
A sendmail
lefordítása és
újratelepítése után
szerkesszük át az
/etc/mail/freebsd.mc
állományt (vagy azt az .mc
állományt, amelyet éppen
használunk). Sok rendszergazda a hostname(1)
parancs válaszát használja fel az
.mc
típusú
állományok egyedi elnevezéséhez).
Írjuk bele a következő sorokat:
dnl set SASL options TRUST_AUTH_MECH(`GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl define(`confAUTH_MECHANISMS', `GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl
Ezek állítják be a sendmail számára a felhasználók hitelesítésére alkalmas különböző módszereket. Ha a pwcheck módszer helyett valami mást akarunk használni, akkor járjunk utána a dokumentációban.
Zárásul futassuk le a make(1) parancsot
az /etc/mail
könyvtárban.
Így lefut az új .mc
állományunk és létrejön egy
freebsd.cf
(vagy amilyen nevet az
.mc
állománynak megadtunk)
.cf
állomány.
Ezután a make install restart
parancs kiadásával másoltassuk át
ezt a sendmail.cf
helyére
és szabályosan indítassuk újra a
sendmail
szolgáltatást. A folyamatról
részletesebb tájékoztatást az
/etc/mail/Makefile
állomány
tud nyújtani.
Ha eddig minden a legnagyobb rendben történt,
akkor most már képesek vagyunk bejelentkezési
információt is átadni a levelező
kliensnek és elküldeni egy tesztüzenetet. A
hibák kiszűréséhez
állítsuk a sendmail
LogLevel
opcióját az 13
értékre és figyeljük a
/var/log/maillog
állományt.
További felvilágosításért olvassuk el a sendmail SMTP hitelesítéssel foglalkozó oldalát (angolul).
Ha kérdése van a FreeBSD-vel kapcsolatban, a
következő címre írhat (angolul):
<questions@FreeBSD.org>.
Ha ezzel a dokumentummal kapcsolatban van kérdése, kérjük erre a címre írjon:
<gabor@FreeBSD.org>.