Radia internetowe… wrr…

W firmie postawiłem firewalla. Tym razem szczelnego, gdzie każde połączenie
ma być pod kontrolą (nie ma regułek pozwalających się łączyć na jakiś port
z dowolną maszyną) a do WWW i pokrewnych używane jest proxy
z uwierzytelnianiem Digest. No i nawet IE sobie jakoś z tym radzi.

Ale w firmie ludzie są słuchać radia. Firma nie opłaca abonamentu, więc
pozostają radia internetowe. Geeki nie mają problemów — słuchają swoich
egzotycznych stacji, najwyżej dadzą adres do przepuszczenia na
firewallu. Gorzej z dziewczynami, które chcą słuchać normalnego radia
— Planeta, albo RMF FM. Te stacje robią wszystko by uprzykrzyć życie
administratorom, a tym samym pozbawić siebie części słuchaczy
w zabezpieczonych sieciach. Pomagają im w tym Microsoft i Macromedia (Real
został wykopany z interesu, widać za mało utrudniał).

Bo przecież nie może być tak, że na stronie jest po prostu URL do
strumienia audio w jakimś sensownym formacie i protokole. Często jest jakaś
aplikacja we Flashu, która używa Media Playera do odtwarzania transmisji.
Oczywiście Media Player czy też ta aplikacja Flash uruchomiony w IE nie umie
już ze skonfigurowanego proxy korzystać. Albo uparcie próbuje
uwierzytelniania Basic (o którym wiadomo, że jest niebezpieczne), albo nie
uwierzytelnia się wcale. Więc trzeba zrobić dziurę do przepuszczenia
odpowiednich adresów bez autoryzacji albo bez proxy. I okazuje się, że nie są
to tylko adresy radia, ale także jakichś plików z Microsoftu. Nie dość że je
sobie musi ściągnąć (czemu nie ma w systemie podstawowych kodeków do
podstawowych formatów, albo czemu radiu używa niestandardowych?), to nie umie
tego zrobić poprawnie. Oprócz Microsoftu oczywiście trzeba odblokować serwery
radia. Ale jakie? Nie ma tak prosto, żeby były jakieś nazwy hostów które
wystarczyłoby sprawdzić w DNS. Strumień jest adresowany numerkiem IP (bez
revDNS), a co! Niech admin zgaduje co to i niech mu się konfiguracja posypie
przy pierwszej zmianie IP (już co najmniej jedna była)! Nie będzie się obibok
obijał!

Na razie jeszcze się w to bawię… ale za którymś razem, jak znowu
koleżanka do mnie przyjdzie, że jej radio z nowu nie działa, to odpowiem jak
na rasowego admina przystało nie da się, albo u mnie działa, gdy
puszczę u siebie jakąś alternatywną stację.

Wrrr….

Wracam z pracy, zabieram się za odgrzewanie obiadu, a tu już telefon.
Jakiemuś ważnemu klientowi coś nie działa i trzeba to sprawdzić. Odpowiadam,
że za jakieś pół godziny sprawdzę. W końcu obiadek gotowy. Jem sobie, przy
laptopiku oczywiście, delektując się chwilą spokoju. Jednak nie długo. Dorwał
mnie ktoś na Jabberze i pisze, że ten BTS
z PLD
(nad robieniem którego zarwałem kiedyś kilka nocy) w ogóle nie
działa
. Że jest do dupy, że
Bugzilla byłaby lepsza i po co w ogóle było coś innego tam pisać jak jest
gotowe rozwiązanie. Wrr….

