Come configurare il firewall adattativo

4

Ho seguito questo link: Attiva il firewall adattativo nel server macOS

e ottengo questo risultato, ma non so se ho effettivamente attivato il firewall adattativo:

No ALTQ support in kernel
ALTQ related functions disabled
No ALTQ support in kernel
ALTQ related functions disabled
pf enabled
Token : 13540967312582709951
No ALTQ support in kernel
ALTQ related functions disabled

Voglio che il firewall adattativo aggiunga automaticamente utenti con diversi tentativi falliti di accesso.

Ho aggiunto con successo un certo IP alla lista nera del firewall, ma non sono riuscito a vederlo su hb_summary, non so se è previsto che mostri IP aggiunti manualmente lì. E non si aggiungeva automaticamente quando presumibilmente l'ho acceso.

C'è stato un attacco di forza bruta alla mia porta IMAP e il mio firewall adattivo non aggiungeva quell'IP nella lista nera. Solo postfix si stava occupando di esso facendo un errore fatale a causa di troppi errori e il programma terminato, ma era solo per un brevissimo periodo di tempo.

Specifiche server:

  • Server.app 3.2.2
  • Mac OS X 10.9.5
posta SipriusPT 12.01.2017 - 13:44
fonte

1 risposta

3

Dopo essermi immerso in Adaptive Firewall ancora una volta ho avuto l'impressione che l'intero sistema sia difettoso e la documentazione è un casino.

Il comando .../hb_summary a quanto pare non funziona affatto perché sembra fare affidamento sul file / private / var / db / af / blockedHosts che viene popolato da ipfw che non è attivato in 10.9 (e non funzionerebbe con l'ancora 400.AdaptiveFirewall). pf non usa affatto il file blockedHosts.

Il meglio che puoi fare è il seguente:

  • Abilita il servizio Adaptive Firewall

    sudo /Applications/Server.app/Contents/ServerRoot/usr/sbin/serverctl enable service=com.apple.afctl
    
  • Compila la lista bianca con

    sudo /Applications/Server.app/Contents/ServerRoot/usr/libexec/afctl -c
    
  • Definisci i tentativi di autenticazione errata massima (ad es. 3) e il tempo di divieto (ad esempio 60 minuti)

    sudo /Applications/Server.app/Contents/ServerRoot/usr/libexec/afctl -T 3
    sudo /Applications/Server.app/Contents/ServerRoot/usr/libexec/afctl -H 60
    

    Questo modificherà il file /Applications/Server.app/Contents/ServerRoot/private/etc/emond.d/rules/AdaptiveFirewall.plist.

    Controlla il mod con:

    sudo grep -m 2 -A 4 hostBlockThreshold /Applications/Server.app/Contents/ServerRoot/private/etc/emond.d/rules/AdaptiveFirewall.plist
    
  • Rilancia emond: sudo killall emond
  • Aggiungi malfunzionamenti noti per molto tempo:

    sudo /Applications/Server.app/Contents/ServerRoot/usr/libexec/afctl -a 104.16.35.178 -t 1000000
    

    (Si prega di essere a conoscenza del problema y2038 ). Questo modificherà il file / private / var / db / af / blacklist. Gli host aggiunti qui di solito non sopravvivono al riavvio.

  • Inizia af con sudo /Applications/Server.app/Contents/ServerRoot/usr/libexec/afctl -f
  • Per ottenere host bloccati, inserisci:

    sudo pfctl -a com.apple/400.AdaptiveFirewall -t blockedHosts -T show -vvv
    

    Per ottenere lo stato di pf, inserisci sudo pfctl -s all .

Questo è testato con tentativi di accesso ostili ssh e openssl s_client -connect imapserver_ip:993 .

Dopo un riavvio il comando .../afctl -f avvierà pf e af ma in almeno uno dei due casi non bloccherà i tentativi di accesso ostili sebbene sia annunciato nel file di registro.

I miglioramenti:

Dopo aver modificato i tasti debugLevel e logEvents nel file /etc/emond.d/emond.plist,:

    ...
    <key>debugLevel</key>
    <integer>3</integer>
    ...
    <key>logEvents</key>
    <true/>
    ...

creando il file /System/Library/LaunchDaemons/com.apple.afctl_boot.plist con il contenuto:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Disabled</key>
    <false/>
    <key>Label</key>
    <string>com.apple.afctl_boot</string>
    <key>Program</key>
    <string>/Applications/Server.app/Contents/ServerRoot/usr/libexec/afctl</string>
    <key>ProgramArguments</key>
    <array>
        <string>/Applications/Server.app/Contents/ServerRoot/usr/libexec/afctl</string>
        <string>-f</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
</dict>
</plist>

e caricandolo con:

sudo launchctl load /System/Library/LaunchDaemons/com.apple.afctl_boot.plist

sembra funzionare in modo più affidabile. L'Adaptive Firewall verrà caricato all'avvio. Non è necessario un ulteriore comando di avvio afctl!

    
risposta data 14.01.2017 - 21:37
fonte

Leggi altre domande sui tag