Bądź na bieżąco - RSS

OpenVAS – testy penetracyjne

29 września, 2019 | Brak Komentarzy | Kategoria: Linux, Porady
OpenVAS

W dzisiejszych czasach wykonywanie testów penetracyjnych jest, lub przynajmniej powinno być, elementarzem każdego administratora, który zarządza siecią z serwerami obsługiwanymi przez innych użytkowników. Doświadczenie uczy, że pomysłowość ludzka polegająca m. in. na pozostawianiu niezabezpieczonych usług, skonfigurowanych niepoprawnie aplikacji itp. jest praktycznie nieograniczona. Niestety sieć jest tak bezpieczna jak jej nasłabszy punkt. Dlatego chciałem napisać parę słów o dosyć popularnym i prostym w obsłudze narzędziu jakim jest OpenVAS.

Większość popularnych dystrybucji Linuxa posiada gotowe paczki do instalacji. W Debianie 10 Buster (jak do tej pory ostatnim) nie trzeba nawet wspomagać się dodatkowymi bibliotekami, wystarczy wydać polecenie:

apt-get install openvas -y

Po kilku lub kilkunastu minutach, w zależności od stanu łacza internetowego, cały pakiet zostanie zainstalowany i można przejść do jego konfiguracji:

openvas setup

Aplikacja rozpocznie pobieranie aktualizacji z 3 źródeł – NVT, Cert Data i SCAP Data, tak abyśmy mieli dostęp to świeżego zestawu testów, czyli tak naprawdę np. najnowszych definicji dotyczących exploitów, opisanych zagrożeń itp. Całość trochę potrwa i na koniec zostaniemy poinformowani o sukcesie (mam nadzieję) oraz co najważniejsze wyświetlone zostanie hasło dla administratora usługi. Hasło w zasadzie jest jednorazowe i należy je zmienić od razu po pierwszym zalogowaniu, tym bardziej, że nie jest wygodne do zapamiętania.

OpenVAS jest obsługiwany za pomocą przeglądarki internetowej. Domyślnie skonfigurowany jest tylko dostęp lokalny. Może to stanowić pewne utrudnienie, szczególnie w sytuacji gdy korzystamy z serwera bez środowiska graficznego. Dlatego powinniśmy sprawdzić adres IP swojego serwera:

ip a

Następnie trzeba wedytować 2 pliki konfiguracyjne:

/lib/systemd/system/greenbone-security-assistant.service
/lib/systemd/system/openvas-manager.service

i zmienić adres '127.0.0.1′ na uzyskany adres naszego serwera – w każdym miejscu, w którym występuje.

Na koniec pozostaje uruchomić ponownie usługę OpenVAS:

systemctl daemon-reload 
openvas-stop
openvas-start

Od tej chwili możemy cieszyć się w pełni funkcjonalnym skanerem sieci do celów testów penetracyjnych. Otwieramy przeglądarkę i podajemy adres:

https://adres_ip_serwera:9392

MG

Tagi: , , , ,

Wysoki uptime – jak nie restartować serwera

26 maja, 2019 | Brak Komentarzy | Kategoria: Linux, Porady
Uptime - system is up to date

Być może obecnie nie jest to specjalnie popularne, ale dawno, dawno temu jednym z parametrów świadczących o stabilności serwera i zarazem o zdolnościach jego administratora był tzw. uptime. Żyjemy w czasach gdy aktualizacje systemowe bardzo często wymuszają restart całego systemu. Niestety nie dotyczy to tylko serwerów Windows, co kiedyś było głównie ich domeną, ale również serwerów opartych o jądro Linuxa. Często tego typu działania kończą się wyzerowaniem licznika serwera i wspomniany uptime rozpoczyna zliczanie od początku.

Stare nawyki jednak pozostają na trwałe w pamięci i o ile dla Windowsów przestałem się wogóle przejmować ponownym uruchamianiem systemu, o tyle w przypadku ulubionego Debiana za każdym razem ręka drżała jeśli po aktualizacji pojawiał się komunikat o nowych bibliotekach systemowych czy o zgrozo nowej wersji jądra.

