Syslog + lpt + mrygajace diody To najgłupsza rzecz jaką zrobiłam :P Chciałam mieć wizualny podgląd na to, co dzieje się na serwerze z racji tego, że nie zawsze słyszy się mielenie dyskiem :> a diody łatwo dostrzec, szczególnie, gdy szaleńczo migają. Gdy ktoś skanuje nam porty, próbuje dostać się na roota, sshd, ftp itp to sygnalizowane jest to mrugnięciami poszczególnych diod. Ze względu na to, że można dać różne ich kolory oraz różne kombinacje mrugnięć :D to od razu wiadomo, co dzieje się w naszym syslogu :) Co trzeba mieć? 1) serwer (unix/linux) :> 2) sysloga 3) port lpt 4) urządzonko 5) program Nie bede opisywać punktów w takiej kolejności :P Program i jego uruchomienie Sam program jest banalnie głupi i od razu trzeba go sobie pozmieniać w/g swoich potrzeb :) Nie ma sensu pisac jakiegoś kolosa + autokonfigurację czy ładowanie konfiguracji i dlatego wszystko jest wklepane w kod :) Proszę pobrać: http://www.kwant.info/projekty/elektronika/diody/diody.tar.gz Wrzucić tam gdzie się chce to mieć :) np katalog roota :) mv diody.tar.gz /root Rozpakować :> Powstanie katalog "diody". Utworzyć pipkę w tymże katalogu: cd diody mkfifo sysek chmod 600 sysek Pozmieniać plik sledzik.c w/g swoich potrzeb. Tzn komunikatów jakie mają być wychwycone z sysloga :) Tyczy się to głównie e-maila :D Kompilacja: make make zgas sledzik to program od mrygania :) a zgas wylacza napiecia na pinach lpt gdzie leca dane :) Przydaje sie, jesli zatrzymamy sledzik i jakas dioda bedzie wlaczona. Wtedy uruchamiamy ./zgas i po klopocie. Do sysloga ( /etc/syslog.conf ) dodajemy dla przykładu taką oto regółkę: *.* |/root/diody/sysek albo wskazać tam.. gdzie mamy naszą pipkę właśnie :) Zrestartować syslog :) Uruchomic program: ./sledzik Bedziecie mieć podgląd na logi systemowe jeśli nie przekierujecie komunikatów tego programu w /dev/null A teraz samo urządzonko.. :) Potrzebujemy: 1) 8 LED - ( 2 żółte, 2 niebieskie, 2 zielone, 2 czerwone) żeby było lepiej widać co do nas mrugają :P 2) kabel 9'io żyłowy 3) wtyczka do LPT (DB25) 4) 2 rezystory okolo 47k Ohm (do niebieskich LED) 5) 6 rezystorów okolo 2k Ohm (do pozostałych LED) Mrygaczek ten to prymitywne podłączenie diód pod piny od 2-9 + masa :> czyli wyjście danych. Aby się nie powtarzać to wklejam tu opis portu LPT z tłumaczenia coffee HOWTO. Przy okazji podziękowania dla Tygrysa, który przetłumaczył ten tekst na J. polski! Już prościej być nie mogło :D ********************************************************************* kopia z http://www.jtz.org.pl/Html/mini/Coffee.pl-2.html#ss2.1 2.1 Napięcie kontrolujace 0-5V z komputera Oto prosty przyklad pobrania napięcia 0-5V z portu równoleglego komputera. Widok od tylu Męskie zlacze ----- Pin 10 - ACK DB25 | | Pin 9 - D7 | | Pin 2 - D0 ~Strobe v v v Pin 1 - _________________________________________________________ / \ \ 13 12 11 10 9 8 7 6 5 4 3 2 1 / \ / \ 25 24 23 22 21 20 19 18 17 16 15 14 / \___________________________________________________/ Pin 1 to ,,Strobe'' (logika odwrotna) Piny 2-9 to sygnaly SZYNY DANYCH (DATA BUS), dokladnie to, co zostalo wpisane do (hmm ,,klamek''??? (latches) - przyp. tlum.) komenda OUTB. ((hmm ,,zatrzasków''??? przy. przypisku tlum.)) Pin 10 to sygnal potwierdzenia (ACK) sterowany przez ciebie, tak zebyć mógl wyprodukować przerwanie. Piny 18-25 sa zwarte i jest to uziemienie (GND). Dokladniej: <= we pin Glówny Nazwa => wy DB25 pin sygnalu Bit Uwagi -------- ---- ------ ------- --- ----------------------- => 1 1 -Strobe C0- Ustaw niskie napięcie >0.5us do wysyl. => 2 2 Dane 0 D0 Ustaw na pierwsze znaczace dane => 3 3 Dane 1 D1 ... => 4 4 Dane 2 D2 ... => 5 5 Dane 3 D3 ... => 6 6 Dane 4 D4 ... => 7 7 Dane 5 D5 ... => 8 8 Dane 6 D6 ... => 9 9 Dane 7 D7 Ustaw na ostanie znaczace dane <= 10 10 -Ack S6+IRQ Niskie napięcie ~ 5uS, po zaakcept. <= 11 11 +Busy S7- 1 Dla Zajęte/Offline/Blad <= 12 12 +PaperEnd S5+ 1 Dla braku papieru <= 13 13 +SelectIn S4+ 1 Dla wybranej drukarki => 14 14 -AutoFd C1- Ustaw na 0 dla LF <= 15 32 -Error S3+ 0 dla Blędu/Offline/Końca papieru => 16 31 -Init C2+ Ustaw niskie napięcie > 50uS do inicjalizacji => 17 36 -Select C3- Ustaw na 0 do wybrania drukarki <==> 18-25 19-30 GND *************************************************************************** Zainteresowanych odsyłam na tamtą stronę :) Konstrukcja jest przednia :D Lutujemy sobie kabel 9'io żyłowy do wtyczki. Kolejne kable do pinów 2, 3, 4, 5, 6, 7, 8, 9. + któreś z masą np 18. (2 - 9) na tym będą diody LED 18 - masa Można kupić sobie uniwersalną płytkę cyfroniki, chyba prościej jest wlutować sobie części w nią niż lutować wszystko na pajączka :) Schemat: < do LPT pin 2 o--------------)|---/\/\/\/\------------------. D1 Y 2,3k | | pin 3 o--------------)|---/\/\/\/\------------------+ D2 B 47k | | pin 4 o--------------)|---/\/\/\/\------------------+ D3 G 2,3k | | pin 5 o--------------)|---/\/\/\/\------------------+ D4 R 2,3k | | pin 6 o--------------)|---/\/\/\/\------------------+ D5 Y 2,3k | | pin 7 o--------------)|---/\/\/\/\------------------+ D6 B 47k | | pin 8 o--------------)|---/\/\/\/\------------------+ D7 G 2,3k | | pin 9 o--------------)|---/\/\/\/\------------------+ D8 R 2,3k | | pin 18 o--------------------------------------------' (GND) Opis: D1..8 - kolejne diody LED Y - yellow LED B - blue LED G - green LED R - red LED GND - masa masy są zwarte z pinem 18 Pamiętajcie, że dioda świeci w jedną stronę :P plus (+) diody jest na długiej nóżce :) a (-) na krótkiej (masa) PS. dzięki Marek :) nie skojarzyłam tego, bo od razu przycięłam nóżki do jednej długości :P Czy o czymś zapomniałam? :> Może zrobię jeszcze zdjęcia płytki, ale chyba nie trzeba :> Neutrinka neutrina@NOSPAM.kwant.info http://www.kwant.info