Bugzilla była w PLD lata temu i nikt tego nie używał, bo toporne i
zupełnie niedopasowane do czegoś takiego jak dystrybucja. Potem pojawił się
jakiś nasz własny, prymitywny BTS. Ale nikt się nim nie zajmował, nie
uaktualniał, aż wkońcu zaczął on zarzynać maszynę na której chodził i został
wyłączony. Przez wiele tygodni w ogóle nie było gdzie zgłaszać błędów w PLD.
Co jakiś czas pojawiała się na ten temat dyskusja, z której nic nie wynikało
(poza tym, że wielu developerów nie chce Bugzilli). W końcu nie wytrzymałem i
mimo, że nie mam dość wolnego czasu, postanowiłem coś zrobić. Wziąłem
Flyspraya, poprzerabiałem, żeby pasowało do dystrybucji i było nieco bardziej
zgodne ze standardami. Uruchomiłem tak, aby działały podstawowe funkcje, a kod
wrzuciłem do SVN. Tyle byłem w stanie zrobić i to było dużo więcej niż
ktokolwiek zrobił w tej sprawie. Przekonałem się przy okazji, że kod Flyspraya
jest straszny, że słusznie PHP nie lubię. Wiedziałem, że to co zrobiłem jest
pełne niedoróbek, i że ja ich raczej nie poprawię. Ale uznałem że to lepsze
niż nic. I nawet ludzie zaczęli z tego korzystać — pojawiły się nowe
zgłoszenia błędów, niestety mało kto je próbował zamykać.

A teraz czytam, że to co zrobiłem jest do niczego. I to jeszcze w momencie,
gdy chcę po prostu odpocząć po ciężkim tygodniu pracy, a nie jakiś pluskw
szukać. Człowiekowi się wszystkiego w takiej chwili odechciewa, ale z drugiej
strony jedyny sposób, żeby odeprzeć zarzut to przynajmniej znaleźć błąd będący
źródłem tej opinii i go poprawić (potem można rzucić projekt w cholerę, skoro
jest do niczego i wszyscy mają to w dupie). Okazało się, że błąd występował
gdy ktoś zgłaszał buga bez podania wersji błędnego pakietu. Zamiast
odpowiedniego komunikatu generowany był nieprawidłowy kod XHTML. Mozilla
wyświetlała odpowiednią informację, że XML nie jest well-formed, a Konqueror,
podobno, nie wyświetlał nic. Poprawiłem, co miałem robić? A tak… odpocząć po
ciężkim tygodniu… eh… Następnym razem jak będzie coś podobnego do
zrobienia, to chyba ja się do tego nie zgłoszę, szkoda nerwów.

Nowy serwerek…

Do firmy przyszedł zamówiony nowy serwerek — IBM
x226
oraz dwa dyski (UltraSCSI320, 15Kobr.). Streamer, zamówiony
razem z serwerem, na razie nie dotarł. Serwer ma służyć do trzymania naszych
najważniejszych baz i sam z siebie raczej nie udostępniać żadnych usług dla
ludzi z zewnątrz. Chciałbym, żeby to była maszyna pewna, dlatego markowy
serwer i dwa dyski na RAID.

W pierwszej chwili po włączeniu zaskoczył mnie sprzętowy RAID
(AIC7902 z HostRAID). Nie zamawiając serwer
myślałem o software’owym, a w specyfikacji serwera nie zauważyłem wzmianki o
sprzętowym. Założyłem więc RAID1 narzędziami z BIOSu kontrolera i zabrałem się
za instalkę PLD. Pojawiły się dwa problemy: 1. obsługa tego RAIDA 2. obsługa
sieciówki (Broadcom, 1Gbit). Drugi problem (brak obsługi serwerowej sieciówki
w instalatorze) już parę razy przerabiałem i rozwiązałem standardowo —
do serwera wsadziłem pierwszą lepszą kartę jaką znalazłem w firmie (tym razem
jakieś ne2k-pci).

Poważnym problemem okazał się ten RAID. Pogooglałem i dowiedziałem się, że
są do tego sterowniki pod Linuksa, ale tylko binarne pod kilka konkretnych
kerneli kilku konkretnych dystrybucji (fe!). Zresztą, na płytkach dołączonych
do serwera też je znalazłem. Adaptec przyznał nawet, że nie
będzie otwartych sterowników do tego („bo nie”, czyli powody prawne itp.).
Może napiszę to wyraźnie, jakby ktoś miał wątpliwości: HostRAID w
AIC7902 to syf!

Na
szczęście AIC7902 jako zwykły kontroler SCSI jest bez
problemy obsługiwany przez kernel z PLD. Wyłączyłem więc
RAIDa w BIOSie i pod RescueCD założyłem programowego (w
instalatorze nie umiałem znaleźć do tego odpowiednich opcji, a poza tym
instalator miał problemy z załadowaniem sterowników do tego
Adapteca). Na tym RAIDzie założyłem potem LVM, a w nim kilka
logicznych wolumenów — mam dość problemów z partycjami założonymi
podczas instalacji zupełnie potem nie pasującymi do potrzeb systemu
produkcyjnego.

