Skip to content

By Тодор in Openwrt

Напоследък все по-често започнах да използвам Openwrt. Наложи се да мога да изпращам електронни писма през такава машинка. Избрах да ползвам ssmtp. Ето и пример как се случва всичко след инсталацията му.

Конфигурационният файл /etc/ssmtp/ssmtp.conf изглежда така:

root=postmaster
mailhub=smtp.gmail.com:465
authuser=accountname@gmail.com
authpass=SuperMegaQkataPar0la
rewriteDomain=gmail.com
hostname=gmail.com
FromLineOverride=YES
UseTLS=YES

Както виждате, ползвам услугите на Гугата. За малък брой писма това е ОК, но не забравяйте, че има лимит изпратени писма на ден (май беше 100). За повече, ще трябва да ползвате друг пощенски сървър.

Ето как изглежда и изпращането на писмо:
echo -e "From: Goshko <accountname@gmail.com>\nSubject: test subject\n\nMessage body" | ssmtp -vvv some@address.com

Това може лесно да се ползва в скрипт, като ще дам жокер и за нещо друго – името „Goshko“ може да бъде различно всеки път. Например „Server A Power“ или „Klimatik 02 Status“ 🙂

Примерен скрипт за кратки нотификации – само с няколко думи в темата на писмото:

#/bin/sh
while getopts n:s:a: option
do
        case "${option}"
        in
                n) NAME=${OPTARG};;
                s) SUBJ=${OPTARG};;
                a) ADDR=${OPTARG};;
        esac
done
echo -e "From: $NAME <some@address.com>\nSubject: $SUBJ\n\n`date`" | ssmtp $ADDR

Работи по следния начин:
notify.sh -n 'Comms UPS' -s 'Power Down' -a admin@address.com
Ще изпрати съобщение, което в тялото си съдържа само датата на събитието.

Tags: ,

Comment Feed

No Responses (yet)



Some HTML is OK

or, reply to this post via trackback.