Tak było przez kilkanaście lat. Po prostu uznałem, że tak musi być i za każdym razem wolałem dla świętego spokoju zrestartować system. I nagle w zeszłym tygodniu, przy okazji serii aktualizacji serwerów, pojawiła się myśl, że być może są jakieś narzędzia, które podpowiedzą czy na pewno muszę tracić licznik uptime. Okazało się, że jak najbardziej można sobie pomóc. W końcu to Linux.

Pierwsza metoda jest niezwykle prosta. Po każdej aktualizacji należy sprawdzić czy w określonym miejscu pojawił się plik systemowy o nazwie reboot-required. Wygląda to następująco:

$ ls /var/run/reboot-required

Jeśli otrzymamy wynik pozytywny to oczywiście musimy ponownie uruchomić serwer.

Druga metoda polega na zainstalowaniu narzędzia o nazwie needrestart.

$ apt-get install needrestart

Różnica polega na tym, że w wyniku jego działania np. po ręcznym wywołaniu komendy, otrzymamy pełen raport dotyczący nie tylko zrestartowania systemu ale również usług, które należy uruchomić ze względu na nowe wersje bibliotek systemowych. Dodatkowym bonusem jest fakt, że po każdorazowej aktualizacji needrestart zostanie uruchomiony samoistnie i podpowie co należy zrobić dalej. Czyli prawie jak na Windowsach. 😉

MG

Tagi: , , ,

Hasło root – jak je odzyskać?

28 kwietnia, 2019 | Brak Komentarzy | Kategoria: Linux, Porady
Hasło root

Czasami zdarza się nam zapomnieć hasła. Nie jest to żaden duży problem jeżeli np. chodzi o konto w usłudze internetowej gdzie zazwyczaj dostępna jest opcja przypomnienia za pomocą adresu e-mail. Jednak inaczej sprawa wygląda gdy zapomnieliśmy hasła administracyjnego, a jeszcze gorzej hasła administratora dla konta root w systemie opartym o jądro Linuxa. No właśnie. Pytanie brzmi jak odzyskać hasło root?

Istnieje sporo metod pozwalających odzyskać takie hasło, a dzisiaj chciałem skupić się na systemie Debian w wersji 9. Pisze o tym ponieważ całkiem niedawno padłem ofiarą własnego gapiostwa i zakładając kilka maszyn wirtualnych pod rząd zdecydowałem, że nie będę zapisywał haseł. Oczywiście przesłałem je użytkownikom ale… niestety w kilku przypadkach z błędem. Mając alternatywę przygotowywania systemów od początku i wizję kolejnych spędzonych bezproduktywnie godzin zdecydowałem się poszperać w sieci, żeby szybko odzyskać, a w zasadzie zmienić hasła.

Po lekturze kliku artykułów w sieci, ze zdziwieniniem odkryłem, że nie będę nawet musiał uruchamiać systemów z płyty instalacyjnej, ale po kolei.

Po pierwsze powinniśmy uruchomić ponownie system i w chwili pojawnienia się menu startowego z wyborem opcji uruchomieniowych zatrzymać rozruch dowolnym klawiszem (nie może to być Enter 🙂 ). Wybierając pierwszą opcje startową należy wcisnąć e aby przejść do edycji linii wywołania jądra systemowego z opcjami.

Po drugie przechodzimy do linii zaczynającej się od słowa linux, pracowicie przesuwamy się na jej koniec i dopisujemy frazę

init=/bin/bash

Po trzecie wciskamy ctrl+x lub F10 aby uruchomić system. W ten sposób wystartujemy w trybie pojedynczego użytkownika z systemem plików zamontowanym w trybie tylko-do-odczytu. Ponieważ chcemy zmienić hasło root zdecydowanie trzeba to zmienić. Wpisujemy zatem polecenie:

mount -o remount /