Chwilę grozy przeżyłem, gdy zobaczyłem (przy pomocy hdparm
-t
), że te nowe dyski wyciągają jedynie 34MB/s. To mój dwuletni dysk
SCSI jaki mam w domu wyciąga 50MB/s. Ale uznałem, że to tylko jakiś problem z
kernelem w RescueCD, później okazało się, że słusznie. System
zainstalowałem w chroot poldkiem. geninitrd ładnie stworzył
initrd, ze wszystkim co potrzeba do RAIDa, LVM i systemu plików na
/ i system udało się uruchomić prawie za pierwszym podejściem
(tylko w grubie trzeba było konfigurację poprawić).

Bałem się jeszcze o sieciówkę, że będzie problem jak z tym RAIDem, ale
okazało się że otwarte sterowniki na GPL są na płytce dołączonej do serwera, a
także w CVS PLD, więc po prostu je sobie zbudowałem,
zainstalowałem i zadziałały.

Jutro spróbuję zainstalować wszelkie narzędzia do tego serwerka (coś co mi
powie np., że któryś z zasilaczy padł, poda temperaturę, czy co tam IBM do
takich serwerków daje) i zacznę stawiać na nim to co ma tam chodzić. To
ostatnie to będzie kuuupa roboty na najbliższe tygodnie, no ale w końcu od
czego jesteśmy?

Spamerzy bywają zabawni…

Oto co znalazłem w folderze poczty do administratorów (z oczywistych
względów nie objętej filtrami antyspamowymi):

1691     Oct 02 Getting Laid    ( 190) Let's meet and HaveSex Tonite admins
1692     Oct 02 Emily Ejacs     (  75) Exploding Finishes admins (squirters!)

Już same tytuły ciekawe, a w środku jeszcze dowcipy (pewnie żeby oszukać
filtry statystyczne). Taki spamer potrafi czasem człowieka rozbawić… ale do
SpamCopa i tak poleci!

Wesoła wiadomość


From: ":D"@pp.pl.pl.pl
Subject: [portal] Pytanie do firmy XXXXX
To: adres_firmy_XXXXX

:D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D:D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D :D

Sprawdziłem nagłówki. Wiadomość została wysłana przez formularz na naszej
stronie WWW z komputera z którego dostęp do Internetu został odcięty za
zaległe płatności. Miło nam, że klienci doceniają także takie nasze działania.
:-)

Format CV

W jakim formacie przysyła swoje CV grafik starający się o pracę?
Oczywiście w JPEG.

Boje się, że kandydaci na adminów (przyjęcie grafika na szczęście nie
należy do mnie) zaczną mi przysyłać CV w postaci skryptów perla… Na razie
dostaję głównie doce, rzadziej PDF i
RTF. Raz dostałem dwa pliki .rtf, jeden z
Content-Type: text/richtext, ale w formacie RTF (zdaje się że to
co innego), a drugi, z Content-Type: application/octet-stream
mimo rozszerzenia okazał się być dokumentem w formacie
OpenOffice. Ja nawet na początku się nie zorientowałem, bo i
tak w OO to otwierałem, ale ktoś z Windowsem i bez OO raczej by tego nie
otworzył.

Najgorsze jest to, że na razie format Worda się najlepiej sprawdził. Bo
treść tak przesłanych CV od razu mogłem przeczytać w moim
muttcie (dzieki wv w mailcap),
a do RTF i PDF musiałem przechodzić do Xów i odpalać jakąś kobyłę. Co gorsza
jeden z tych RTFów był tak rozjechany, że można było się jedynie domyślać o co
chodzi. Właściwie nie wiem jaki byłby właściwy format przesyłania takich
dokumentów. Mnie by plain-text wystarczył, ale jak musi być ładnie, to
chyba zostaje PDF, lub nieszczęsny (w mailach) HTML.

MAILER-DAEMON ma nowych przyjaciół.


From: jakiś_luser
Subject: Luser
To: "Mail Delivery System" <MAILER-DAEMON@mój-server>

