PUM

Jakiś czas temu zacząłem korzystać z Uptime Monitor. Przyznaję, że jestem zadowolony, do pełni szczęścia brakowało mi czegoś, co wystawi moje uptime’y na WWW. Tzn. jest sporo fajnych narzędzi, rysujących ładnie i live, tzn. z autoodświeżaniem, ale… nie byłem przekonany do pomysłu publikacji kluczy API. Tym bardziej, że w niektórych przypadkach udostępnienie klucza wiąże się z z podaniem danych hosta, loginu i hasła do htpasswd itp.

Wolałbym mieć możliwość ukrycia nazwy/IP i ogólnie nie podawania zbyt wielu informacji, zwł. klucza API. Zauważyłem też, że nie ma (a przynajmniej nie znalazłem) nic do obsługi Uptime Monitora w Perlu. Stwierdziłem, że generowanie statycznego HTML (docelowo) z crona jest zupełnie wystarczające, a ew. autoodświeżanie prosto można załatwić JSem czy IIRC nawet polem META w HTML (koła nie odkrywam, „konkurencja” też tak robi.

I w ten sposób powstał PUM czyli Perl Uptime Monitor. 😉 Jest możliwość nadpisania nazwy, jest możliwość generowania uptime dla danego okresu (ilość dni wstecz). Brakuje opakowania wyniku w HTML (wyniki na STDOUT póki co…), ale to wkrótce… W sumie nie ma problemu z pobraniem danych do wykresu czasu odpowiedz, ale nie planuję póki co. Zachęcam do forkowania i zgłaszania pull requestów, ew. pomysłów w komentarzach.

Ja, spamer (rzekomy)

Maila dostałem. Od jednego z moich dostawców poczty. Ciekawie wyglądały już nagłówki:

Subject: Alert bezpieczeństwa! Ryzyko przejęcia konta
From: Poczta

Ludzie zajmujący się security śmiechnęli, że śmierdzi fake. Też mi to przeszło przez głowę, ale w dzisiejszych czasach nieustannie trzeba zachowywać czujność. Nieustannie! 😉

Drogi Użytkowniku,

Otrzymujesz od nas tę wiadomość ponieważ istnieje uzasadniona obawa, że Twój komputer jest zainfekowany przez wirusa/trojana.
Przypuszczamy że wirus/trojan przejął kontrolę nad Twoją skrzynką mailową i wysyła SPAM w Twoim imieniu.

W związku z powyższym prosimy o wykonanie wskazanych czynności:

 1. Należy niezwłocznie przeskanować  komputer programem antywirusowym
 2. Następnie dokonać zmiany hasła do konta pocztowego na stronie: https://konto.onet.pl/update-password.html.
 3. Po zmianie hasła, należy wylogować się z konta, a następnie zalogować ponownie na stronie https://poczta.onet.pl.
 4. Po zalogowaniu prosimy o wysłanie wiadomości mailowej na adres blokadaskrzynki@grupaonet.pl z potwierdzeniem wykonania powyższych kroków.

Do chwili wykonania wszystkich wymienionych czynności mogą występować problemy z wysyłką wiadomości.

Przypominamy, że ze względów bezpieczeństwa Grupa Onet.pl SA nigdy nie prosi o podawanie lub potwierdzanie haseł oraz nie umieszcza w wysyłanych e-mailach odsyłaczy do stron, na których hasło można zmienić.

Hasła nie wolno nikomu ujawniać. Nie należy odpowiadać na e-maile lub telefony z prośbami o podanie hasła. W przypadku otrzymania e-maila zawierającego podobne prośby, prosimy ten fakt zgłosić pod adresem abuse@onet.pl lub dzwonić na numery: 0 801 080 200 lub 012 26 00 200 (poniedziałek-piątek, 7:00-23:00; sobota-niedziela, 10:00-18:00). Polecamy nasze porady na temat bezpieczeństwa: http://pomoc.onet.pl/46,1120,przewodnik.html

Uprzejmie tłumaczę, że Linux, silne hasło, szyfrowane protokoły i raczej false positive, bo dostałem dziwny komunikat przy wysyłce maila do SpamCopa, więc niczego skanować nie będę ot tak, tylko dajcie najpierw logi i przede wszystkim odblokujcie konto.

Otrzymałem dziś odpowiedź:

Witamy,

Dziękujemy za list.

Przekazywane przez Pana wiadomości (raporty)  to był spam, dlatego też nasz system antyspamowy zareagował zablokowaniem kanału smtp oraz wysłaniem powiadomienia.

W tym przypadku nie ma konieczności wykonania opisanych w Alercie bezpieczeństwa czynności.

I w zasadzie chyba powinienem im teraz wytłumaczyć, że to nie był spam, tylko legalna wiadomość (nadawca zamawiał!). Że można, ba, powinno się traktować inaczej maile, które całą treść mają w załączniku eml. No i pewnie że przydała by się whitelista na spamcop.net. Ale nie sądzę, by zrozumieli. Gdyby rozumieli, że zjepsuli, to w treści pojawiłoby się przecież słowo przepraszam. Pozostaje odezwać się do SpamCopa nt. obsługi GPG. Może wtedy Onet przestanie zaglądać mi w pocztę i – co gorsza – wyciągać błędne wnioski na tej podstawie.

Swoją drogą, ostatnio spamu tyle przychodzi, że chyba odpalę skrypt Montera do automatycznego zatwierdzania spamu na SpamCop.

UPDATE Zauważyłem, że podobne podejście do tematu co Onet ma Wirtualna Polska. Też nie pozwolili mi ostatnio zgłosić spamu do SpamCopa.

Zmiana routera (TP-Link WR841-N)

Od dłuższego czasu myślałem o tym, by zmienić router. Problem w tym, że Linksys WRT54GL, którego miałem, działał. Do tego miał wrzucone OpenWrt, więc był bezpieczniejszy i wygodniejszy, niż większość dostępnego sprzętu. Koniec końców zracjonalizowałem sobie, że 802.11n jest odporniejsze na zakłócenia (a trochę problem z zasięgiem/zakłóceniami owszem, był), szybsze (osiągnięcie maksymalnej prędkości netu możliwe było tylko teoretycznie)i w ogóle lepsze. I jest sporo modeli, które pozwalają na wgranie OpenWrt.

Trochę poczytałem, trochę poklikałem TP-Linka u kumpla (na firmware producenta), popatrzyłem na ceny… I kupiłem  TL-WR841N (wyszło mi, że umie OpenWrt, niedrogi, wrażenie u kumpla – bdb) w markecie na jakiejś pseudopromocji. Nie pamiętam dokładnie ile zapłaciłem, ale jakoś 60-80 zł[1]. I leżał. Z kwartał. Bo nie chciało mi się wymienić routera, skoro stary działał…

Ostatnio zauważyłem, że pojawiają problemy z siecią okresowo. Pingi do routera rzędu 1000ms. Potem działało normalnie. Kanał ustawiony optymalnie, przynajmniej na tyle, na ile się dało. Stwierdziłem, że pora przetestować router.

Router TL-WR841N

Źródło: http://www.tp-link.com/en/products/details/cat-9_TL-WR841N.html

Pierwsze co mi się rzuciło w oczy, to informacja o licencji GPL wydrukowana na świstku papieru (po angielsku) i polska instrukcja. Miłe i sprawia dobre wrażenie. W instrukcji dla tych, którzy nie korzystają z dołączonej płyty CD zauważyłem ciekawą rzecz. Aby podłączyć się do routera polecają nie wpisanie adresu typu http://192.168.0.1 tylko… http://tplinklogin.net Tak, domena nie istnieje i IMHO jest to bug security. Scenariusz, gdzie użytkownik łączy się z netem przy pomocy takiego routera (domyślne login i hasło to admin/admin), wchodzi na stronę i dostaje malware w postaci JS, który przejmie kontrolę nad routerem nie jest wcale trudny do wyobrażenia. Co prawda podobno TP-Linki w swoim DNS mają zaszytą tę domenę i same rozwiążą to zapytanie, jeśli tylko komputer pobiera zarówno adres IP, jak i konfigurację DNS z DHCP, ale… po co?

Oczywiście połączyłem się po IP, bo taka wersja też działa. Przy tym mam inną konfigurację i serwer cache DNS mam bezpośrednio na komputerze. Dalej było z górki. Przeklikałem wstępnie konfigurację (wyłączenie WDS, ustawienie preferencji WiFi), pobrałem najnowszy firmware producenta (na OpenWrt przyjdzie jeszcze czas…)  i wrzuciłem go na urządzenie. Wszystko zadziałało elegancko (ba, pierwszy firmware był nawet po polsku). Sympatycznie wygląda opcja, której włączenie pozwala routerowi samodzielnie wybierać kanał. Włączyłem, zobaczę jak to się w praktyce będzie sprawdzać. Inna miła rzecz to obsługa kilku dostawców dyndns, w tym no-ip.com, z którego korzystam. Nie skonfigurowałem, ale czuję, że może to być ten punkt, który pozwoli mi na długie nie wgrywanie OpenWrt. Wstępny test prędkości i… zamiast 15-18Mbps które widziałem do tej pory jest ~30Mbps.

Oczywiście nie wszystko mogło działać poprawnie. Windows na jednym z kompów stwierdził, że adres IP z DCHP owszem, pobierze, ale już sieć nie działała, nawet router się nie pingował. Karta to Atheros AR5007EG
 (a/b/g, niestety nie ma n). Spróbowałem na szybko uruchomić „pchełkę” Mediateka na USB, ale wyszło jeszcze gorzej. Sieć co prawda ruszyła, ale przy restarcie nie chciał się uruchomić system – krzyczał o błąd w DLL. Możliwe, że przedobrzyłem z ustawieniami programu pomocniczego do karty pozwalając mu włączyć sieć przed zalogowaniem użytkownika. Parę prób zmian konfiguracji na routerze (szerokość kanału itp.) nie pomogło. Włączenie trybu bez n – też nie. W końcu stwierdziłem, że trzeba ustalić, czy problem jest z samą kartą, czy systemem/sterownikiem. Uruchomienie Linuksa i… karta jak najbardziej działa.

Szybkie przeszukanie sieci i znalazłem zalecenie, by zaktualizować sterownik. I faktycznie. Problem rozwiązało pobranie najnowszych sterowników do Atherosa (a wydawało mi się, że mam względnie nowe…). Po aktualizacji sterownika karty wszystko ruszyło od kopa. O stabilności TP-Linka nic nie piszę, bo działa raptem kilkadziesiąt godzin. Póki co, jestem zadowolony.

[1] Linksys kosztował w momencie kupna IIRC 180 zł, choć nie był najtańszym sprzętem z *Wrt. Fajny spadek cen, wzrost możliwości i poszanowania GPL daje się zaobserwować.

UPDATE Jeszcze o jednej sympatycznej cesze nowego sprzętu zapomniałem – mały apetyt na prąd. Kiedyś mierzyłem, ile prądu bierze Linksys i wahało się to od 2,5W (sam zasilacz, duży, transformatorowy jeszcze), przez 6,9W (router idle, 2 komputery podłączone) do 7,5W przy transferze danych między dwoma komputerami po WiFi). Nowy router nie był dokładnie testowany, ale po włączeniu routera i jednego komputera watomierz pokazał 2,5W, czyli tyle, ile poprzednio sam zasilacz. Myślę, że mogę przyjąć, że jest to 5W mniej, czyli 3,6 kWh w skali miesiąca. Czyli ok. 2 zł oszczędności. Czyli na samym prądzie nowy sprzęt zwraca się w jakieś 3 lata.