Po czwarte używamy dobrze znanej komendy (mam taką nadzieję)

passwd

aby zmienić hasło root. Na koniec uruchamiamy ponownie system, jednak tym razem znamy już hasło.

MG

Tagi: , , ,

AIDE – wykrywanie zmian w systemie plików

31 marca, 2019 | Brak Komentarzy | Kategoria: Linux, Porady
AIDE

Wiele lat temu miałem wątpliwą przyjemność doświadczyć ataku na jeden z serwerów Apache, którymi się opiekowałem. Zmiany, które skutkowały przejęciem serwera i rozsyłaniem za jego pomocą spamu pojawiały się każdego dnia a ja usiłowałem bezskutecznie walczyć z nimi. Wtedy po raz pierwszy pojawiła się myśl, żeby po prostu podejrzeć co atakujący zmienia w systemie plików, tak aby można było rozszyfrować na czym polega sama metoda włamania. Ostatecznie, szczerze mówiąc, zostałem pokonany i wszystko skończyło się instalacją od początku serwisu, ale poznałem narzędzie detekcji włamiań działające na poziomie systemu plików jakim jest AIDEAdvanced Intrusion Detection Environment.

Wiele lat później ta wiedza i to narzędzie bardzo mi pomogły w powstrzymaniu jednego z ataków na inny serwer w celu uruchomienia koparki kryptowalut. Myślę, że warto jest korzystać z AIDE, w szczególności na serwerach wystawionych na publiczny dostęp. Zatem do dzieła!

Zaczynamy od instalacji pakietu AIDE, po uprzednim zaktualizowaniu systemu:

apt-get update -y && apt-get upgrade -y
apt-get install aide

Następnie wykonujemy kopie zapasową pliku konfiguracyjnego AIDE:

cp /etc/aide/aide.conf /ect/aide/aide.oryg;

Teraz możemy przejść do edycji pliku konfiguracyjnego, aby poprawić/dostosować niektóre jego ustawienia. Możemy skorzystać na przykład z edytora nano.

nano /etc/aide.conf 

W plików tym, na początek, zmieniamy absolutne minimum opcji. Z czasem, po zapoznaniu się z pełnymi możliwościami AIDE możemy pobawić się jego ustawieniami. Trzeba jednak pamiętać, że możemy w ten sposób doprowadzić do przeciążania zasobów serwera ze względu na np. długotrwałą i zbyt szczegółową analizę. Dlatego zaczynamy od absolutnego minimum dla obliczenia sumy kontrolnej:

Checksums = sha512+tiger

I tyle na pierwszy raz wystarczy 🙂 .

Po zapisaniu ustawień możemy zaincjalizować AIDE, co może trochę potrwać w zależności od mocy serwera:

aideinit

Następnie wykonujemy małą sztuczkę upewniając się, że AIDE zadziała z poziomy crona systemowego, czyli:

mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db
/etc/cron.daily/aide
cp /var/lib/aide/aide.db.new /var/lib/aide/aide.db

I to wszystko. Teraz przy odrobinie szczęścia, tzn. jeżeli wszystko poszło zgodnie z oczekiwaniami, będziemy codziennie otrzymywać raport na skrzynkę root z listą zmian w systemie plików w ciągu ostatnich 24 godzin.

MG

Tagi: , , ,

Dell R210 – instalacja sterownika sieciowego a Debian 9.6

15 grudnia, 2018 | Brak Komentarzy | Kategoria: Linux, Porady

Rackowe serwery firmy Dell, nawet te z najniższej serii jak Dell PowerEdge R210 II, wyśmienicie nadają się do tworzenia serwisów internetowych. Mam na myśli usługi takie jak WWW czy FTP. Nie są to super wydajne maszyny do obsługi milionów zgłoszeń w ciągu godziny, ale jako hosty dla małych i średnich przedsiębiorstw jak najbardziej znajdą zastosowanie.

Dell R210 instalacja Debiana