Wróciliśmy cali i zdrowi . Jak na nasze polskie warunki drogowe - udało się
przejechać w ciagu jednego dnia 800 km. Wyjechaliśmy 4.20 rano a wróciliśmy
20.30 wieczorem . Byliśmy na grobach rodziny w Bygdoszczy i po drodze
odwiedziliśmy Licheń . Nie wiem czy się orientujesz , jest to miejscowość koło
Konina , gdzie wybudowano duże Sanktuarium . Muszę kończyć póżniej napiszę
więcej.
narazie
Luser

Robota…

Wczoraj wyczerpała mi się bateria w komórce, a ładowarki nie mogłem znaleźć.
Dzisiaj rano też nie, więc pojechałem do pracy z rozładowaną komórką. Komórka
nie dzwoniła, to o niej zapomniałem… aż do momentu gdy bardzo potrzebowałem
pewnej informacji w niej zapisanej. Wkurzyłem się strasznie i po powrocie
wywróciłem pół domu do góry nogami, żeby tę ładowarkę znaleźć. Była
mniej-więcej tam gdzie zawsze, ale przysypana górą papierów.

Jak tylko podłączyłem komórkę przyszło 44 SMSów. Głównie od automatów, które
zwykle siedzą cicho. Zadzwonił też kumpel, że coś tam się rozłącza. Z SMSów
wynikało, między innymi, że wszystko na serwerowni pojawiało się i znikało,
więc diagnoza była prosta — znów przerwy zasilania w budynku TPSA, gdzie
mamy tę nieszczęsną szafę. Zalogowałem się na jeden z serwerów i sprawdziłem
stan baterii w UPS: 45%, UPS był On-Line. Uznałem, że był problem ale już go
nie ma i olałem sprawę. I to był mój błąd. A ja jeszcze poszedłem do parku do
rodzinki, stając się znowu nieosiągalny, bo komórka ładowała się w domu.

Gdy wróciłem już czekała na mnie wiadomość na sekretarce, że coś dalej nie
działa. Okazało się, że rzeczywiście — jeden z naszych głównych routerów
szalał. Miałem z nim jakiś kontakt przez konsolę szeregową, więc próbowałem
reanimować go zdalnie. Kontakt polegał na tym, że router sypał tonami
komunikatów i w ogóle nie reagował na jakąkolwiek próbę interakcji. Ale czasem
robił sobie przerwy, w których można było coś sprawdzić i próbować maszynę
rebootować. Za którymś rebootem nie wstał. No cóż, trzeba było jechać na
serwerownię. Tam się udało sytuację opanować i wygląda na to, że jak na razie
wszystko działa.

Najgorsze jest to, że rzeczywiście nawaliłem. No i w poniedziałek czeka
mnie pewnie dywanik u szefa. Oczywiście sporo winy jest po stronie TPSA, która
pozwala sobie na takie jaja z zasilaniem (dojazd elektryka, który może
wymienić odpowiednie bezpieczniki trwa czasem ponad godzinę), ale ja
powinienem zareagować szybciej. Zamiast tego wolałem uznać, że jest OK i
lecieć do żonki i córci. A jak jest wszystko OK, to czasem zamiast zajmować
się rodzinką to siedzę przed kompem, robię jakieś pierdoły i udaję (przed
samym sobą), że ciężko pracuję. Ech…

Złośliwości sprzętowe

(z góry przepraszam za masę polskawo-anielskawych słówek ;-))

Ostatnio w firmie zajmujemy się łączami radiowymi. Obecne założenia to szkielet sieci na
urządzeniach Proxim Tsunami 5GHz, i łącza końcowe na 2.4Ghz. Jedno łącze 5GHz
działa już od paru tygodni i jest przez nie podłączona jedna duża sieć
osiedlowa. Niestety działy się z tym różne dziwne rzeczy (zawisało od strony
ethernetu satelity lub stacji bazowej). Upgrade firmware do 2.0 tylko pogorszył
sprawę. Na szczęście pojawiła się wersja 2.0.1, która wydaje się rozwiązywać
problem (przynajmniej na razie).

