TLSv1.0 lub 1.1 mogą posiadać sporo podatności ułatwiających podszycie się pod naszą stronę www. Zalecane jest włączenie TLSv1.2 i 1.3. Jeśli posiadamy zainstalowany dodatkowo certyfikat LetsEncrypt robimy jak poniżej:

nano /etc/letsencrypt/options-ssl-apache.conf

i tam wpisujemy jak poniżej:

SSLProtocol all -SSLv2 -SSLv3 -TLSv1 -TLSv1.1

Na końcu wykonujemy restart Apache2 (warto mieć najnowszą wersję Apache2, gdyż wcześniejsze mogą nie obsługiwać protokołu TLSv1.3):

systemctl restart apache2

Poprawność naszych ustawień możemy sprawdzić dwojako:

  1. poprzez nmap następującą komendą:
    nmap –script ssl-enum-ciphers -p 443 nazwanaszejstrony.pl
  2. poprzez stronę https://www.ssllabs.com/ssltest/

Wersja Zabbix`a 6.2 nie wspiera PHP 8.2. Dlatego należy wykonać upgrade do wyższej wersji samego Zabbix`a oraz PHP. Zacznijmy od PHP:

  1. Sprawdźmy najpierw wersję samego PHP:
    php -V oraz zależności: dpkg -l | grep php | tee paczki.txt

    Jeśli wersja jest niższa niż 8.2, możemy przystąpić do podniesienia:
    apt install apt-transport-https lsb-release ca-certificates wget -y

    wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg

    sh -c ‘echo “deb https://packages.sury.org/php/ $(lsb_release -sc) main” > /etc/apt/sources.list.d/php.list’

    apt update

    apt install php8.2 php8.2-cli php8.2-{bz2,curl,mbstring,intl}

    apt install php8.2-fpm


    Po instalacji możemy sprawdzić naszą najnowszą wersję PHP, komendą:
    php -V

    Następnie włączamy wersję PHP v. 8.2:

    a2enconf php8.2
    a2enmod php8.2


    Restartujemy apache2:
    systemctl restart apache2
  2. Podniesienie wersji Zabbix z 6.2 do 6.4
    Zatrzymujemy Zabbix:
    systemctl stop zabbix-server oraz pochodne jeśli były zainstalowane (zabbix agent, zabbix proxy)

    Tworzymy backup naszych poprzednich ustawień:
    mkdir /opt/zabbix-backup/

    cp /etc/zabbix/zabbix_server.conf /opt/zabbix-backup/

    cp /etc/apache2/conf-enabled/zabbix.conf /opt/zabbix-backup/

    cp -R /usr/share/zabbix/ /opt/zabbix-backup

    Usuwamy stare repozytorium zabbix.list:

    rm -Rf /etc/apt/sources.list.d/zabbix.list

    Pobieramy i instalujemy (upgrade) nowe paczki Zabbix 6.4:

    wget https://repo.zabbix.com/zabbix/6.4/debian/pool/main/z/zabbix-release/zabbix-release_6.4-1+debian11_all.deb

    dpkg -i zabbix-release_6.4-1+debian11_all.deb

    apt-update

    apt-get install –only-upgrade zabbix-server-mysql zabbix-frontend-php zabbix-agent

    apt-get install zabbix-apache-conf

    mysql -u root -p

    grant all privileges on zabbix.* to zabbix@localhost;

    set global log_bin_trust_function_creators = 1;

    nano /etc/zabbix/zabbix_server.conf i szukamy wpisu:
    DBPassword=wpisujemy hasło do bazy zabbix w mysql

    Sprawdzamy jeszcze raz czy nie mamy nic do updateu:

    apt update
    apt upgrade
    cat /var/log/zabbix/zabbix_server.log | grep database


    Ustawiamy w mysql jeszcze parametr:

    mysql -u root -p
    set global log_bin_trust_function_creators = 0;


    Startujemy Zabbix
    6.4:

    systemctl start zabbix-server
    systemctl start zabbix-agent
  3. Zabbix podniesiony do wersji 6.4




Tworząc nowy zasób w GLPI poprzez wtyczkę Generic Object (Zarządzanie obiektami) w menu Zasoby nie mamy dodanej ikonki. Wystarczy wyedytować plik object.class.php dodając następujące wpisy:

Następnie w Zarządzanie obiektami -> wybieramy nasz obiekt -> w polu Komentarz dodajemy naszą ikonkę, np. fa-fw ti ti-volume

Efekt końcowy wygląda jak poniżej:

Zasób Audio z dodaną ikonką