Niedawno miałem okazję przygotowywać taki komputer instalując ostatnią wersję Linuxa – Debian Stretch w wersji 9.6. Ponieważ bardzo lubię prostotę i minimalizm dlatego korzystam zazwyczaj z instalacji w wersji sieciowej, tak aby nie zaśmiecać systemu operacyjnego zbędnymi pakietami. Jak nazwa wskazuje aby wszystko udało się bez problemu potrzebna jest sieć, a w zasadzie działająca karta sieciowa, czyli prawidłowo zainstalowany sterownik. Pomimo iż Dell w serwerach R210 raczej na pewno korzysta ze standardowych rozwiązań – czytaj popularnych kart sieciowych (zbudowanych w oparciu o rozpowszechnione chipsety), to jak się okazuje społeczność Debiana tak bardzo dba o używanie otwartych sterowników, że nie zawsze wychodzi to użytkownikom na dobre.

W opisywanym przypadku serwer wyposażony jest w kartę Broadcom NetXtremeII z dwoma interfejsami sieciowymi. Instalacja pozornie przebiega bez problemów. Karty sieciowe są wykrywane poprawnie. Debian korzysta z wbudowanego sterownika (w poprzednich wersjach trzeba było dodawać zenętrzny zamknięty pakiet oprogramowania). Instalator przechodzi do automatycznej konfiguracji przez DHCP i… naszym oczom ukazuje się komunikat o błędzie. Wygląda to tak jakby winne było wszystko, włącznie z serwerem DHCP, tylko nie instalator Debiana. A prawda jest zupełnie inna.

Okazuje się, że kod sterownika dołączonego standardowo do instalatora zawiera błędy. Karta sieciowa działa, ale nie do końca. W tej sytuacji trzeba wspomóc się kilkoma sztuczkami i dodać ręcznie właściwy sterownik.

  • Po pierwsze pobieramy właściwy (zamknięty) pakiet ze strony https://packages.debian.org/stretch/firmware-bnx2.
  • Następnie za pomocą pendrive’a USB przenosimy go na przygotowywany serwer:
    • uruchamiamy instalator Debiana w wersji tekstowej
    • przechodzimy przez pierwsze kroki instalacji pamiętając, że zanim instalator zacznie wykrywać sprzęt musimy wgrać zamknięty sterownik z USB
    • gdy instalator zatrzyma się na jednym z pytań konfiguracyjnych wciskamy ALT+F2 przechodząc do konsoli tekstowej
    • tworzymy tymczasowy punkt montowania i montujemy pendrive
~$ mkdir /tmp/driver
~$ mount /dev/sda1 /tmp/driver
  • Kolejnym krokiem będzie instalacja właściwego sterownika
~$ apt-get install /tmp/driver/firmware-bnx2_xxx-x_all.deb
  • Ostatnią czynnością jest wciśnięcie kombinacji ALT+F1 co pozwoli wrócic do okienkowej wersji instalatora
  • Tym razem podczas wykrywania sprzętu zostanie zainstalowany odpowiednie oprogramowanie

Dalej wykonujemy standardowe czynności, zgodnie z typową instalacją, ciesząc się działającym połączeniem sieciowym.

MG

Tagi: , , , ,

PHP w dwóch wersjach jednocześnie a serwer Apache

18 listopada, 2018 | Możliwość komentowania PHP w dwóch wersjach jednocześnie a serwer Apache została wyłączona | Kategoria: Linux, Porady

PHP

