W Debianie (i jego pochodnych) pojawił się paskudny błąd w pakiecie OpenSSL. Nie dotyczy to innych dystrybucji (chyba, że ktoś zaimportował klucze generowane na Debianie), oraz Sarge. Błąd w pakiecie OpenSSL powoduje, że generator liczb pseudolosowych jest przewidywalny. Zalecana jest aktualizacja pakietu i wygenerowanie wszystkich kluczy, które były generowane z użyciem OpenSSL od nowa. Zaleca się też uznanie kluczy DSA używanych na takich systemach za skompromitowane.

Źródło i więcej szczegółów: dsa-1571

Firefox to spyware

01 maja, 2008

"Firefox to spyware" tak pewnego razu na kanale #debian.pl w sieci IRCnet obwieściła nie znana mi osoba obwieścił Big_Brain. Potraktowałbym to luźno, ale rozmówca był konkretny i sensowny. Przy okazji trąbienia o rosnącej popularności Firefoksa i zaślepionego czy może raczej naiwnego podejścia do wolnego oprogramowania sprawa mi się przypomniała, więc pokrótce ją streszczę.

Czytaj dalej...

Nie tak dawno temu zadzwonił kumpel przebywający na urlopie bez dostępu do netu. "Routerek mi padł - zajrzysz? Tzn. żyje ale NAT nie działa". Zajrzałem. Systemem okazało się być Gentoo, oczywistych błędów nie było widać... Ręczny start usług i... nie działa nadal. I tylko natowanie nie działa (Invalid operation przy próbie włączenia maskarady, mimo, że moduły są załadowane/wkompilowane). W logach błędów nie widać.

Czytaj dalej...

Skracacz SMSów.

09 kwietnia, 2008

