Podemos ver en los registros de nginx que hay una dirección IP que hace cosas desagradables.
¿Cómo podemos bloquearlo con un pfcomando y luego permanentemente con el /etc/pf.log? ¿Cómo podemos bloquear un x.x.x.x/24para esa IP? Es un ejemplo: 1.2.3.4
ACTUALIZACIÓN: no, parece que OpenBSD no tiene el archivo permitir / denegar en / etc. Y AFAIK, el mejor consejo para bloquear direcciones IP abusivas es usar pf.
# cd /etc 
# ls -la|egrep -i 'deny|allow'
# uname -a
OpenBSD foo.com 5.4 GENERIC.MP#0 amd64
# 
                
Respuestas:
La mejor manera de hacer esto es definir una tabla y crear una regla para bloquear los hosts, en
pf.conf:Y luego agregue / elimine dinámicamente direcciones IP:
Otros comandos de 'tabla' incluyen
flush(eliminar todo)replaceyshow. Miraman pfctlpara más.Si desea una lista más permanente, puede guardarla en uno (o más) archivos. En
pf.conf:También puede agregar nombres de host en lugar de direcciones IP. Consulte la sección "Tablas" de
man pf.confyman pfctl.Nota : Los ejemplos anteriores suponen que la interfaz de Internet es
fxp0, cambie según su configuración. Además, tenga en cuenta que las normas enpf.confson evaluados de forma secuencial y parablockopassreglas es la última regla de coincidencia que se aplica. Con este conjunto de reglasy después de agregar 1.2.3.4 y 192.168.0.10 a la
badhoststablatodo el tráfico desde y 1.2.3.4 192.168.0.10 será bloqueada pero el segundo anfitrión será capaz de hacer conexiones al puerto otros equipos de los 80 debido a que los
passpartidos de reglas y anula lablockregla.fuente
block in from <badhosts>. No necesita especificar la interfaz o lato anyparte.Según otras respuestas, no está claro que necesite crear una tabla real de los hostias que está tratando de bloquear.
Esto va en el archivo pf.conf, por ejemplo, tengo dos archivos badguys, 1 y 2 badguys1 es para aquellos que van y vienen, y badguys2 es para listas negras permanentes.
Entonces, si necesita agregar una dirección IP de alguien que es una molestia por un período de tiempo, agréguelo a badguys1.
Ahora, en su archivo pf.conf tiene esto. En mi ejemplo, uso en1, porque esa es mi interfaz WiFi. Ajústelo a la interfaz en la que se encuentre su red.
Ahora puede agregar direcciones temporales a badguys1. (NO badhosts, ese es un nombre para las tablas)
Aunque dice 1 tabla creada, en realidad agrega la ip, no crea una nueva tabla. Ahora, si buscas en badguys1, verás la nueva IP.
fuente
Obtuve esta información del sitio web y perdóname por mi mal conocimiento de
OpenBSD, pero aquí está. Echa un vistazo a esta URL . Según esto, establece que para bloquear una IP usted:echo '123.123.123.123' >> /etc/pf.blocked.ip.confEntonces reiniciarías el firewall:
O, para agregar sin reiniciar el tipo de firewall:
pfctl -t blockedips -T add 111.222.333.444Ahora para verificar si se ha agregado, escriba:
pfctl -t blockedips -T showActualización: Tal vez esto ayudaría.
Abra el siguiente archivo en vi:
vi /etc/pf.confAgregue la siguiente línea de código:
table <blockedips> persist file "/etc/pf.blocked.ip.conf" ext_if="bge0" # interface connected to internetDespués de ese punto, intentaría reiniciar el firewall y confirmar que la IP está bloqueada escribiendo:
fuente
pfctl -f /etc/pf.confes suficiente.man pf.conf, se sorprenderá de lo buenas que son las páginas de manual de OpenBSD. Además, lospf.confarchivos deben leerse como un todo (el orden en el que se colocan las reglas es crucial), por lo que copiar y pegar líneas individuales suele ser una mala idea. Cree el archivo y latableregla (eso es correcto), pero o bien comparte supf.confarchivo completo o depende de usted averiguar lablockregla adecuada y su ubicación en el archivo.ext_if="bge0"macro y por qué no tiene una regla de bloqueo , criticaré su respuesta, porque está incompleta (es decir, no es una respuesta adecuada), independientemente del esfuerzo que le dedique. Además, mi comentario sobre los CÓMO se abordó en el OP, no usted (disculpas, debería haberlo dejado claro).