Dla każdego administratora, który przygotowywał serwis www pojęcie LAMP nie jest obce. W skrócie oznacza, że udało nam się zainstalować trzy podstawowe serwisy tj. Apache, PHP oraz silnik bazy danych np. MySQL. Dzisiaj chciałem skupić się na obsłudze języka PHP. Obecnie ostatnią dostępną wersją jest 7.2. Domyślnie taką właśnie powinniśmy instalować. Jednak jak wiadomo rzeczywistość jest nieco bardziej skomplikowana i na pewno spotkamy się z użytkownikami, którzy z różnych względów bedą chcieli używać starszych wersji jak np. 5.6. Osobiście zalecam jak najszybsze przechodzenie do wersji najnowszych, głównie ze względu na bezpieczeństwo, trzeba jednak pamiętać o różnicach w implemetacji pomiędzy wspomnianymi wersjami, co z kolei przekłada się np. na brak niektórych funkcji, czyli na brak tak zwanej kompatybilności wstecznej. Jest to istotne przy instalacji oprogramowania webowego, które opierając się o starsze wersje PHP może nie funkcjonować w nowszym środowisku. Zatem scenariusz naszej instalacji powinien wyglądać tak, że domyślnie włączony jest PHP7 ale zawsze mamy możliwość cofnięcia wersji dla wybranych serwisów. I o tym właśnie jest dzisiejszy wpis.

Na początek załóżmy, że tradycyjnie używamy Debian Linux w wersji 9.5 Stretch. Ponieważ nie skupiamy się w tym artykule na instalacji samego Apache oraz MySQL (co z resztą jest szeroko opisywane w sieci) przejdźmy od razu do instalacji PHP. Zaczynamy od następujących poleceń:

$ apt-get install ca-certificates apt-transport-https 
$ wget -q https://packages.sury.org/php/apt.gpg -O- →
| sudo apt-key add -
$ echo "deb https://packages.sury.org/php/ stretch main" →
| sudo tee /etc/apt/sources.list.d/php.list

Aby wykorzystywać różne wersje PHP jednocześnie będziemy potrzebowali dwóch interfejsów – PHP FPM oraz FastCGI:

$ apt-get update
$ apt-get install php5.6 php5.6-fpm
$ apt-get install php7.2 php7.2-fpm

I w ten sposób zainstalujemy jednocześnie wersje 5.6 i 7.2. Oczywiście możemy tak zrobić z różnymi wydaniami, to tylko przykład.

Przechodzimy do konfiguracji samego Apache. Przede wszystkim dodajemy wspomniany interfejs:

$ apt-get install libapache2-mod-fcgid

Nastepnie włączamy następujące moduły:

$ a2enmod actions cgid alias proxy_fcgi

I to już już wszystko. Naprawdę możemy korzystać z dwóch bibliotek 🙂 . Niemniej chciałbym zasugerować włączenie domyślnie tej nanowszej. Czyli w konfiguracji głównej hosta wirtualnego (chodzi o plik 000-default.conf) dodanie następujących linijek:

<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
<FilesMatch \.php$>
SetHandler "proxy:unix:/var/run/php/php7.2-fpm.sock|fcgi://localhost/"
</FilesMatch>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Tym razem, po ponownym uruchomieniu Apache możmy być pewni, że domyślnie używamy najnowszej zainstalowanej wersji:

$ systemctl restart apache2

Jeśli jednak któryś z użytkowników serwera będzie chciał cofnąć się z różnych względów do wersji starszej to wystarczy, że w katalogu głównym swojego serwisu utworzy tekstowy plik .htaccess i doda do niego poniższą zawartość:

<FilesMatch \.php$>
SetHandler "proxy:unix:/var/run/php/php5.6-fpm.sock|fcgi://localhost/"
</FilesMatch>

To naprawdę działa.

MG

Tagi: , , , ,

Logcheck, systemd – zaśmiecone logi

21 kwietnia, 2018 | Brak Komentarzy | Kategoria: Linux, Porady

logcheck, systemdWśród administratorów Linuksa, od wielu lat prym wiedzie mały ale bardzo poręczny pakiet logcheck. Narzędzie to wykonuje niezwykle żmudną, ale bardzo potrzebną pracę, polegającą na przeszukiwaniu logów systemowych pod kątem wszelkich anomalii. Skonfigurowane według standardowych zaleceń potrafi być bardzo krzykliwe zasypując nas stosem maili informujących w wykrytych, podejrzanych odstępstwach od prawidłowej pracy systemu operacyjnego. Co prawda zwalnia nas ono z konieczności codziennego przeglądania raportów o systemie, jednak nawet najbardziej usłużne narzędzie będzie bezlitosne jeśli nie zajmiemy się filtrowaniem generowanych komunikatów.

