Email üzenet áramszünet /blackout/ esetén! – Megoldva!

UPS – WINDOWS – BLAT – STUNNEL = EMAIL

Tegyük fel, hogy van egy szünetmentes tápegységünk, az én esetemben egy APC Black-UPS ES 550-ről van szó. Működik, minden rendben vele, de milyen jó lenne, ha értesítene mondjuk email formájában, ha áramszünet van, vagy ha visszajön az áram. Meg persze az is milyen jó lenne, ha arról is üzenne, ha valami nem jó az akkumulátorral stb..


Sziasztok! Akkor most egy kicsit átváltok sztori módba.


Tegyük fel, hogy van egy szünetmentes tápegységünk, az én esetemben egy APC Black-UPS ES 550-ről van szó. Működik, minden rendben vele, de milyen jó lenne, ha értesítene mondjuk email formájában, ha áramszünet van, vagy ha visszajön az áram. Meg persze az is milyen jó lenne, ha arról is üzenne, ha valami nem jó az akkumulátorral stb.. A szünetmenteshez kapott, illetve letölthető PowerChute Personal Edition program persze ezt nem tudja. Akkor jött a fejvakarás és a rengeteg fórumozás. Először az apcupsd vonalon indultam el, de mivel pár óra próbálkozás után kiderült számomra, hogy az apcupsd dirver nem működik Windows 7, Windows 2008 alatt, csak Windows XP esetében. Legalább is ennél az UPS típusnál nem jött össze. Az eszközkezelőben ott figyelt 10-es hibakóddal. Megint vakartam a fejem és a http://forums.apc.com oldalt böngészve, felnyitották a szemem.


Szóval a feladat adott, a megoldás már félig összeállt.


Az UPS mikor elmegy az áram/blackout/ létrejön egy esemény a windows eseménynaplóban. Mikor visszajön az áram/AC utility power/ szintén lesz egy esemény. Ezekhez az eseményekhez feladatokat tudunk rendelni, hogy mikor bejön az esemény a windows feladatütemező végrehajtson egy műveletet. Ez lehet program indítása, email küldése, üzenet megjelenítése. Az üzenet megjelenítése kilőve, mivel valószínűleg nem tartózkodom a gép előtt mindig mikor ez történik. Az email küldése kilőve, mivel smtp szerver nincs a gépeken és a freesmtp szervereket valószínűleg minden visszafogja dobni. Maradt a program indítása.


Szóval a feladat adott, a megoldás összeállt.


Minden bejövő áramszünet/blackout/ után a feladatütemező elindít egy általam készített upsblackout.bat állományt. Minden bejövő áramszünet vége/AC utility power/ után a feladatütemező elindít egy általam készített upspower.bat állományt. Mivel email-t küldünk ezekkel a fájlokkal szükségünk lesz a Blat programra. Tegyük fel, hogy gmail-es címet akarunk használnia művelethez, akkor még szükségünk lesz az stunnel programra. Az upsblackout.bat, upspower.bat állományokat módosítva, más gépeken futtatva egy gmail fiókra irányíthatjuk az összes szünetmentes tápegység riasztásait. Jól hangzik, nem? Akkor most menjünk rajta végig pontról – pontra.


1. lépés

Programok letöltése, beszerzése:

weboldal: http://www.blat.net/

letöltés: blat

weboldal: https://www.stunnel.org

letöltés: stunnel

Töltsük le a rendszerünknek megfelelő verziót. Stunnel esetében, csak 32 bites verziót találtam, de teljesen jól megy 64 bites windows alatt is. A blat324_32.full.zip csomagot én a C:\upsalert mappába csomagoltam ki. Jelenleg egy 32 bites windows 7 operációs rendszeren viszem végig a műveletet, de windows 7 64 bites és windows 2008 64 bites rendszeren is beüzemeltem sikerrel. Kicsomagoltam a letöltött blat állományt a C:\upsalert mappába. Jelenleg ez így néz ki >> C:\upsalert\blat324. Ezen belül van egy docs és egy full mappa. Meg is vagyunk. Majd letöltöttem az stunnel-5.19-installer.exe-t, majd next-next üzemmódban telepítettem.


2. lépés

Stunnel konfigurálása:

Elindítjuk és a Configuration >> Edit Configuration-t válasszuk ki a menüben, majd töröljünk ki mindent belőle és illeszük be az alábbi sorokat. Installáljuk az stunnel-t szervizként is!


client = yes
output = stunnel-log.txt
debug = 7
taskbar = no

