Debian

Gammu-smsd, czyli wysyłanie i odbieranie SMS

Eksperymentując ostatnio z modemem Huawei E3372s-153 w wersji NON-HiLink, pomyślałem, że przydałoby się zaprojektować jakiś prosty system do odbioru i wysyłania SMS. Nie chodzi tutaj o zaprzęgnięcie do pracy oprogramowania takiego jak modem-manager-gui czy też wammu ale bardziej o przekazywanie tych wiadomości SMS, które trafiają na modem, na inny numer telefonu komórkowego. Czyli stworzenie takiego telefonicznego proxy, które te SMS będzie przekazywał dalej. Tego typu funkcjonalność można zaimplementować praktycznie w każdym linux'ie, tylko wymagane jest posiadanie odpowiednich narzędzi. W tym przypadku rozchodzi się o gammu-smsd i to o nim będzie ten wpis.

Zmiana nazwy interfejsu modemu ttyUSB0

Spora część osób posiada różnego rodzaju urządzenia do komunikacji GSM/UMTS/LTE. Mogą to być smartfony, czy też modemy USB. Zwykle po podpięciu takiego urządzenia do portu USB, system wykrywa je i oddaje nam do dyspozycji kilka interfejsów w katalogu /dev/ . W przypadku modemu Huawei E3372s-153 w wersji NON-HiLink, standardowo są dwa interfejsy: ttyUSB0 oraz ttyUSB1 . Gdy podłączamy tylko jedno urządzenie, to nie mamy problemy z tymi nazwami. Co się jednak stanie w przypadku, gdzie tych urządzeń będzie więcej i podepniemy je w losowej kolejności? Nawet jeśli będziemy wiedzieć które interfejsy są od jakich urządzeń, to i tak trzeba będzie przepisywać pliki konfiguracyjne różnych aplikacji pod kątem dostosowania tych nazw. Możemy jednak stworzyć unikalne nazwy interfejsów w oparciu o reguły udev'a i tym zajmiemy się w niniejszym wpisie.

Modem LTE HUAWEI E3372 bez usb-modeswitch

Ten artykuł, podobnie jak kilka poprzednich, powstał w oparciu o moje badania przeprowadzane nad modemem LTE HUAWEI E3372s-153 w wersji NON-HiLink. Niby rozwiązań dotyczących konfiguracji modemów pod linux'em jest pełno w sieci ale zasadniczą różnicą niżej opisanego sposobu jest kompletne pozbycie się pakietu usb-modeswitch . Dla przypomnienia, ten pakiet odpowiada za przełączanie trybu modemu. Zwykle są dostępne dwa tryby. Pierwszy z nich jest w stanie dostarczyć sterowniki (pod windows), po instalacji których modem przechodzi w drugi tryb, już ten właściwy. Na linux'ach to przełączanie jest realizowane via usb-modeswitch . I tu się nasuwa pytanie, czy ten modem faktycznie trzeba przełączać? A może istnieje sposób, który by automatycznie ustawił modem na taki tryb, który linux'y lubią najbardziej? Okazało się, że istnieje i w tym wpisie zostanie on przestawiony.

Konfiguracja modemu LTE w trybie NDIS (NCM)

Sporo modemów LTE potrafi pracować w kilku trybach. Weźmy na przykład modem Huawei E3372s-153 w wersji NON-HiLink. Standardowo obsługuje on tryb RAS (Remote Access Services) jak i NDIS (Network Driver Interface Specification). Domyślnie też włączony jest NDIS ale, by móc z tego trybu korzystać na debianie, musimy nieco inaczej skonfigurować sobie połączenie sieciowe. Gdy w grę wchodzą modemy LTE, to użytkownicy zwykli korzystać z narzędzia wvdial , który zaprzęga do pracy demona PPP i w ten sposób modem zaczyna pracować w trybie RAS, a nie NDIS. W tym wpisie skonfigurujemy sobie połączenie sieciowe na debianie w taki sposób, by wykorzystywało ono potencjał trybu NDIS.

Darmowy internet LTE od RBM (Play)

We wpisie dotyczącym konfiguracji serwerów DNS na potrzeby Aero2 wspomniałem, że ten operator daje możliwość korzystania z internetu LTE praktycznie za darmo. Trzeba tam, co prawda, złożyć wniosek i zapłacić jakieś grosze za przysłanie karty SIM ale opłat jako takich za połączenie internetowe nie ma żadnych. Uporczywy może być jedynie kod CAPTCHA, który trzeba wpisywać co 60 minut. Szukając na necie informacji na temat darmowego internetu LTE doszukałem się tego oto wpisu. Jest tam przedstawiony sposób na włączenie bezpłatnej usługi internetu LTE u operatora RBM (Play). Z początku wydawało mi się to niezbyt wiarygodne, by tego typu oferta była w ogóle dostępna ale okazało się jednak, że nie ma tutaj żadnego haczyka i ten internet LTE faktycznie można włączyć i korzystać z niego za free. W tym wpisie postaramy się skonfigurować Debiana właśnie na potrzeby tej usługi.

