1 votos

PF Firewall : Cada vez que utilizo `pfctl`, obtengo errores sobre el soporte de ALTQ

Tengo una configuración de firewall un poco elaborada en la que mi servidor suele tener entre 400 y 800 direcciones ip firewalled. Se cambia de ida y vuelta entre dos diferentes pf mesas. Cada día reconstruye la lista de cortafuegos en la nueva tabla y vacía la antigua. Todo esto lo hace a través de script y funciona muy bien.

Pero el problema es el siguiente ALTQ error. Cada vez que se utiliza pfctl para cualquier cosa, lo primero que hace es emitir dos líneas de error:

No ALTQ support in kernel
ALTQ related functions disabled

El problema es que mi script se ejecuta pfctl cientos de veces al día. El registro de errores de mi script está creciendo demasiado rápido.

¿Hay alguna forma de suprimir estos mensajes de error? pfctl tiene un -q pero eso es sólo para ignorar la salida que no es de error. ¿Hay alguna manera de desactivar ALTQ en el archivo de configuración para que ni siquiera intente usarlo?

Tenga en cuenta que no sé lo que es ALTQ, pero sé que no lo necesito. Mi firewall funciona perfectamente aparte de la inundación de registros.

0 votos

Tengo que preguntar, ¿por qué está ejecutando pfctl cientos de veces al día ?

0 votos

@Allan Mantengo mi lista maestra de hosts malos en sql. Cada día a las 3 de la mañana más o menos, mi servidor reconstruye esa lista en un nuevo pf y luego vacía la tabla anterior. Así es como expiran las prohibiciones antiguas. Dependiendo de la cantidad de tráfico malo que haya habido últimamente, el número de hosts bloqueados puede ser grande.

0 votos

Con pfctl puede actualizar sólo una pequeña parte del conjunto de reglas utilizando su mecanismo de anclaje

3voto

David Anderson Puntos 2189

Probablemente me estoy perdiendo algo, porque esto no parece ser una cuestión compleja. Si usted lo que a la pantalla de estos 2 mensajes de error, a continuación, introduzca el comando dado a continuación.

pfctl >2 >(grep -v -e "No ALTQ support in kernel" -e "ALTQ related functions disabled" 1>&2)

He omitido cualquier parámetro que normalmente se produjera entre pfctl y >2 . Se podría definir una función que simplificara el uso de este comando. A continuación se muestra la implementación de una de estas funciones.

pfctl() {
    command pfctl "$@" >2 >(grep -v -e "No ALTQ support in kernel" -e "ALTQ related functions disabled" 1>&2)
}

En determinadas condiciones, la solución anterior podría dar lugar a que la salida apareciera " fuera de servicio ". Esto podría corregirse canalizando la salida a través del cat comando. En otras palabras, puede utilizar el comando que se indica a continuación.

pfctl >2 >(grep -v -e "No ALTQ support in kernel" -e "ALTQ related functions disabled" 1>&2) | cat

También se podría sustituir la función por la que se indica a continuación.

pfctl() {
    command pfctl "$@" >2 >(grep -v -e "No ALTQ support in kernel" -e "ALTQ related functions disabled" 1>&2) | cat
}

Referencias
Hoja de trucos de redirecciones Bash

1voto

Comptrol Puntos 4415

Esto significa que el kernel de MacOS carece de soporte para ALTQ. Básicamente, ALTQ son varias colas opcionales en el kernel utilizadas por pf(4) para una mejor puesta en cola de los paquetes. Todas ellas están deshabilitadas dentro del kernel y no hay ninguna opción para habilitarlas.

En su caso, podría ignorar estas líneas.

En otros sistemas operativos como OpenBSD o FreeBSD, se puede compilar el kernel con ALTQ activado (es una función de compilación)

0 votos

Entiendo todo eso. Pero para una característica opcional, uno pensaría que habría una manera de silenciar las constantes quejas al respecto. (sin tener que codificar la salida)

0 votos

Pfctl(8) no tiene esa opción. Le advierte de que no utilice la funcionalidad relacionada con ALTQ en pf.conf(5)

0voto

Andrey Puntos 101

Estoy teniendo el mismo problema que el tuyo en un shell script. Lo resolví escribiendo el comando pfctl de esta manera :

sudo pfctl -s info 2> /dev/null

Esto envía la salida de error a la papelera pero mantiene la salida estándar. He encontrado la respuesta aquí : https://www.baeldung.com/linux/silencing-bash-output

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X