Ludziom zdarza się wysyłać SMSy. Założenie jest takie, by w możliwie małej objętościowo formie (koszt, limity wysłanych przez bramkę, łatwość odczytu przez odbierającego) przekazać maksimum informacji. Szczególnie przy okazji awarii takich, jak wczorajsza w Szczecinie warto minimalizować objętość. ;) Poniższy skrypt przedstawia sposób na skrócenie długości wiadomości w SMSach wysyłanych za pomocą polecenia sms z pakietu sms-pl (wersje na inne dystrybucje i systemy do znalezienia we własnym zakresie, ale opisany niżej algorytm jest uniwersalny i można go z powodzeniem stosować do wszystkich SMSów.

Czytaj dalej...

Postanowiłem zrobić backup książek telefonicznych plus upgrade oprogramowania. Jak się okazuje niewiele ponad kwartał spokojnie wystarcza do zapomnienia podstawowych komend (tu wazelina dla siebie za szybkie howto dot. podłączenia nokii 6030 do Linuksa), a zwłaszcza składni (slash czy backslash?), więc ku pamięci:

  • sprawdzenie podłączenia (info o telefonie): gnokii --monitor once
  • lista plików na A: gnokii --getfilelist "A:/*"
  • upload pliku: gnokii --putfile "A:/path/file"
  • usunięcie pliku: gnokii --deletefile "A:/path/file"
  • pobranie książki z karty sim (human readable): gnokii --getphonebook SM 1 end
  • pobranie książki z telefonu, format raw: gnokii --getphonebook ME 1 end -r

Jeśli ktoś ma potrzebę używania komunikatora w trybie tekstowym (wygodny sposób, swoją drogą), to nie tylko opisany tutaj finch, czyli konsolowa wersja pidgina istnieje. Osobiście nie próbowałem fincha (głównie dlatego, że nie ma go w Debianie Etch, za to dałem szansę dwóm innym: mcabber i centericq.

Czytaj dalej...

Stało się faktem, to, co można było od dawna przewidzieć. Asus ogłosił, że będą produkowane eee PC w wersji z 9" monitorem. Większy ekran to nie jedyne zmiany. Ma też być szybszy i lepiej wyposażony.

Czytaj dalej...

Jeśli ktoś ma udostępniony "na świat" serwer FTP na modemie Livebox, to niech się strzeże, bowiem odkryto lukę, która pozwala na pewno na zawieszenie serwera FTP, a być może także na zdalne wykonanie kodu.
Oto źródło tej informacji (plus szczegóły) , a tu exploit pozwalający sprawdzić czy nasz modem jest podatny.

PS. W sumie niby żaden news, bo na milw0rmie było od 1 marca. Ale że neostrada to popularna usługa, to im więcej osób wie, tym lepiej...

Ponieważ ostatnio długo szukałem jednego z poleceń (skleroza nie boli, ale jak coś wyleci z głowy...) - oto lista nienajczęściej używanych, ale bardzo przydatnych poleceń systemu GNU/Linux Debian. Kolejność przypadkowa.

  • dpkg-query -W - wyświetla listę zainstalowanych pakietów wraz z ich wersjami - dobre do backupu systemu,
  • wajig sizes - lista pakietów wraz z rozmiarami - idealne do porządków w systemie,
  • wajig clean - czyści cache pobranych pakietów - szybka metoda na brakujące miejsce w systemi,e
  • rsync -r --partial --progress --bwlimit=20 user@host:/plik . - kopiuje plik ze zdalnego hosta z pokazywaniem postępu, ograniczeniem prędkości do 20 KB i zachowaniem częściowo pobranych plików - dobre do kopiowania dużych plików na wolnych łączach,
  • wajig toupgrade - lista pakietów do aktualizacji, z wersjami,
  • find . -type d -maxdepth 1 | xargs du -sb | sort -n du --max-depth=1 -b | sort -n - pokazuje, który z podkatalogów w danym katalogu zjada miejsce (i ile, bajty)
  • date -d '1 days ago' - przekazanie do programu date, ile ma się cofnąć w czasie. Z nieznanych przyczyn pominięte w polskim manie.
  • ./mprime -t -B4 - szybki i skuteczny sposób na wykonanie testu pamięci i CPU (ogólnie stress testu) pod obciążeniem na czterech rdzeniach. Przydatne tam, gdzie niekoniecznie memtest chcemy/możemy odpalić.
  • kill -USR1 `pidof dd` - pokazuje, ile pracy wykonał aktualnie działający dd
  • find . -mtime +180 -exec rm {} \; - usuwa pliki o mtime ponad 180 dni

Lista będzie rozwijana. Proszę o inne przydatne polecenia (tylko bez mana tara, instrukcji obsługi vi itp.).

Wiele zupełnie innych, podzielonych na kategorie, bardzo przydatnych poleceń i tricków dostępnych jest na stronie z linuksowymi tips'n'tricks.

Domyślnie Java jest rozpowszechniana w wersji z ograniczoną siłą szyfrowania (zapewne niesławne ograniczenia dotyczące eksportu technologii krypograficznych z USA). Przeciętnemu użytkownikowi ciężko zauważyć różnicę, ale niedawno jeden z programów stwierdził, że hasło to może być do 8 znaków, albo muszę zdjąć limity w Javie.

Samo usunięcie ograniczeń polega na pobraniu ze strony Suna pliku zip z o nazwie Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files 5.0 (tu: dla wersji 5.0 - jakoś do niej przywykłem, dla wersji 6.0 istnieje analogiczny plik) i rozpakowaniu go do stosownego katalogu, w przypadku Debiana i Javy zrobionej make-jpkg - do /usr/lib/j2re1.5-sun/lib/security/

Oczywiście nic nie stoi na przeszkodzie, by skorzystać z make-jpkg i zrobić paczkę z Javą, a następnie skorzystać z opisnego kiedyś sposobu i wprowadzić modyfikacje (tu: zmiana plików) w tejże paczce. Ponieważ tak jest elegancko i Debian way - polecam.

PS. Zamiast bawić się w samodzielne paczkowanie sunowskiej javy można skorzystać z pakietu sun-java5-jre i okolicznych znajndujących się w sekcji non-free oficjalnego repozytorium. Bez JCE, z tego, co widzę (i czasami bez update'ów od Suna, przynajmniej jakoś długo trzeba było czekać, ale jeśli nam to nie przeszkadza, to sposób dodania JCE jest analogiczny.

Przyszedł ten dzień, że Thunderbird padł. No, może nie do końca padł, ale coś się stało i to raczej po stronie Thunderbirda. W każdym razie stwierdził, że pobierze maile z serwera, jeszcze raz. Wszystkie. Czyli około 20 tys.Tak, tak, nie usuwam wiadomości z tego serwera po pobraniu. Tak, tak, wiem, że istnieje IMAP (co więcej, serwer go obsługuje). Ale jakoś na początku używania dodałem konto jako POP3 i tak zostało...

W każdym razie pojawiło się 'sporo' duplikatów, które do niczego mi nie są potrzebne. I okazuje się, że jest bardzo proste, miłe i przyjmne rozwiązanie tego problemu, a mianowicie nowa wersja rozszerzenia removedupes.

Co potrafi? Potrafi określić, czy maile się powtarzają, biorąc pod uwagę dane takie jak M-ID, czas wysłania, liczbę linii, temat i - najważniejsze - zawartość. Całość konfigurowalna (można wybrać wg. których kryteriów ma porównywać) i nawet szybka (no, poza folderem rekordzistą z około 20 tys. maili - to trwało dobrych kilkanaście minut).

A tak nawiasem, orinetujecie się, czy zmiana POP3 (z zachowaniem maili na serwerze) na IMAP (z trybem offline) jest w Thunderbirdzie bezbolesna (w sensie, czy zachowa filtry wiadomości, wysyłanie kopii itp. ustawienia)? Ew. jakieś inne wady IMAP (w wersjii offline)?

We wpisie o haśle dla screen mamy ładnie wyjaśnione jak założyć hasło dla aktualnego screena. Można jednak pójść o krok dalej i każdego uruchamianego screena zabezpieczać automatycznie hasłem (jednym, domyślnym).

W tym celu należy w .screenrc w katalogu domowym usera umieścić linijkę z zakodowanym hasłem:

# This is how one can set a reattach password:
# password ODSJQf.4IJN7E    # "1234"

Od tej chwili każdy nowouruchamiany screen będzie zabezpieczony hasłem.

Aby utworzyć zakodowane hasło naprościej użyć htpasswd:

htpasswd -n test

Podajemy hasło dwukrotnie, otrzymujemy ciąg w stylu

test:DgVb/mZOaJTVs

Od dwukropka mamy nasze zakodowane hasło, które umieszczamy w .screenrc.

PS. Oczywiście to tylko domyślne hasło, które zawsze można zmienić korzystając ze sposobu opisanego we wspomnianym linku

Załóżmy, że mamy pobrane z serwera ze źródłami na dysk pakiet.orig.tar.gz i pakiet.diff.tar.gz. Aby uzyskać efekt identyczy z wajig source pakiet czyli pobraniem pakietu i nałożeniem debianowych patchy, należy:

 tar -zcf pakiet.orig.tar.gz && mv pakiet.orig pakiet && cp pakiet.diff.tar.gz pakiet/ && \
cd pakiet && zcat pakiet.diff.tar.gz | patch -p1 && \
rm pakiet.diff.tar.gz

Wersję z kopiowaniem i usuwaniem pakiet.diff.tar.gz można oczywiście łatwo obejść/uprościć. Drobna uwaga: _ (underscore) w nazwie tar.gz pakietu zamienia się na - (minus) w nazwie katalogu.

PS. Zwykle prościej dodać - choćby na chwilę - odpowiednie deb-src do sources.list

Przyspieszyć firefoksa 2.x

26 stycznia, 2008

Często słyszę, że Firefox jest wolną przeglądarką. Tymczasem u mnie śmiga. Ale jak siądę do czyjegoś FF, to często mam wrażenie, że czas stanął. Wystaczy kilka prostych zabiegów, by FF działał/ładował strony znacznie szybciej:

1. Wyłączenie cache'owania stron w pamięci (about:config -> browser.cache.memory.enable zmieniamy na false). Dysk jest wystarczająco szybki w porównaniu z łączem internetowym, a RAM ma ważniejsze rzeczy do roboty, niż przechowywanie cache przeglądarki. Poza tym istnieje coś takiego jak systemowe bufory do obsługi dysku, które zrobią prawie to samo, FF nie zajmie 30% pamięci, a cały system (w tym FF) będzie działał żwawiej.

2. Instalacja i konfiguracja genialnego pluginu rozszerzenia Adblock Plus. W skrócie plugin ten rozszerzenie to blokuje wczytywanie reklam. W praktyce, pozwala blokować odwołania do serwerów z reklamami w ogóle, a wielokrotne małe odwołania potrafią spowolnić wczytywanie strony znacznie bardziej, niż pobranie nawet sporej reklamy reklamy, zwł. gdy serwer reklamodawcy jest przeciążony. Jeśli chodzi o filtry to korzystam z filtrów Dr. Evil plus parę własnych (warto poświącić parę minut na konfigurację i dodanie tego, co nam przeszkadza do blokowanych - słowa 'hit', 'stat', 'ad' powinny wzbudzać naszą czujność ;)). Nie dość, że szybciej, to czyteleniej, bo często reklamy przysłaniają elementy nawigacyjne na stronie.

3. Blokada pop-upów. W sumie standard w każdej przeglądarce. Wystarczy się upewnić, że jest włączona.

Po ww. zabiegach przeglądanie WWW powinno być znacznie przyjemniejsze.

Jak wyświetlić stare, nieużywane wersje debów z własnego repo?
dpkg-scanpackages  /dev/null 2>&1 | perl -ne '/used that one and ignored data from\s+(\S+)\s!/ && print "$1\n"'
Przydatne, jeśli mamy swoje repo z pakietami, wrzucamy nowsze wersje pakietów, a miejsce się kończy na dysku. Zresztą, takie stare pakiety to tylko dłuższe generowanie Packages(.gz).
Uwaga: przy kilku wersjach danego pakietu może być konieczne kilkukrotne wywołanie skryptu (czytaj: nie jest rekurencyjny itp.).