Rkhunter jako ochrona przed rootkit'ami

Rootkit to takie ustrojstwo, które jest w stanie przebywać niepostrzeżenie w naszym systemie przez bardzo długi czas. Dzieje się tak ze względu na uśpioną czujność administratora. Teoretycznie wszystko jest w należytym porządku, nie widać żadnych złowrogich procesów, a szereg narzędzi, które mają przeciwdziałać rootkit'om, nie zwraca żadnych ostrzeżeń o ewentualnych próbach naruszenia bezpieczeństwa systemu operacyjnego. Taki rootkit jest w stanie całkowicie przejąc kontrolę nad linux'em i np. może decydować o tym jakie procesy zostaną nam pokazane, a jakie ukryte. W świetle takiego zagrożenia, linux'y wypracowały sobie pewne mechanizmy obronne. W tym wpisie przebadamy sobie jeden z projektów, tj. rkhunter.

Implementacja protokołu SSL/TLS w vsftpd

Kwestię konfiguracji serwera FTP na debianie w oparciu o vsftpd już przerabialiśmy. Została nam jeszcze do omówienia implementacja protokołu SSL/TLS. FTP nie jest bezpiecznym protokołem i wszelkie dane logowania są przesyłane przez sieć otwartym tekstem. W przypadku, gdy stawiamy lokalny serwer FTP w zaufanej sieci lub też będziemy korzystać jedynie z dostępu anonimowego, to raczej nie potrzebujemy szyfrować danych. Trzeba pamiętać, że każde szyfrowanie dość mocno obciąża procesor, który może stanowić wąskie gardło przy przesyle danych. W tym wpisie założenie jest takie, że bezpieczeństwo danych, które będziemy przesyłać za pomocą protokołu FTP, jest rzeczą najważniejszą i dlatego wdrożyć szyfrowanie.

Konfiguracja vsftpd w Debianie

Serwery FTP umożliwiają przesyłanie plików przez sieć za pomocą protokołu TCP. Raczej wszyscy mieliśmy z nimi już do czynienia. Może niekoniecznie zarządzaliśmy takimi serwerami ale na pewno zdarzyło nam się pobierać pliki za ich pomocą. W tym wpisie jednak postaramy się skonfigurować taki serwer FTP w oparciu o oprogramowanie vsftpd.

Domyślne aplikacje w oparciu o typy plików (MIME)

Pełne środowiska graficzne zwykle oferują odpowiednie narzędzia, które mogą posłużyć skonfigurowaniu domyślnych aplikacji. Jesteśmy zatem w stanie bardzo prosto przypisać szereg typów MIME do odpowiednich programów. Wobec takiego stanu rzeczy, przy próbie uruchomienia jakiegoś pliku, ten zostanie odpalony przez konkretną aplikację. Niemniej jednak, jeśli chodzi o środowiska graficzne oparte o menadżery okien, np. Openbox, to na dobrą sprawę mamy bardzo małe pole manewru. Niezależnie czy korzystamy z GNOME, KDE, XFCE, MATE czy też Openbox'a, wszystkie z nich wykorzystują dokładnie ten sam mechanizm wiązania aplikacji z typami plików. Możemy zatem ominąć te wszystkie graficzne nakładki i ręcznie skonfigurować sobie typy MIME, tak by działały niezależnie od wykorzystywanego środowiska graficznego. W tym wpisie spróbujemy przyjrzeć się nieco bliżej konfiguracji tego całego mechanizmu.

Konfiguracja serwera dźwięku PulseAudio

Wielu użytkowników linux'a nie przepada zbytnio za PulseAudio, bo ten z jakiegoś powodu sprawia u nich same kłopoty. U mnie ten serwer dźwięku działa przyzwoicie i zwykle nie ma z nim żadnych problemów. Obecnie ten projekt jest już na tyle dojrzały, że te większe środowiska graficzne zwyczajnie polegają na nim w zależnościach. Jeśli jednak instalowaliśmy debiana za pomocą narzędzia debootstrap i konfigurowaliśmy osobno graficzną sesję Xserver'a, menadżer logowania LightDM czy też menadżer okien Openbox, to raczej zależy nam na minimalnym środowisku, które może się zwyczajnie obejść bez PulseAudio. Niemniej jednak, PulseAudio ma kilka ciekawych bajerów, których ALSA nie posiada. By się nie rozpisywać zbytnio, mogę wspomnieć choćby o możliwościprzesyłania dźwięku przez sieć, czy też o takim ficzerze jak normalizacja głośności. Są to głównie zabawki dla nieco bardziej zaawansowanych użytkowników i gdy ich nie potrzebujemy, to serwer dźwięku nam się raczej do niczego nie przyda. Warto jednak się zaznajomić z tym nieco bardziej zaawansowanym kawałkiem oprogramowania i w tym wpisie postaramy się nieco omówić instalację i konfigurację tego serwera dźwięku.