Después de bucear en la Adaptación del Firewall , una vez más, tengo la impresión de que todo el sistema es imperfecto y la documentación es un lío.
El comando .../hb_summary
al parecer no funciona en todos, porque parece que se basan en el archivo /private/var/db/af/blockedHosts llegar pobladas
por ipfw que no se activa en 10.9 (y no trabajar con el 400.AdaptiveFirewall de anclaje). pf no utiliza el archivo blockedHosts a todos.
Lo mejor que puedes hacer es la siguiente:
-
Permitir la Adaptación del servicio de Firewall
sudo /Applications/Server.app/Contents/ServerRoot/usr/sbin/serverctl enable service=com.apple.afctl
-
Rellenar la lista blanca con
sudo /Applications/Server.app/Contents/ServerRoot/usr/libexec/afctl -c
-
Definir max mal auth intentos (por ejemplo, 3) y la prohibición de tiempo (por ejemplo, 60 minutos)
sudo /Applications/Server.app/Contents/ServerRoot/usr/libexec/afctl -T 3
sudo /Applications/Server.app/Contents/ServerRoot/usr/libexec/afctl -H 60
Esto va a modificar el archivo /Aplicaciones/Servidor.app/Contents/ServerRoot/private/etc/emond.d/reglas/AdaptiveFirewall.plist.
Compruebe el mod con:
sudo grep -m 2 -A 4 hostBlockThreshold /Applications/Server.app/Contents/ServerRoot/private/etc/emond.d/rules/AdaptiveFirewall.plist
- Relanzamiento de emond:
sudo killall emond
-
Agregar conocido hosts malos por un largo tiempo:
sudo /Applications/Server.app/Contents/ServerRoot/usr/libexec/afctl -a 104.16.35.178 -t 1000000
(Por favor, ser conscientes de la y2038 problema).
Esto va a modificar el archivo /private/var/db/af/blacklist. Aloja aquí no suelen sobrevivir a un reinicio.
- Af de inicio con
sudo /Applications/Server.app/Contents/ServerRoot/usr/libexec/afctl -f
-
Bloqueado hosts entrar en:
sudo pfctl -a com.apple/400.AdaptiveFirewall -t blockedHosts -T show -vvv
Para obtener pf del estado escriba sudo pfctl -s all
.
Esto es probado con hostil ssh
y openssl s_client -connect imapserver_ip:993
intentos de inicio de sesión.
Después de un reinicio de la .../afctl -f
comando iniciará pf y af pero, al menos en uno de dos casos de que no bloquee hostil intentos de inicio de sesión a pesar de que anunció que en el archivo de registro.
Mejoras:
Después de la modificación de las claves debugLevel y logEvents en el archivo /etc/emond.d/emond.plist,:
...
<key>debugLevel</key>
<integer>3</integer>
...
<key>logEvents</key>
<true/>
...
crear el archivo /System/Library/LaunchDaemons/com.apple.afctl_boot.plist con el contenido:
<?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>
y lo carga con:
sudo launchctl load /System/Library/LaunchDaemons/com.apple.afctl_boot.plist
parece que funciona de manera más confiable. La Adaptación del Firewall será cargado en el momento de arranque. No hay más afctl lanzamiento de comandos es necesario!