Linux

Usuwanie środowiska graficznego

Na forum DUG'a znów został poruszony ciekawy wątek, tym razem odnośnie usunięcia całego środowiska graficznego z systemu. Pozornie niby nic nadzwyczajnego, przecie każdy z nas potrafi odinstalować szereg pakietów via apt czy aptitude . Problematyczne za to mogą się okazać zależne pakiety, które nie zostaną automatycznie usunięte wraz z konkretnym metapakietem od środowiska graficznego. Jak zatem usunąć te pozostałości?

Oczyszczanie bazy danych dconf

Jak możemy przeczytać na wiki projektu GNOME, dconf to swojego rodzaju baza danych, która zawiera informacje o konfiguracji systemu w postaci klucz-wartość. Jak nie korzystam, co prawda, ze środowisk graficznych ale wykorzystuję w swoim linux'ie szereg ich elementów, które mogą działać z powodzeniem w okrojonym systemie, np. gnome-keyring . Część programów wykorzystuje tę bazę danych do przechowywania swoich ustawień, które możemy zmieniać via gsettings , gconf lub też dconf . Problem pojawia się po dłuższym czasie używania systemu, gdzie cześć z ustawień jest już przestarzała, np. w wyniku zaprzestania użytkowania jakiejś aplikacji. Przydałoby się zatem raz na jakiś czas oczyścić te bazę danych ze zbędnych wpisów i o tym będzie ten wpis.

Serwer kluczy GPG i kwestia prywatności

Czytając sobie artykuł na temat TORyfikacji zapytań do serwerów kluczy GPG, pomyślałem, że w sumie mógłbym zreprodukować przedstawione tam kroki dotyczące implementacji tego rozwiązania na windowsie i wdrożyć je na linux'ie. Chodzi generalnie o to, by serwer kluczy GPG nie był odpytywany bezpośrednio przy szukaniu/przesyłaniu kluczy przez sieć, bo to może identyfikować nas, jak i grupę ludzi, która się z nami komunikuje. Jakby nie patrzeć, klucze GPG składają się z dość newralgicznych informacji, typu imię, nazwisko czy adres email, a serwer kluczy GPG tych danych w żaden sposób nie zabezpiecza i są one zwykle przesyłane otwartym tekstem przez sieć.

Brak dźwięku przy nieaktywnej sesji logowania

Jeśli korzystamy z serwera dźwięku PulseAudio na swoim linux'ie, prawdopodobnie zdarzyła nam się już sytuacja, w której chcieliśmy zablokować lub wygasić ekran monitora mając jednocześnie odpalony jakiś odtwarzacz muzyki. Gdy tylko ekran zostanie zablokowany, możemy odnotować brak dźwięku, bo ten zwyczajnie natychmiast zamiera. Za to po odblokowaniu ekranu, dźwięk wraca. Podobnie sprawa ma się przy przejściu z trybu graficznego (Xorg) na jedną z konsol TTY.

Konfiguracja połączenia WiFi pod debianem

Sieci bezprzewodowe w obecnych czasach to standard i nie ma chyba miejsca na ziemi gdzie nie dałoby rady ulokować routera WiFi, do którego można by podłączyć szereg urządzeń. Każdy kto próbował konfigurować sieć bezprzewodową na debianie, wie, że może to być bardzo upierdliwe, zwłaszcza jeśli mamy dostęp do wielu AP, które posiadają różne konfiguracje. Wynaleziono, co prawda, automaty, które mają pomagać w ogarnięciu tego całego bezprzewodowego zamieszania, np. network-manager czy wicd ale w przypadku lekkich stacji roboczych, które nie mają wgranego pełnego środowiska graficznego, a jedynie jakiś menadżer okien, np. Openbox, to instalacja tych powyższych narzędzi może zwyczajnie nie wchodzić w grę.

Zmienna TZ w środowisku linux'owym

Ten wpis będzie poświęcony poprawie wydajności naszych systemów linux'owych. Okazuje się bowiem, że w pewnych aspektach ich pracy nie wszystko działa jak należy. Rozchodzi się o zmienną środowiskową TZ , w oparciu o którą to zwracane są, np. czasy utworzenia czy modyfikacji plików na dysku. Ten przypadek jest o tyle dziwny, że każdy z nas ma już na swojej maszynie skonfigurowany czas systemowy, za który odpowiada pakiet tzdata . Niby wyraźnie określiliśmy strefę czasową, w tym przypadku jest to Europe/Warsaw ale widać system operacyjny posiłkuje się odwołaniami do pliku /etc/localtime .

Baza danych użytkowników serwera freeradius

Poprzedni wpis był o sieciach bezprzewodowych, a konkretnie dotyczył on konfiguracji protokołu WPA Enterprise w oparciu o serwer freeradius. Ten post będzie w podobnym klimacie, z tym, że skupimy się tutaj na nieco innym podejściu to kwestii użytkowników, którzy mogą się łączyć do sieci WiFi. Ich konfiguracja nie zostanie praktycznie w żaden sposób ruszona, no może za wyjątkiem przeniesienia jej do bazy danych MySQL.

WPA/WPA2 Enterprise i serwer freeradius

Poniższy wpis ma na celu stworzenie infrastruktury WiFi w oparciu o oprogramowanie freeradius zainstalowane na debianowym serwerze. Projekt zakłada wykorzystanie osobnego urządzenia NAS (AP), w tym przypadku jest to router TP-Link TL-WR1043N/ND v2, na którym jest zainstalowane oprogramowanie OpenWRT. W oparciu o te dwie maszyny spróbujemy skonfigurować protokół WPA2 Enterprise z obsługą trzech metod uwierzytelniania, tj. EAP-TLS, EAP-TTLS oraz PEAP (v0) . Będziemy również potrzebować kilku certyfikatów (w tym CA), bez których to pewne mechanizmy mogą nie działać.

Generowanie certyfikatów przy pomocy easy-rsa

Jakiś czas temu przedstawiłem manualny sposób na generowanie certyfikatów, które można z powodzeniem wykorzystać przy ssl, openvpn czy freeradius. Nie było tego znowu aż tak dużo ale jakby nie patrzeć trochę parametrów trzeba znać, a najlepiej mieć przygotowane odpowiednie linijki, by sam proces generowania certyfikatów przebiegł dość sprawnie. Jednak wychodzi na to, że nie trzeba się znowu aż tak wysilać, bo istnieją dedykowane narzędzia, które wygenerują nam wszystkie potrzebne pliki. Mowa o easy-rsa i to niego będzie dotyczył ten wpis.

Zaszyfrowane logi w rsyslog i syslog-ng

Jakiś czas temu, na forum DUG'a wyczytałem coś o przesyłaniu logów systemowych przez sieć. W sumie, to nigdy mi to do głowy nie przyszło ale jeśli by się nad tym głębiej zastanowić, tego typu mechanizm może okazać się całkiem użyteczny. Na dobrą sprawę nie wiem jak to jest rozwiązane w debianie opartym o systemd, natomiast jeśli chodzi o inne init'y (openrc i sysvinit), to tego typu funkcjonalność można zaimplementować wykorzystując narzędzie rsyslog lub syslog-ng . W tym wpisie zostanie opisana konfiguracja debianowego serwera, na którym będzie nasłuchiwał daemon rsyslog . Dodatkowo, zostanie przedstawiona konfiguracja dwóch klientów, z których jeden będzie miał zainstalowanego syslog-ng , a drugi rsyslog . Z klientów logi zostaną przesłane do serwera. Dodatkowo, postaramy się zaszyfrować ruch przy pomocy kanału TLS.