29.10. SMTP нэвтрэлт танилт
Өмнөх | Бүлэг 29. Цахим Шуудан | Дараах

## 29.10. SMTP нэвтрэлт танилт

Бичсэн Жэймс Горхам.
Орчуулсан Цагаанхүүгийн Ганболд.

Өөрийн захидлын сервертээ SMTP Authentication буюу нэвтрэлт танилттай байх нь хэд хэдэн талаараа ашигтай байдаг. SMTP нэвтрэлт танилт нь sendmail-д аюулгүй байдлын өөр давхарга нэмж чадах бөгөөд хостоо сольдог хөдөлгөөнт хэрэглэгчдийн хувьд өөрийн захидлын клиентийнхээ тохиргоог дахин тохируулалгүйгээр захидлын серверээ ашиглах боломжийг олгодгоороо ашигтай байдаг.

1. `security/cyrus-sasl2`-г портоос суулгана. Та энэ портыг `security/cyrus-sasl2` сангаас олж болно. `security/cyrus-sasl2` порт нь хэд хэдэн эмхэтгэх үеийн тохируулгуудыг дэмждэг. Бидний ашиглах SMTP нэвтрэлт танилтын аргын хувьд `LOGIN` тохируулга хаагдаагүй эсэхийг шалгаарай.

2. `security/cyrus-sasl2`-г суулгасны дараа `/usr/local/lib/sasl2/Sendmail.conf`-г (байхгүй бол үүсгээрэй) засварлаж дараах мөрийг нэмэх хэрэгтэй:

   pwcheck_method: saslauthd

3. Дараа нь `security/cyrus-sasl2-saslauthd`-г суулгаж дараах мөрийг нэмэхийн тулд `/etc/rc.conf`-г засварлана:

   saslauthd_enable="YES"

   тэгээд эцэст нь saslauthd дэмонг эхлүүлнэ:

   `#` `service saslauthd start`

   Энэ дэмон нь таны FreeBSD `passwd` мэдээллийн баазаас нэвтрэлт таниулахын тулд sendmail-ийн хувьд зуучлагч болдог. Энэ нь SMTP нэвтрэлт танилт ашиглах хэрэгтэй хэрэглэгч бүрийн хувьд шинэ хэрэглэгчийн нэрс болон нууц үгсийг үүсгэх шаардлагагүй болгож нэвтрэлт болон захидлын нууц үгийг өөрчлөлгүйгээр хэвээр байлгадаг юм.

4. Одоо `/etc/make.conf`-г засварлаад дараах мөрүүдийг нэмэх хэрэгтэй:

   SENDMAIL_CFLAGS=-I/usr/local/include/sasl -DSASL SENDMAIL_LDFLAGS=-L/usr/local/lib SENDMAIL_LDADD=-lsasl2

   Эдгээр мөрүүд нь sendmail-д `cyrus-sasl2` руу эмхэтгэх үед холбоос хийхэд шаардлагатай зөв тохиргооны сонголтуудыг өгөх болно. sendmail-ийг суулгахаас өмнө `cyrus-sasl2` суусан байгаа эсэхийг баталгаажуулаарай.

5. Дараах тушаалуудыг ажиллуулж sendmail-г дахин эмхэтгэнэ:

   `#` `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`

   `/usr/src` тийм ч ихээр өөрчлөгдөөгүй бөгөөд хэрэгцээтэй хуваалцдаг сангууд байгаа тохиолдолд sendmail-ийн эмхэтгэлт ямар нэгэн асуудалгүй хийгдэх ёстой.

6. sendmail эмхэтгэгдэж дахин суулгагдсаны дараа өөрийн `/etc/mail/freebsd.mc` файлыг (аль эсвэл өөрийн `.mc` файл болгож ашигладаг тэр файлыг. Дахин давтагдахгүй байхын тулд олон администраторууд hostname(1)-ээс гарах гаралтыг ашиглан `.mc` файлаа болгон сонгодог) засварлах хэрэгтэй. Эдгээр мөрүүдийг нэмэх хэрэгтэй:

   dnl set SASL options TRUST_AUTH_MECH(`GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl define(`confAUTH_MECHANISMS', `GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN')dnl

   Хэрэглэгчдийн нэвтрэлт танилтын хувьд sendmail-д байдаг өөр аргуудыг эдгээр тохируулгууд нь тохируулдаг. Хэрэв та pwcheck-с өөр аргыг ашиглахыг хүсэж байгаа бол хамт ирсэн баримтаас үзнэ үү.

7. Эцэст нь `/etc/mail` дотор байхдаа make(1)-г ажиллуулна. Энэ нь таны шинэ `.mc` файлыг ажиллуулж `freebsd.cf` гэгдэх (өөрийн `.mc` файлд зориулж ашигласан тэр) `.cf` файлыг үүсгэх болно. Дараа нь `make install restart` тушаалыг ашиглах хэрэгтэй. Энэ нь файлыг `sendmail.cf` руу хуулж sendmail-г зөв ажиллуулах болно. Энэ процессийн тухай дэлгэрэнгүй мэдээллийг `/etc/mail/Makefile` файлаас лавлана уу.

Хэрэв бүгд зөв явсан бол та өөрийн нэвтрэх мэдээллийг захидлын клиент уруугаа оруулж тест захидал илгээж чадах ёстой. Илүү судлахын тулд sendmail-ийн `LogLevel`-г 13 болгон тохируулж `/var/log/maillog` файлд алдаа гарах эсэхийг харах хэрэгтэй.

SMTP нэвтрэлт танилттай холбоотой дэлгэрэнгүй мэдээллийг sendmail хуудаснаас үзнэ үү.

Өмнөх | Дээш | Дараах
29.9. Гадагш залгах холболтоор захидлыг ашиглах нь | Эхлэл | 29.11. Хэрэглэгчийн захидал дамжуулагчид

Энэ болон бусад баримтуудыг ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/ хаягаас татаж авч болно.

FreeBSD-ийн талаар <questions@FreeBSD.org> хаягтай холбоо барихаасаа өмнө баримтыг уншина уу.
Энэ бичиг баримттай холбоотой асуулт байвал <doc@FreeBSD.org> хаягаар цахим захидал явуулна уу.
Энэ бичиг баримтын орчуулгатай холбоотой асуулт байвал <admin@mnbsd.org> хаягаар цахим захидал явуулна уу.