# SERVICE-LEVEL OPTIONS

[SMTP Gmail]
accept = 127.0.0.1:465
connect = smtp.gmail.com:465

[POP3 Gmail]
accept = 127.0.0.1:995
connect = pop.gmail.com:995


Ezzel, ha megvagyunk a Configuration >> Reload Configuration menüre kattintsunk.


3. lépés

Blat smtp konfigurálása:

Indítsunk egy cmd-t és navigáljunk bele a C:\upsalert\blat324\full mappába, majd adjuk ki az alábbi parancsot. Természetesen az email címedhez a gmail-es email címed írd oda, a felhasználódhoz is az email címed. A jelszavadhoz, pedig a gmail-es jelszavad. Értelemszerűen.


blat.exe -installSMTP 127.0.0.1 <emailcímed>@gmail.com 3 465 – <felhasználód> <jelszavad>


4. lépés

Teszt email küldése teszt.bat álománnyal és kevésbé biztonságos alkalmazások hozzáférésének engedélyezése gmail-fiókunkban:

Hozzunk létre egy teszt.bat állományt és illesszük be az alábbi sort, majd mentés után futtasuk! /duplaklikk/ Természetesen itt is a behelyettesítendő részeket, ki kell töltened az adataiddal. Az upsalert.txt helyett bármilyen fájlt megadhatsz, csak létezzen és ott legyen a teszt.bat mellett.


C:\upsalert\blat324\full\blat.exe upsalert.txt -to <emailcímed>@gmail.com -f <emailcímed>@gmail.com -server 127.0.0.1 -port 465 -u <felhasználód> -pw <jelszavad>


Az első futtatás után a gmail-fiókba belépve jön egy üzenet, hogy egy ismeretlen alkalmazás beszerettet volna jelentkezni a fiókba. A biztonsági beállításokban a kevésbé biztonságos alkalmazások hozzáférését kapcsoljuk be. Majd megint futtasuk a teszt.bat állományt és meg fog érkezni az email a gmail-fiókunkba. Ezt megelőzhetjük azzal, hogy a gmail beállításaiban még küldés előtt bekapcsoljuk ezt a funkciót, mint a videóban is láthatjátok.


5. lépés

Magyarázat, letöltés:

Az általam kialakított folyamat úgy néz ki, hogy lefut egy upsblackout.bat, ha elemegy az áram. Ez annyit csinál, hogy törli a C:\upsalert\ könyvtárból az upsalert.txt fájlt, majd megint létrehozza. Beleírja azt, hogy elment az áram, hogy melyik szerveren és az aktuális dátum és időpont jelenik meg benne. Ezt az eseményt beleírja egy upsalerthistory.log fájlba is, de azt soha nem ürítem. Így bármikor visszanézhető, hogy mikor ment el az áram és mikor jött vissza. Egy upsalertsmtp.log fájlban, pedig benne vannak a küldések logjai. A script végén, pedig meghívja az stunnel-t és elküldi az általam beállított smtp kiszolgáló, az általam beállított email címre. Szóval mindig csak az aktuális eseményről kapok email-t, de minden logolva van. Ugyan ezt csinálja az upspower.bat is, csak ő arról küld információt, hogy az áram visszajött. Természetesen lehet, sőtt biztosan van szebb megoldás is, de nekem ezt sikerült összehozni cirka 3 nap alatt. Több UPS hibáról is lehet küldeni email-t, ha ismerjük a hibakódokat, amit az UPS beír a windows eseménynaplóba.

Általam készített csomag itt letölthető, de az stunnel és a blat programot külön kell letöltened, beállítanod. Ebben a csomagban, csak a saját email-t kell beállítanod, meg az üzenet tárgyát/subject/ és az “UPS – ITFroccs server” szöveget módosítani a te géped nevére. Így be tudod azonosítani, hogy konkrétan hol is van a probléma. A %path% kapcsoló helyett direkt eléréseket használok benne sok helyen, ez azért van mert windows feladatütemezőből nem mindig talált rá, hogy hova is írjon. De több rendszeren tesztelve és megy. Remélem van akinek hasznos lesz és megkönnyíti az életét.


6. lépés

Eseménynapló – Feladatütemező beállítása:


7. lépés

Nézzük meg élesben:


 

HOZZÁSZÓLOK A CIKKHEZ

Please enter your comment!
Please enter your name here

Ez az oldal az Akismet szolgáltatást használja a spam csökkentésére. Ismerje meg a hozzászólás adatainak feldolgozását .