Instalacja drukarki HP DeskJet 920c na Linuksie

Zauważyłem skandaliczne zaniedbanie: nie mam żadnego wpisu o Linuksie i drukarkach na blogu. Jest jeden jedyny ślad w postaci opisu zużycia prądu przez HP DeskJet 854c na eksperymentalnym blogu wattmeter. A przecież drukarki to taki wdzięczny temat. Można pisać tomy o praktykach rynkowych producentów, czyli dymaniu konsumentów, o wolności, o ekologii… Last but not least drukarka miała ważny wkład w powstanie wolnego oprogramowania. Przy okazji, jeśli ktoś nie czytał Free as in Freedom, to polecam, jest dostępne za darmo.

Tym razem jednak będzie nieco mniej wodolejstwa, a więcej techniki. Nowoczesny sprzęt nieco odmówił posłuszeństwa i musiałem wrócić do korzeni, czyli tytułowej drukarki. W dodatku instalując ją na nowym sprzęcie. Instalacja drukarki na Linuksie jest prosta, ale system działa latami bez reinstalacji, więc stwierdziłem, że po prostu nie pamiętam jak to zrobić. Świetny pretekst do zrobienia wpisu.

HP deskjet 920c

Źródło: https://www.recycledgoods.com/

O DeskJet 920c słów parę

HP DeskJet 920c to stara drukarka atramentowa. Ma te same kartridże co 854c, ze zintegrowanymi głowicami, co przeważyło o jej przyjęciu. Trafiła do mnie bowiem jako sprzęt przestarzały moralnie. Ot, kiedyś ktoś w firmie kupił nowy, lepszy sprzęt i oddawał stary. Tymczasem ja drukuję niewiele, a wieki temu nauczyłem się szybko i skutecznie napełniać kolor czarny w tych kartridżach i od tej pory jestem wierny HP. Tym bardziej, że tolerancja na różne tusze uzupełniające też jest spora. Co prawda staram się trzymać w miarę możliwości przeznaczonych do tego modelu lub linii, ale różnie z tym bywało. A drukuje zawsze dobrze, cokolwiek wleję.

Kolor niby napełnia się analogicznie, ale wychodziło mi to gorzej i drukowało zawsze nieidealnie – jakieś przerwy, paski itp. Może mniej używane i głowica zaschła? W każdym razie dwa czy trzy razy podchodziłem do tematu i mimo różnych tricków, które działały dla tuszu czarnego, nigdy nie było dobrze. Ponieważ niespecjalnie potrzebowałem koloru, zniechęciłem się i zaprzestałem dalszych prób.

Podłączenie i instalacja

Instalacja przeprowadzona została na Debianie Bullseye, ale z tego co pamiętam wcześniej wyglądała analogicznie.

Po podłączeniu drukarki lsusb pokazuje:

Bus 003 Device 006: ID 03f0:1504 HP, Inc DeskJet 920c

natomiast dmesg:

[ 165.918646] usb 3-1.4: new full-speed USB device number 6 using ehci-pci
[ 166.079696] usb 3-1.4: New USB device found, idVendor=03f0, idProduct=1504, bcdDevice= 1.00
[ 166.079706] usb 3-1.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 166.079712] usb 3-1.4: Product: DeskJet 920C
[ 166.079715] usb 3-1.4: Manufacturer: Hewlett-Packard
[ 166.079719] usb 3-1.4: SerialNumber: CN1596C025BI
[ 166.111410] usblp 3-1.4:1.0: usblp1: USB Bidirectional printer dev 6 if 0 alt 0 proto 2 vid 0x03F0 pid 0x1504

Najpierw instalujemy pakiety, a w zasadzie pakiet. CUPS zostanie doinstalowany w ramach spełniania zależności.

apt install hplip

Następnie dodajemy wybranego użytkownika USER do grupy z uprawnieniami administracyjnymi do drukarki.

adduser USER lpadmin

