Monitorowanie czasu serwera [ Linux / Windows ]

Dla systemów Linux
Na serwerze który ma być monitorowany instalujemy pakiet xinetd

Konfigurujemy plik /etc/xinetd.d/daytime, powinień wyglądać jak poniżej:

Następnie na serwer z którego będziemy monitorować sciągamy plik check_daytime.pl
Nadajemy uprawnienia

Obsługa jest dość oczywista, poniżej przykład

-w i -c to oczywiście dopuszczalna różnica w sekundach.

Źródłem czasu dla skryptu check_daytime.pl jest czas na serwerze z którego wykonujemy odpytanie.

Dla systemów Windows

W przypadku systmów windows sprawa jest prostsza, wystarczy nam jeden skrypt, który można pobrać stąd: check-time.ps1
Wystarczy dodać do konfiguracji NSClienta++ w pliku NSC.ini w sekcji [NRPE Handlers] poniższy wpis

Wpis oznacza że czas będzie porównywany z serwer ntp.nask.pl, maxWarn i maxError to dopuszczalne wartości w sekundach.
Oczywiście musimy jakoś wywoływać zapytanie, np modułem check_nrpe, przykład poniżej:

 

Podsumowanie

Ważne jest aby korzystać z tego samego serwera czasu do walidacji czasu jak i źródła. Tutaj napisałem jak zmienić serwer źródła czasu na systemie Windows.

Postfix – podstawowe polecenia niezbędne do obsługi kolejki

Cześć, poniżej przedstawiam Wam opis podstawowych poleceń administratora serwera postfix, niezbędnych do obsługi kolejki.

 

  • wyświetlenie zawartości kolejki
  • wyświetlenie zawartości wiadomości w kolejce – nagłowki, treść
  • usuwanie pojedyńczej wiadomości
  • usuwanie wszystkich wiadomości
  • usuwanie wiadomości co najmniej raz przeprocesowanych, ale nie wysłanych, np z powodu greylistingu
  • ponowne przeprocesowanie całej kolejki
  • ponowne przeprocesowanie konkretnej, odroczonej wiadomości

Windows, serwer ntp – zmiana adresu odpytywania

Cześć, dziś krótki wpis o tym jak zmienić defaultowy serwer ntp w systemie Windows.

Wystarczy wykonać poniższy skrypt, oczywiście pod zmienną $server należy podstawić własny serwer NTP.

 

 

Postfix jako proxy innego serwera pocztowego

Jeżeli chcesz mieć możliwość wysyłania maili z konsoli na port 25 bez autoryzacji, korzystając z konta gmail to ten wpis jest dla Ciebie. Poniżej przedstawiam instrukcję jak to osiągnąć.

 

1. Instalacja pakietów.

2. Edytujemy plik /etc/postfix/main.cf

3. Definiujemy dane do autoryzacji w pliku /etc/postfix/sasl_passwd

4. Nadajemy odpowiednie uprawnienia

5. Mapujemy

6. Generujemy plik cacert

7. Na koniec restartujemy postfixa

 

Jest to fajny sposób na przesyłanie powiadomień, gmail gwarantuje nam dobrą reputację i to że wiadomość dotrze do adresata. Oczywiście można to wykorzystać do innych zastosowań, chociażby wordpressa.

Zimbra – blokada IP po wielokrotnych próbach logowania

Dzisiejszy wpis będzie poświęcony walce ze spamerami. W fimie w której pracuję często dostajemy mailing typu „Ja być Twój admin, Ty zmienić hasło, Ty tu mieć formularz, Ty wpisać dane.”, niestety bardzo dużo ludzi przekazuje swoje hasła, przez co często prowadzimy batalię ze spamerami. Blokada samego konta już nie wystarcza, ponieważ spamerzy przełączają się na drugie aktywne konto i działają dalej.

 

W ramach walki z opisanym powyżej znajwiskiem napisałem skrypt w bashu, który za pomocą iptables blokuje konta które logują się za często, informując nas o tym mailem.

 

 

CEPH – monitorowanie statusu