W przypadku logcheck cała sztuka polega na odpowiednim definiowaniu filtrów w katalogach:

/etc/logcheck/ignore.d.{paranoid;server;workstation}

Zazwyczaj wystarczy korzystać ze ścieżki /etc/logcheck/ignore.d.server, wpisując w plikach testowych wyrażenia regularne. logcheck porównuje wyrażenie z wyszukanym rezultatem i w przypadku zgodności zapobiega generowaniu monitu. Budowanie wyrażeń regularnych samo w sobie jest małą sztuką. Czasami niektórzy wpisują po prostu wzorce na sztywno np.

Reloading web server: apache2.

co zapobiegnie periodycznym informacjom o restartowaniu naszego serwera www. Inni zaś potrafią zbudować naprawde wyrafinowane wyrażenia.

W wydaniu 8 Debiana o nazwie Jessie pojawił się jednak pewien błąd, który bardzo utrudnia życie. Dotyczy właśnie filtrowania za pomocą logcheck i demona systemowego systemd. Dotąd nie było żadnych problemów, jednak właśnie Jessie zaczął zasypywać nas komunikatami, które wydają się nie mieć końca. Co ważniejsze żadne filtry wpisane na sztywno nie pomagają, bowiem reguły systemd są bardzo obszerne i groźne byłoby wycięcie informacji, które mogą okazać się istotne z punktu widzienia administrowania naszym serwerem.

W tym przypadku z pomocą przychodzi strona Debian Wiki i gotowy zestaw wyrażeń przygotowanych przez jej użytkowników. Wystarczy skopiować je do pliku tekstowego we wspomnianym wcześniej katalogu i gotowe. Wszytskie aktualne reguły można pobrać, a w zasadzie skopiować pod adresem:

https://wiki.debian.org/systemd/logcheck

Zapraszam 🙂

MG

Tagi: , ,

Macierz RAID1 i problemy z GRUB2

18 lutego, 2017 | Brak Komentarzy | Kategoria: Linux, Porady

RAID1Powszechnie wiadomo, że nie jest szczególnie trudno zbudować macierz programową RAID1 używając systemu operacyjnego Debian. Przy instalacji jest to jedna z najczęściej wybieranych opcji, w celu zabezpieczenia się przed niespodziewaną utratą danych. Większość tak zwanych software’owych raidów, oferowanych przez producentów płyt głównych, opiera się właśnie o pakiet mdadm, czyli w zasadzie jest to dokładnie takie samo rozwiązanie jak w przypadku zwyczajnej instalacji. Przyznam się, że często wyłączam raid na płycie głównej, bo wolę panować do końca nad systemem, i po prostu instaluję oprogramowanie ręcznie. I wszystko było by dobrze gdyby nie jeden, nie zrozumiały przeze mnie fakt. Otóż do tej pory, przy składaniu raidu, instalator modyfikuje konfigurację bootloadera grub tylko dla pierwszego dysku (np. /dev/sda). Co oznacza, że w przypadku uszkodzenia drugiego dysku (np. /dev/sdb) twardego komputer przeżyje awarię, jednak jeżeli zostanie uszkodzony pierwszy dysk można mieć sporo kłopotów z jego uruchomieniem. Internet jest pełen takich historii, jak również mnóstwo jest porad jak zapobiegać lub usunąć ten błąd. Ja gorąco będę namawiał do przygotowania się zawczasu i skonfigurowania prawidłowo systemu na samym początku. W tym celu zaraz po instalacji systemy wystarczy skorzystać z trzech prostych poleceń (wydawanych z konta root)):

mv /boot/grub/device.map /boot/grub/device.map.old
grub-mkdevicemap
update-grub2 && grub-install /dev/sda && grub-install /dev/sd