Resztę można wyklikać. I tak jest najłatwiej. Aby dostać się do interfejsu zarządzania CUPS, w przeglądarce wchodzimy na http://localhost:631 Przechodzimy do administration, wybieramy add printer. Uwierzytelniamy się jako użytkownik, któremu wcześniej przyznaliśmy dostęp. I działamy, czyli w zasadzie klikamy continue. Seria zrzutów ekranu poniżej.

Wybieramy lokalną drukarkę:

CUPS wybór drukarki HP DeskJet 920c

Ustawiamy jej nazwę:

CUPS - nadanie nazwy drukarki

Jeśli chcemy, możemy także w tym miejscu ustawić udostępnianie drukarki.
Następnie wybieramy sterownik drukarki:

CUPS - wybór sterownika

Nie wiem, czemu pokazał tyle sterowników. Wybrałem pierwszy z brzegu.
Na koniec ustawiamy domyślne ustawienia drukowania:

CUPS - wybór domyślnych ustawień drukowania

I to tyle, jeśli chodzi o instalację HP DeskJet 920c na Linuksie. Od tej pory możemy korzystać z drukarki.

FireHOL – brak aktualizacji

Przy okazji wpisu o antyspamie na WordPress pisałem o wykorzystaniu list z doskonałego projektu FireHOL do blokowania ruchu. Działało świetnie, działać przestało. Przynajmniej częściowo. W repozytorium na Githubie widać bowiem, że ostatnia aktualizacja jest sprzed dwóch miesięcy.

Sprawdzając dokładniej trafimy na issue Github lists no longer being updated. Listy budowane są przy pomocy crona. 23 marca miała miejsce zmiana klucza SSH używanego przez Github. Tego samego dnia przestało się aktualizować repo FireHol. Przypadek?

I tak sobie radośnie aktualizacje leżą od blisko dwóch miesięcy. To może nie być po prostu dłuższy urlop…

W każdym razie, jeśli ktoś korzysta z powyższych list i zależy mu na aktualizacjach, to polecam przepiąć się na wersję bezpośrednio ze strony projektu. Dostępnej pod linkiem download local copy dla każdej z list. Te są aktualizowane.

I tak to się w tym IT/security kręci…

UPDATE: To nie jest tak, że powstał ten wpis i over. Założyłem kolejne issue, na wypadek gdyby autor przeoczył wcześniejsze. Napisałem też maila. Póki co cisza.

Google, he knows me

Dostałem maila od Google. Na stronie wykryto błędy, kod błędu 403. Sprawa mnie zaintrygowała. Co prawda chodziło tylko o jeden URL, ale czemu 403? Błędy 5xx czy 404 bym zrozumiał jeszcze, zwłaszcza na blogu, ale 403? Coś się tu zdecydowanie nie zgadza.