GLPI to bardzo dobre narzędzie do inwentaryzacji sprzętu komputerowego, sieciowego, itp. Posiada również wbudowany system helpdesku, rezerwacji sprzętu oraz wiele innych przydatnych funkcji. W celu usprawnienia logowania, możemy skorzystać ze środowiska Azure AD. Konfiguracja jest następująca:

  1. Ściągamy wtyczkę ze strony https://github.com/edgardmessias/glpi-singlesignon i dodajemy ją na serwerze do glpi/plugins. Rozpakowujemy ją do katalogu singlesignon
  2. Na stronie www naszego GLPI wchodzimy w Ustawienia -> Wtyczki i tam włączamy Single Sign-ON
  3. Pojawi nam się opcja w Ustawienia -> Single Sign-On. Klikamy na Dodaj i uzupełniamy następujące pola: Nazwa, SSO TYPE wybieramy Azure, Client ID i Client Secret
  4. Pola Client ID i Client Secret generujemy w portalu Azure AD https://portal.azure.com/ w której to przechodzimy do zakładki: Rejestracje aplikacji.
  5. Klikamy na Nowa Rejestracja i uzupełniamy pola: Nazwa, Obsługiwane typy kont oraz Identyfikator Url przekierowania
  6. Wygeneruje nam się Identyfikator aplikacji (klienta) oraz dodatkowo musimy wejść w Poświadczenia klienta i wygenerować Nowy klucz tajny klienta
  7. Powyższe wklejamy do GLPI w zakładce Client ID i Client Secret

Posiadając dwie karty sieciowe (np. WIFI i LAN) na komputerze z systemem Windows 10/11 możemy mieć dwa wyjścia na świat. Jeżeli chcielibyśmy aby osiągnąć docelową sieć poprzez np. WIFI potrzebujemy dodać routing. Możemy to zrobić w następujący sposób:

uruchamiamy cmd jako administrator i dodajemy:

route -p adres_ip_sieci_docelowej (np. 212.77.98.9) maska_sieci_docelowej (np. 255.255.255.255) brama_naszej_sieci_wifi lub lan:

route -p add 212.77.98.9 mask 255.255.255.255 192.168.1.1

Podczas aktualizacji Ubuntu, dostałem informację iż partycja /boot jest zbyt mała do aktualizacji. Wystarczy usunąć stary kernel następującą komendą:

dpkg -l linux-* | awk '/^ii/{ print $2}' | grep -v -e `uname -r | cut -f1,2 -d"-"`| grep -e [0-9] | grep -E "(image|headers)" | xargs sudo apt-get -y purge

Następnie uruchamiamy aktualizację naszego Ubuntu do wyższej wersji:

do-release-upgrade

W celu sprawdzenia daty utworzenia folderu (pliku) w systemach Debian/Ubuntu możemy sprawdzić to następująco:

ls -li #szukamy inode pliku

df -h #sprawdzamy nasz folder np. /home na którym dysku się znajduje np. /dev/sda4

debugfs -R ‘stat <nasz numer inode>’ /dev/sda4 #korzystamy z debugfs

pozycja crtime pokaże nam datę utworzenia folderu

W pracy podczas udostępniania drukarki po USB dostałem komunikat z błędem 0x0000011b. W moim przypadku pomogło wyłączenie szyfrowania RPC, w sposób jak poniżej:

  1. wchodzimy jako administrator do pliku edycji rejestru: regedit
  2. wyszukujemy klucz HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Print
  3. W kluczu Print dodajemy nową wartość DWORD32 i nazywamy ją: RpcAuthnLevelPrivacyEnabled
  4. Powyższe robimy dla serwera wydruku i klienta
  5. Restartujemy i następnie możemy dodać ponownie drukarkę bez błędu

Szyfrowanie komunikacji pomiędzy serwerem a agentem Zabbixa nie jest skomplikowane. Poniżej przykład od instalacji agenta po włączenie szyfrowania:

wget https://repo.zabbix.com/zabbix/6.2/debian/pool/main/z/zabbix-release/zabbix-release_6.2-4%2Bdebian11_all.deb

dpkg -i zabbix-release_6.2-4+debian11_all.deb

apt update 

apt install zabbix-agent

Włączenie szyfrowania – konfigurujemy plik /etc/zabbix/zabbix_agentd.conf

Server x.x.x.x #podajemy adres serwera Zabbix
ServerActive=x.x.x.x #podajemy adres serwera Zabbix
Hostname=abc #gdzie abc to nazwa naszego serwera lokalnego
TLSConnect=psk #zmieniamy z unencrypted na psk
TLSAccept=psk #zmieniamy z unencrypted na psk
TLSPSKIdentity=abc #gdzie abc to nazwa naszego serwera lokalnego
TLSPSKFile=/etc/zabbix/secret.psk 



Następnie w katalogu /etc/zabbix generujemy plik o nazwie secret.psk

openssl rand -hex 32 #generujemy wartość klucza, który potem wklejamy do pliku secret.psk

nano secret.psk #tam wklejamy klucz który wygenerowaliśmy i zapisujemy plik

systemctl restart zabbix-agent #restart agenta
systemctl enable zabbix-agent #włączanie agenta podczas restartu serwera

Dalej przechodzimy do naszego serwera Zabbix i tam w Konfiguracja -> Hosty dodajemy nasz serwer