Fortigate – Poziom logowania inspekcji ssl

Aby łatwiej diagnozować problemy z głęboką inspekcją i inspekcją certyfikatów możemy w profilach inspekcji włączyć opcje  ssl-negotiation-log oraz ssl-handshake-log.

$ config firewall ssl-ssh-profile
$ edit <nazwa_profilu>
$ set ssl-anomalies-log enable
$ set ssl-exemptions-log enable
$ set ssl-negotiation-log enable
$ set ssl-server-cert-log enable
$ next
$ end

Aby widzieć która wersja TLS została użyta do połączenia, włączamy widoczność kolumny „TLS Version” w „Log & Raport > SSL”. Możemy włączyć też kolumnę Common Name Identifier i Hostname.

FortiGate – Czas trwania bezczynnej sesji

Konfiguracja limity czasu trwania, bezczynnej sesji.

TTL sesji to czas, przez jaki sesja TCP, UDP lub SCTP może być bezczynna, zanim zostanie porzucona przez jednostkę FortiGate.

config system session-ttl
    config port
        edit 1
            set protocol 6
            set timeout 1000
            set start-port 444
            set end-port 444
        next
    end
end

timeout – 1 to 604800 sec. Domyślnie 300.

vSphere – problem z konsolidacją

vSphere czasem wyświetla komunikat o konieczności konsolidacji dysku. Może się zdarzyć, że wykonanie konsolidacji nie daje efektu. Mimo, że na liście snapshotów nie ma, żadnych pozycji, to w katalogu VM istnieją pliki *0000x.vmdk, oraz w konfiguracji dysków maszyny widzimy, że maszyna używa pliku *0000x.vmdk.

Możliwe rozwiązania:

  1. Tworzymy snapshot z opcją „Quiesce guest file system”, po utworzeniu usuwamy wszystkie snapshoty „Delete all”. Sprawdzamy w konfiguracji VM czy nadal jest używany dysk *0000x.vmdk
  2. Możemy również spróbować migrować maszynę wirtualną do innego datastorage.
  3. Jeżeli problem nadal istnieje to zatrzymujemy VM, tworzymy kopię maszyny „Clone > Clone to virtual machine”. Następnie uruchamiamy skopiowaną maszynę, sprawdzamy czy działa prawidłowo, i usuwamy oryginalną VM. ESXi bez vCenter nie pozwala klonować maszyn VM. Musimy w cli użyć polecenia „vmkfstools -i” do zrobienia kopii virtualnego dysku z którym mamy problem.

Iperf – Test przepustowości

Badanie przepustowości sieci pomiędzy dwoma linuksami.

Testowanie TCP

# Linux 1 - uruchomienie serwera ipref
$ iperf -s

# Linux 2 - uruchomienie klienta ipref
$ iperf -c <IP serwera ipref>

Testowanie UDP

# Linux 1 - uruchomienie serwera ipref
$ iperf -s -u

# Linux 2 - uruchomienie klienta ipref
$ iperf -c <IP serwera ipref> -u -b 1000M

Fortigate – diagnozowanie problemów SSL VPN

$ diagnose debug disable 

$ diagnose debug reset 

$ diagnose debug console timestamp enable

$ diagnose vpn ssl debug-filter src-addr4 < Source ip>

$ diagnose debug application sslvpn -1 

$ diagnose debug application fnbamd -1 

$ diagnose debug enable 


# Po zakończeniu

$ post log collection disable the debug

$ diagnose debug disable 

$ diagnose debug reset 

Debian – Instalacja .Net Core 6 SDK

Instalacja repozytoriów

$ wget https://packages.microsoft.com/config/debian/11/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
$ sudo dpkg -i packages-microsoft-prod.deb
$ rm packages-microsoft-prod.deb

Instalacja .Net Core 6 SDK

$ sudo apt update
$ sudo apt install dotnet-sdk-6.0

Możemy zainstalować samo środowisko uruchomieniowe, bez SDK

$ sudo apt update
$ sudo apt install dotnet-runtime-6.0

Na podstawie: https://docs.microsoft.com/pl-pl/dotnet/core/install/linux-debian

Fortigate – Firewall dla połączeń przychodzących

Firewall Policy filtruje ruch przechodzący przez Fortigate np. z sieci Lan do Wan i z Wan do Lan. Jeżeli chcemy sprawdzać ruch adresowany do Fortigate np: połączenia ipsec, musimy skonfigurować Local in policy

Przykład pozwalający na połączenia ipsec tylko ze znanego nam adresu Oddzial.

Tworzymy obiekt adresu naszego hosta Oddzial.

config firewall address
    edit "Oddzial"
         set subnet X.X.X.X 255.255.255.255
    next

Tworzymy obiekt adresu naszego WAN IP

edit "WAN"
    set subnet Y.Y.Y.Y 255.255.255.255
next
end

Przygotowujemy dwie polityki lokalne. Pierwsza zezwoli na połączenia przychodzące ipsec z adresu IP „Oddzial”, druga zablokuje pozostałe adresy.

config firewall local-in-policy
    edit 1
        set intf "wan"
        set srcaddr "Oddzial"
        set dstaddr "WAN"
        set action accept
        set service "IKE"
        set schedule "always"
    next
    edit 2
        set intf "wan"
        set srcaddr "all"
        set dstaddr "WAN"
        set action deny
        set service "IKE"
        set schedule "always"
    next
end

Fortigate – Routing asymetryczny

W sieciach, w których jest więcej niż jeden router może się zdarzyć, że niektóre hosty nie mogą połączyć się z innymi sieciami. Taki problem występuje gdy pakiety żądań i odpowiedzi podążają różnymi ścieżkami i nie przechodzą przez ten sam router. To zachowanie jest znane jako routing asymetryczny. Jeśli FortiGate odbiera pakiety odpowiedzi, ale nie żądania, (lub żądania ale nie odpowiedzi) domyślnie blokuje pakiety jako nieprawidłowe.

Jeśli z jakiegoś powodu wymagane jest, aby jednostka FortiGate umożliwiała routing asymetryczny, można ją skonfigurować za pomocą następujących poleceń CLI na VDOM:

config vdom
    edit <vdom_name>
    config system settings
        set asymroute enable
    end
end

Takie ustawienie nie jest jednak zalecane gdyż Fortigate nie może w pełni używać filtrów zapory.

PostgreSQL – Debian instalacja

Instalacja serwera z repozytoriów PostgreSQL

# Przygotowanie pliku z repozytorium
$ sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'

# Import klucza repozytorium
$ wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -


$ sudo apt-get update


# Instalacja najnowszej wersji posgresql
$ sudo apt-get -y install postgresql

Instalacja pgAdmin

# Przygotowanie pliku z repozytorium
$ sudo sh -c 'echo "deb https://ftp.postgresql.org/pub/pgadmin/pgadmin4/apt/$(lsb_release -cs) pgadmin4 main" > /etc/apt/sources.list.d/pgadmin4.list && apt update'

# Import klucza repozytorium
$ sudo curl https://www.pgadmin.org/static/packages_pgadmin_org.pub | sudo apt-key add

# Instalacja pgAdmin w wersji web
$ sudo apt install pgadmin4-web 

# Konfiguracja
$ sudo /usr/pgadmin4/bin/setup-web.sh

Aby uruchomić pgAdmin w przeglądarce wpisujemy adres: http://<adres_ip_do serwera_pgAdmin>/pgadmin4

Dodajemy bazę danych i użytkownika.

$ sudo postgres
$ psql
postgres=# create database mojaBaza;
postgres=# create user witek with encrypted password '123456';
postgres=# grant all privileges on database mojaBaza to witek;