Rozpocząłem dochodzenie i zrobiło się dziwniej. Bowiem chodziło o zupełnie egzotyczny URL ( hxxps://zakr.es/tststs/ ). Na oko poprawny, ale ewidentnie tymczasowy i testowy. I zdecydowanie nie należący do bloga. W ogóle byłem zdziwiony, że Google o nim wie.

And he knows I’m right

Pierwsze co przyszło mi do głowy to robots.txt. Może dlatego, że sugerują sprawdzenie, czy dostęp nie jest tam blokowany? W każdym razie pudło. Zresztą nawet gdyby tam URL był, to raczej jako wykluczenie dla botów. A wtedy zgłaszanie braku dostępu byłoby sporą bezczelnością.

Zajrzałem do katalogu na serwerze i przypomniało mi się, że testowałem pewną rzecz. Powiedzmy, że okolice bug bounty. Tak, robienie tego na podstawowej domenie to zwykle kiepski pomysł, ale tym razem kluczowa miała być obecność naturalnego ruchu. Tak czy inaczej nic z tego nie wyszło, tj. nie udało mi się wykorzystać w planowany sposób. A katalog pozostał, choć już niewykorzystany. I nielinkowany.

Analiza

Google webmaster tools[1] pokazuje, skąd jest linkowana dana strona. W tym przypadku podał dwie strony na blogu. Jedną z konkretnym wpisem, drugą zbiorczą.

Strona odsyłająca
https://zakr.es/blog/author/rozie/page/6/
https://zakr.es/blog/2015/10/spis-wyborcow-a-rejestr-wyborcow/

Tyle, że w podglądzie źródła tego ostatniego wpisu to ja tego URLa w żaden sposób nie widzę.

Jak to wygląda czasowo? Kolejna ciekawostka to kolejne dwie daty w Google webmaster tools:

Data pierwszego wykrycia: 31.08.2022

Zapewne wtedy się bawiłem. Daty utworzenia plików potwierdzają – wszystkie pliki mają 03.08.2022. Ma to jakiś sens, tylko musiałbym zostawić pliki podlinkowane na miesiąc? Raczej niemożliwe, bo wtedy zostałyby na stałe. A nie ma. No i skąd by się wzięły w tak starym wpisie?

Ostatnie skanowanie 5 maj 2023, 11:47:16

To oczywiście możliwe, tym bardziej, że Google zauważyło błąd 403 dokładnie 3 maja 2023. Po ponad pół roku?

I’ve been talking to Google all my life

Jeśli chodzi o Google, to mamy love hate relationship. Z jednej strony doceniam firmę za GCTF, czy zabezpieczenia poczty i kont. Z drugiej strony to, co robią z prywatnością userów, nachalność reklam, tragiczny, scamerski content części reklam bąbelkowanie w wyszukiwarce i wreszcie samo bycie globalną korporacją mocno mnie odstręczają.

Ostatecznie jest tak, że umiarkowanie korzystam z ich usług. Trochę, bo wygodne, trochę, bo wypada znać. Mam webmaster tools, mam reklamy AdSense, ale tylko w wybranych miejscach. Pozwalam indeksować blog. Raczej nie korzystam z ich wyszukiwarki, tj. sięgam do niej tylko, jeśli nie znajdę wyników w podstawowej, czyli rzadko. Inne usługi Google, czyli np. Maps, Waze, translate, calendar, drive, docs – różnie, raczej korzystam, choć w ograniczonym stopniu.

Częściowe wyjaśnienie

Spojrzenie w logi serwera mówi nieco więcej:

66.249.65.223 - - [28/Aug/2022:20:35:53 +0200] "GET /tststs/ HTTP/1.1" 403 187 "-" "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.5112.79 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
66.249.70.63 - - [30/Aug/2022:20:53:52 +0200] "GET /tststs/ HTTP/1.1" 403 187 "-" "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.5112.79 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
66.249.64.227 - - [30/Apr/2023:22:32:01 +0200] "GET /tststs/ HTTP/1.1" 403 187 "-" "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.5615.142 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
66.249.64.231 - - [03/May/2023:10:44:18 +0200] "GET /tststs/ HTTP/1.1" 403 187 "-" "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.5615.142 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
66.249.64.229 - - [05/May/2023:11:47:16 +0200] "GET /tststs/ HTTP/1.1" 403 187 "-" "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.5615.142 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"

Część rzeczy się zgadza, np. wizyty kiedy Google zauważyło i zaindeksowało URL, po miesiącu od zamieszczenia plików. Widać też wizyty 03.05, kiedy sobie o nim ni stąd ni zowąd przypomniało. Mogło się też zdarzyć, że do testów wziąłem jakiś stary wpis z 2015.

Nadal nie zgadza się – albo nie mogę sobie przypomnieć – jak to się stało, że URL został na miesiąc, a nie został na stałe. I słodką tajemnicą Google pozostanie, czemu zapomniało o tym URLu na bite osiem miesięcy.

Usunąłem katalog z serwera. Może teraz Google, gdy dostanie 404, zapomni o nim na dobre?

[1] Obecnie Google Search Console, ale przywykłem do starej nazwy, więc przy niej zostanę, przynajmniej w tym wpisie.