Druga tura

Co jakiś czas dobiegają mnie, zarówno na FB, jak i od znajomych w pracy informacje o kolejnych „przełomach”. A to miazga w debacie, a to sufler, a to coś. I z utęsknieniem czekam, aż się to wszystko skończy. Nawet wiem, jak się skończy, ale o tym za chwilę.

Nie żebym się zupełnie wyborami nie interesował. Nawet dopisałem się do komisji wyborczej, czyli głosować pójdę. Ale żeby się tak podniecać? IMO nie ma sensu. Mieliśmy prezydenta z PiS, nic nie wybuchło (choć niektórzy twierdzą, że trotyl). Zresztą, prezydent to głównie funkcja reprezentacyjna. Ale jest jeszcze inny aspekt.

PO i PiS, wbrew temu, jak się je kreuje w mediach podkreślając różnice, to partie w praktyce dość podobne. Oczywiście w obietnicach przedwyborczych zawsze wielkie zmiany i złote góry, ale… kto pamięta zapowiedź likwidacji obowiązku meldunkowego? Się nie dało. Religia w szkole (zamiast w kościołach!) jest? Jest. Aborcja, legalizacja narkotyków – bez zmian. Znaczy: wybory prezydenckie wygra PO-PiS. I przez kolejne 5 lat nic się – przynajmniej w zakresie prezydenta – nie zmieni. Bo w ostatnich latach poglądy partii (w UK, u nas pewnie podobnie; wszystkich partii) przesunęły się mocno w prawo i w stronę autorytaryzmu.