Czasami naprawdę niewiele wystarczy, żeby zabezpieczyć się na przyszłość.

MG

Tagi: , , , ,

Debian Jessie – sshd i obsługa PAM

21 stycznia, 2017 | Brak Komentarzy | Kategoria: Linux, Porady

Debian PAMW najnowszej wersji Debiana (Jessie), nie wiedzieć skąd pojawił się błąd związany z obsługą sesji SSH. Do tej pory, wykonując typowe prace administracyjne takie jak aktualizacje, w szczególności wymianę jądra systemu na nowszą wersję, nie było żadnego problemu kiedy trzeba było wydać polecenie reboot. Serwer prawidłowo kończył sesję SSH i po krótkiej chwili można było znowu się połączyć. O ile oczywiście dał radę podnieść się po naszych zabiegach. Tym razem jest inaczej. Krótko mówiąć sesja SSH zawiesza się i bez siłowego zamknięcia terminala nie ma mowy o kontynuowaniu pracy. Związane jest to z obsługą biblioteki PAM. Żeby pozbyć się opisanej niedogodności konieczna jest instalacja dodatkowych bibliotek, które nie są dostarczane w standarowej wersji:

apt-get install libpam-systemd dbus

Na tym nie koniec. Musimy upewnić się, że nasz daemon sshd ma włączoną obsługę PAM. Tak inaczej wystarczy wydać polecenie:

 grep -i UsePAM /etc/ssh/sshd_config

i ewentualnie odkomentować w pliku /etc/ssh/sshd_config wspomnianą linię. Na koniec restartujemy sshd:

/etc/init.d/ssh restart

MG

Tagi: , , ,

Time has been changed – co oznacza ten komunikat

17 grudnia, 2016 | Brak Komentarzy | Kategoria: Linux, Porady

Time has been changedJednym z problemów w administracji serwerami (nie tylko inuxowymi) jest synchronizacja czasu. Praktycznie każda usługa systemowa może odmówić posłuszeństwa jeżeli nie zadbamy o prawidłową podstawę czasu. Z pozoru zadanie to jest dość proste. Wystarczy zainstalować pakiet ntp:

 

 

apt-get install ntp

i od razu wszystko powinno działać. Osobiście polecam takie rozwiązanie na każdym sewerze z Linuxem aby właśnie zadbać o zsynchronizowanie naszej skali czasu z serwerami źródłowymi dostępnymi w Internecie. Musimy jednak pamiętać, że oprócz zegara systemowego, każdy komputer wyposażony jest w zegar sprzętowy. Funkcjonowanie tego ostatniego, a raczej jego zła praca, na pewno będzie miała wpływ na stabilność zegara systemowego. Są to bardzo rzadkie przypadki ale zdarzają się. Np. w Debianie Jessie aby zrealizować synchornizację wykorzystywane są kolejno usługi i funkcje systemd, swdate i w konsekwencji Slow Clock Adjuster. Co w moim przypadku, przy korzystaniu z maszyny VirtualBox, i zapewne błędnej obsłudze czasu przez środowisko wirtualne, zaowocowało komunikatami systemowymi (rsyslogd):

host systemd[1]: Time has been changed

Jak wspomniałem, jest to błąd oprogramowania i aby pozbyć się powyższych komunikatów trzeba je po prostu odfiltorwać na poziomie logu systemowego. W tym celu logujemy do konsoli roota i zakładmy plik time_msgs.conf:

touch /etc/rsyslog.d/time_msgs.conf

Następnie edytujemy plik:

vi /etc/rsyslog.d/time_msgs.conf

i dodajemu linijkę:

:msg, contains, "Time has been changed" stop

Po wszystkim musimy ponownie uruchomić usługę:

/etc/init.d/rsyslog stop
/etc/init.d/rsyslog start

Tym samym pozbyliśmy się niepotrzebnych komunikatów z logów systemowych.

MG

Tagi: , , , , ,