To był konkretny błąd, który najprawdopodobniej został naprawiony (ale wciąż nie
wiem na czym polegał), jednak pewne felery tych Proximów pozostają bez zmian, a
podczas wymiany firmware dały się mocno we znaki. Po pierwsze czas rebootu.
Urządzenie restartuje się kilka minut, a trzeba je restartować po większości
zmian w konfiguracji. Naprawdę nieprzyjemne. Po drugie — interfejs do
zarządzania przez WWW — nawet dość wygodny, ale jedynie w
przedlądarce z JavaScript. Oczywiście ze standardami W3C ma niewiele wspólnego.

Ze względów bezpieczeństwa adresów access-pointów nie routujemy w świat.
Niestety z routera nie da się tym zarządzać, bo tam nie odpalę graficznej
przeglądarki (wiem, że jak się uprzeć to się da, ale ja nie chcę). Postanowiłem
sobie więc forwardować porty przez SSH. I to nawet działa — dopóki nie
próbuję zmienić jakiegoś parametru. Zmiany robione są przez funkcje JavaScript,
które odwołują się do urządzenia po HTTP, ale z konkretnym IP, czyli nie przez
127.0.0.1 na który mam porty przekierowane. Muszę więc dla każdego urządzenia:
1. przeforwardować port przez SSH i 2. dodać regułkę iptables przekierowującą
odwołania do adresu urządzenia na tak przeforwardowany port. Kupa roboty jak na
interfejs mający ułatwić pracę administratorowi. 😦

Ale te Proximy są i tak lepsze niż AP DLinka (2.4GHz). Ten ostatni też ma interfejs
WWW do zarządzania, jednak nie działający w żadnej Linuksowej przeglądarce. Żeby
zmienić jakiś parametr muszę to badziewie podłączać do Win*. Brrrr…

Najlepiej wypada interfejs WWW switchy DLinka. Też używa JavaScript,
miejscami nawet Java (nawet do wyświetlenia tabelek!), ale można go normalnie
forwardować i działa w Firefoksie. Jest nawet dość wygodny, miejscami może nawet
bardziej niż telnetowy interfejs (bardzo fajny, pełnoekranowy) ze starszych
switchy tej firmy. W jednym (a może nawet nie tylko jednym) switchu mam nawet SSH,
ale połączenie (dokładniej wymiana kluczy) trwa tak długo, że raczej nie będę
używał.

Wracając do AP DLinka — w czwartek skonfigurowałem jeden taki do pary
z odpowiednim urządzeniem Proxima do radiołącza na 2.4GHz. Podłączone w biurze
działało. Wczoraj zamontowali Proxima na kominie, DLinka na dachu w pobliżu.
Było to jak już kończyłem pracę, ale donieśli mi telefonicznie, że to nie
działa. Podobno DLink nie odpowiadał nawet na pingi po ethernecie i
nawet po resecie do ustawieni fabrycznych — tzw.
zgon. Dzisiaj więc skonfigurowałem innego DLinka (tego samego typu) i pojechałem
go podłączyć na tym dachu. Niby wszystko OK, nawet DLink pisze że połączył się z
AP. AP (Proxim) przez jakiś czas pokazuje, że DLink jest podłączony, ale potem
go znika z listy. No i łącze nie działa. Kombinujemy jak możemy,
wyłączamy wszelkie filtry, szyfrowanie itp. i nic. Zadzwoniłem więc do drugiego
admina, żeby spróbował reanimować tego martwego DLinka. Okazało się że
jest sprawny i normalnie odpowiada na domyślnym (fabrycznym) IP.
Poprosiłem o sprawdzenie wersji firmware. Okazało się, że w tym niby
martwym
jest firmware 2.0.7 (piszę z pamięci), a w tym który próbowaliśmy
uruchomić 2.0.3. Kazaliśmy przywieść tamten. Skonfigurowałem, podłączyłem… i
ruszyło :-). Ufff.

Potem jeszcze w firmie trochę walczyliśmy z VLANami. Postanowiliśmy wydzielić
tę nową sieć do osobnego VLANa. Jednak był problem w skonfigurowaniu switchy, bo
nie mogliśmy się połapać na których portach ma być (w grę wchodziło 6 switchy 24
portowych)… nie ma to jak dobry bajzelek ;-). W końcu się
udało i chyba na razie wszystko działa jak należy. Oby jak najdłużej.

P.S. poprzedni wpis dla wybranych zalogowanych