Jakby ktoś dorwał listę oficjalnych poglądów politycznych partii/kandydatów, to jest dobra strona z mapą polityczną. I można sprawdzić swoje poglądy, przy okazji. No i jakby były „oficjalne” partyjne, to w sumie lepsze, niż to, co proponował Latarnik Wyborczy.  Mi się nie chce, szczególnie, że do poprawionego algorytmu Latarnika Wyborczego zajrzało raptem kilkanaście osób (a tak ładnie się zapowiadało po krytyce…). I w ogóle polecam ten wpis.

Nie, żeby w ogóle się nic nie działo, bo jakieś drobne zmiany są. Np. inicjatywa, którą rozkręcił przy okazji wyborów prezydenckich VaGla dot. publikacji umów cywilnoprawnych przez partie. No ale to jakby obok, przy okazji i jednak pozostaje póki co (i niestety stawiam, że tak zostanie, za duża stawka…) niszowym bólem w tylnej części ciała obu partii.

UPDATE Przypomniało mi się, że mam kawałek idealnie pasujący na tę okoliczność.

Na kogo głosować czyli Latarnik Wyborczy DIY

W poprzednim wpisie pokazałem, czemu nie należy zbytnio sugerować się wynikami zwracanymi przez Latarnika Wyborczego. Postanowiłem zrobić własną wersję algorytmu, która będzie wolna od opisanych wad. Z różnych względów (zajęcia poza kompem, cisza wyborcza, która jest bez sensu i pewnie nie ma zastosowania, ale dmucham na zimne) zeszło mi więcej czasu z publikacją, niż planowałem, więc wypuszczam as is. Całość zajęła nie 45 minut, tylko bardziej 1,5h (bardziej myślenie, niż klepanie), po poprawkach błędów różnych.

