Отсылка почты через sSMTP
Замечательная все-таки штука UNIX – для решения одной и той же задачи найдется несколько путей. Вот и для отсылки почты с рабочей станции или специализированного сервера совершенно не обязательно держать на нем полноценный MTA, какой бы компактный и простой он ни был. Достаточно sSMTP.
Установим sSMTP:
$ sudo apt-get install ssmtp
Поправим файл конфигурации (например, я хочу для пересылки почты использовать Gmail):
$ sudo vi /etc/ssmtp/ssmtp.conf
root=youremailhere@gmail.com
mailhub=smtp.gmail.com:587
AuthUser=yourgmailusername
AuthPass=yourgmailpassword
UseSTARTTLS=YES
Полный список параметров можно посмотреть так:
$ man -m 5 ssmtp.conf
Эстеты десктопа могут оформить документ красиво:
$ zcat /usr/share/man/man5/ssmtp.conf.5.gz | groff -mandoc > ~/Desktop/ssmtp.conf.pdf
Альтернативно одаренные могут распечатать на бумаге:
$ zcat /usr/share/man/man5/ssmtp.conf.5.gz | groff -mandoc | lpr
Отправка сообщения, уже записанного в текстовый файл происходит элементарно:
$ ssmtp rat@admin.lv < message.txt
Или, если нам важен заголовок, то его можно просто добавить в начало файла message.txt:
$ echo "Subject: test message" > /tmp/newmessage; cat message.txt >> /tmp/newmessage; rat@admin.lv <tmp/newmessage
Чтобы отправить файл с приложением (например, weekly_report.pdf), его необходимо закодировать, например, в base64:
$ echo "Subject: Weekly Report" > /tmp/newmessage;\
echo "Content-Transfer-Encoding: base64" >> /tmp/newmessage;\
echo "Content-Description: weekly_report.pdf" >> /tmp/newmessage;\
echo "Content-Disposition: attachment; filename="weekly_report.pdf" >> /tmp/newmessage;\
base64 weekly_report.pdf >> /tmp/newmessage ; ssmtp rat@admin.lv </tmp/newmessage
Ну а если есть желание отправлять сообщение в HTML, после заголовка добавьте пару строк:
Mime-Version: 1.0
Content-Type: text/html; charset="utf-8"
Фуф, вроде все…
[…] 2) Напишем небольшой скриптик, который будет создавать 2 файла: список компьютеров, активных в сети сейчас, и список всех обнаруженных сочетаний MAC/IP за время работы скрипта (кумулятивный) и выкладывать их на внутренний веб. Дополнительно он будет оповещать системного администратора обо всех новых устройствах в сети, для отсылки почты воспользуемся утилитой sSMTP, описанной ранее. […]
[…] я уже писал про sSMTP, компактную замену полнофункционального MTA на Linux/UNIX. […]