...

Конфигуриране на Sendmail като рилей към tls mail server

използване на Sendmail за изпращане на мейли през gmail
преди 7 месеца

В това упътване ще ви покажа примерна настройка на Sendmail, чрез която ще може да изпращате мейли през всеки мейл сървър, изискващ TLS криптиране, примерно като gmail. Първо трябва да имате инсталирани sendmail mailutils, а на някой системи и sendmail-bin. После - създаваме файла за аутентификация:


mkdir -m 700 /etc/mail/authinfo/
touch /etc/mail/authinfo/gmail-auth

Файла /etc/mail/authinfo/gmail-auth е със съдържание


AuthInfo: "U:root" "I:laravel-vue.eu@gmail.com" "P:mYstr0ngp@$$word"

където root е системният потребител, laravel-vue.eu@gmail.com е мейла ви в гмаил, mYstr0ngp@$$word е паролата ви за акаунта в гмейл. Сега съзадаваме хеш мап на файла:


makemap hash gmail-auth < gmail-auth

Следваща стъпка е да конфигурираме самият Sendmail от sendmail.mc: Следните редове се добавят ПРЕДИ първата дефиниция на MAILER


define(`SMART_HOST',`[smtp.gmail.com]')dnl
define(`RELAY_MAILER_ARGS', `TCP $h 587')dnl
define(`ESMTP_MAILER_ARGS', `TCP $h 587')dnl
define(`confAUTH_OPTIONS', `A p')dnl
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
define(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl
FEATURE(`authinfo',`hash -o /etc/mail/authinfo/gmail-auth.db')dnl

Не вкарвайте горните редове в началото на файла! Сега трябва да ребилднем конфигурацията на Sendmail и да го рестартираме:


make -C /etc/mail
/etc/init.d/sendmail restart

Готово. Може да тествате чрез командата:


echo "Just testing my sendmail gmail relay" | mail -s "Sendmail gmail Relay" my-email@my-other-domain