Poniższe skrypty dają możliwość monitorowania

  • statusu całego systemu (ceph status)
  • ilości aktywnych OSD
  • ilości aktywnych monitorów
  • ilości aktywnych RGW
  • udostępnia nagios performance data (wykresy)

Skrypt napisałem w JavaScripcie, dlatego potrzebujemy nodejs’a. Zakładam że nagios-nrpe-server jest już skonfigurowany.

Instalację wykonujemy na serwerze na którym jest możliwośc wykonania polecenia ceph status.

 

Kroki które trzeba wykonać.

1. Należy utworzyć katalog /usr/local/nrpe/ceph/:

2. W katalogu /usr/local/nrpe/ceph/ tworzymy plik ceph_status.js, oraz uzupełniamy zmienne ALL_MON i ALL_RGW:

3. W katalogu /usr/local/nrpe/ceph/ tworzymy plik ceph_status.sh

4. W katalogu /etc/nagios/nrpe.d/ tworzymy plik check_ceph.cfg

5. Do /etc/sudoers dodajemy:

6. Restartujemy nagios-nrpe-server.

 

Przykładowy wynik:

Virtual Machine Manager – dodanie nowego systemu operacyjnego

Potrzeba dodania nowego systemu operacyjnego w moim przypadku pojawiła się wraz z wyjściem Debiana Jessie. Niestety najnowsza możliwa do wyboru wersja w Virtual Machine Managerze to Debian Wheezy. Nowe wersje systemów nie przychodzą wraz z aktualizacjami, nie znalazłem również możliwości wyklikania nowego systemu. Przypomnę że chodzi o metadane, pozwalające zachować porządek.

 

Jeżeli chcemy dodać nowy system operacyjne niezbędnę będzie wygenerowanie nowego klucza UUID. W tym przypadku z pomocą przychodzi powershell:

 

Następnie uruchamiamy Microsoft SQL Server Management Studio i na bazie Virtual Machine Managera wykonujemy poniższy skrypt:

 

Nowy system operacyjny powinien pojawić się po ponownym uruchomieniu Virtual Machine Managera.

Virtual Machine Manager – monitorowanie parametru ClusterReserveState skryptem

Dzisiejszy wpis przeznaczony jest dla osób korzystających z Virtual Machine Manager. Jeżeli zarządzacie klastrami HyperV warto jest monitorować parametr ClusterReserveState.

Parametr ten jest ścisle związanym z parametrem ClusterReserve który określa ilośc node’ów w klastrze które mogą ulec awarii, przy założeniu że maszyny wirtualne będą dalej dostępne.
ClusterReserve możymy wyświetlić poniższym poleceniem:

 


Parametr ClusterReserveState przybiera wartość „Over-committed” lub „Over” w momencie gdy node’y nie będą w stanie utrzymać wszystkich maszyn wirtualnych w ramach klastra, w przypadku awarii node’ów w ilości znajdującej się w parametrze ClusterReserve. Parametr ten pełni rolę ostrzegawczą przed ewentualną niedostępnością VM’ek.

Poniżej załączam skyrpt, którym można monitorować opisywany parametr, np przy pomocy NRPE.

 


Definicja w konfiguracji NSClienta:


Przykład odpytania modułem check_nrpe, np przez nagiosa:

Listowanie użytkowników konkretnej grupy w Active Directory skryptem

Witajcie, pierwszy wpis zacznę od czegoś bardzo prostego.
Poniższy kod listuje użytkowników dodanych do grupy „biuro” w Active Directory.

 

 

Oczywiście zamiast atrybutów GivenName, Surname, SamAccountName możemy wyświetlić inne.

Poniżej lista dostępnych:
DistinguishedName
Enabled
GivenName
Name
ObjectClass
ObjectGUID
SamAccountName
SID
Surname
UserPrincipalName
PropertyNames
AddedProperties
RemovedProperties
ModifiedProperties
PropertyCount

 

Linki z technetu:
Get-ADUser https://technet.microsoft.com/en-us/library/ee617241.aspx
Get-ADGroupMember https://technet.microsoft.com/pl-pl/library/ee617193.aspx