Багато хто стикався з проблемою відправки повідомлень електронної пошти з bash / perl / python / php / etc.
На самому це досить просто.
Досить поставити sendmail.
yum install sendmail sendmail-cf -y
chkconfig --level 345 sendmail on
/etc/init.d/sendmail start
Starting sendmail: [OK]
Starting sm-client: [OK]
В принципі ви вже можете відправляти пошту, але за замовчуванням в конфігурації вказано що ви відправляєте пошту з хоста localhost.localdomain
Наступна секція складена з урахуванням того що ваш hostname в системі налаштований вірно.
Налаштувати цю системну зміною в CentOS ви можете в файлі / etc / sysconfig / network
Перевірити який у вас зараз hostname, как не странно можна командою hostname =))
Отже вносимо зміни в конфігурацію sendmail
sed -i -e "s / ^ LOCAL_DOMAIN. * $ / LOCAL_DOMAIN (\` $ \ ') dnl / g "/etc/mail/sendmail.mc
Shutting down sm-client: [OK]
Shutting down sendmail: [OK]
Starting sendmail: [OK]
Starting sm-client: [OK]
Настав час протестувати що у нас вийшло.
відповідно підставте свій email замість [email protected]
echo "The test body" | mail -s "The test subject" [email protected]
Все можете йти в пошту, і перевіряти свій спам, Оскільки цей лист швидше за все виявиться в ньому. По скільки A запис і PTR запис DNS. повинні збігатися з вашим зовнішнім IP. Так до речі, ця конструкція може працювати через NAT.