Założenia

  • KISS
  • Brak odpowiedzi na pytanie jest traktowany tak samo jak neutralność w danej kwestii lub nie mam zdania.
  • Wynik jest wartością -100% do 100% (lub, w wersji drugie, bardziej zgodnej z LW 0-100%).
  • Waga pytania nie powoduje drastycznej zmiany wyniku

Rozwiązanie

Stwierdziłem, że tak naprawdę da się to sprowadzić do liczenia korelacji. Czyli nie programowanie, tylko arkusz kalkulacyjny. Zresztą łatwiej debugować błędy. Kwestię prostoty i neutralności łatwo osiągnąć przez przypisanie wartości -1 (nie), 0 (brak zdania), 1 (tak). Zarówno dla odpowiedzi kandydatów, jak i odpowiadających. Ciocia matematyka zapewni, że zwykły iloczyn użytkownika i kandydata da 1 dla zgodności, -1 dla wartości przeciwnych i 0, jeśli którakolwiek ze stron nie ma zdania.

Powstał wiec arkusz z czterema zakładkami

Odpowiedzi kandydatów

Przepisane żywcem z wyników zebranych i publikowanych przez Latarnika Wyborczego (prośba o sprawdzenie, przepisywanie do arkusza to nudna część i łatwo o pomyłkę, więc nie wykluczam błędów, choć starałem się wypełnić rzetelnie). Część stała, nie wymaga żadnej ingerencji.

Odpowiedzi i istotność

To jest część, którą tak naprawdę wypełnia użytkownik odpowiadając na pytania w Latarniku Wyborczym. Brzydka forma, bo nie o UI mi chodziło. Dla każdego pytania podawana jest odpowiedź [-1, 0, 1] oraz istotność (po prostu mnożnik, zakres tak naprawdę dowolny[1], intencją był zakres 0-2, przyjąłem zmianę o 20%, nie musi być równa dla wszystkich pytań). Pola wypełnione na żółto wypełnia użytkownik (w arkuszu wypełnione są przykładowymi, losowymi danymi).

Obliczenia wyników

Tu zaszyty jest algorytm. Prosty, bo po prostu jest to iloczyn uzyskanego wyniku (suma ilorazów wagi, odpowiedzi kandydata i użytkownika) i maksymalnej teoretycznej zgodności[1]. Część stała, nie wymaga ingerencji.

Wynik

Tu jest to, co użytkownik dostaje na koniec. Podaję w dwóch równoważnych wersjach, różnią się tak naprawdę tylko zakresem. Pierwszy to -100% (zdanie przeciwne do kandydata dla każdego pytania) do 100% (wszystkie odpowiedzi jak kandydat), 0% oznacza wynik neutralny. Drugi wariant to po prostu rzutowanie na 0-100%. 50% oznacza brak jakiejkolwiek zbieżności poglądów z kandydatem, 0% – poglądy dokładnie przeciwne, 100% – poglądy zupełnie zgodne. Mniej więcej odpowiednik tego, co jest teraz w Latarniku Wyborczym (dla neutralnej wagi pytań). Część stała, nie wymaga ingerencji.

Sposób użytkowania

Pobrać arkusz ze strony (format ods, działa w darmowym Libre Office), uruchomić. Przejść do arkusza Odpowiedzi i istotność, wypełnić żółte pola. Po wypełnieniu wynik odczytujemy w zakładce Wynik. Oczywiście całość jest open source, czyli każdy może wprowadzić swoje poprawki i modyfikacje. Oraz poszukać błędów, których nie wykluczam.

Uwagi proszę zgłaszać w komentarzach pod wpisem. Spam, także wyborczy AKA agitacja będzie tępiony.

[1] I tu, kończąc wpis, widzę pierwszy błąd mojego rozwiązania. Powinienem jeszcze przemnożyć odpowiedzi kandydatów przez mnożnik podany przez użytkownika, gdy liczę maksymalny wynik dla kandydata. Teraz możliwe jest uzyskanie wyniku ponad 100%, zwł. dla wyższych mnożników. Błąd znany, poprawka trywialna, ale nie chce mi się teraz tego robić, jak będzie zainteresowanie to poprawię.