Netgate Discussion Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Search
    • Register
    • Login

    Auditorias de acceso seguridad Pfsense

    Scheduled Pinned Locked Moved Español
    29 Posts 3 Posters 7.4k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      tsis
      last edited by

      Buenas tardes

      hay alguna opcion que mande notificaciones cuando tengamos intentos de accesos no autorizados al firewall?.
      hasta ahora uso las notificaciones via mail para los reportes diarios mes etc

      un saludo.

      1 Reply Last reply Reply Quote 0
      • J
        javcasta
        last edited by

        Hola.

        Una posible solución es desde consola (shell) crear un cron cada x horas ( crontab -e ) que ejecute un envio de mail (se usará el email configurado en System: Advanced: Notifications ) filtrando en /var/log/filter.log lo que desees.

        Por ejemplo para obtener los bloqueos al puerto 443 (https) a la ip lan de pfsense, por ejemplo: 192.168.1.254, y que lo envie por mail.

        clog /var/log/filter.log | grep 192.168.1.254 | grep ,443 | grep block | mail.php -s"accesos a pfSense bloqueados"
        

        Salu2

        Javier Castañón
        Técnico de comunicaciones, soporte y sistemas.

        Mi web: https://javcasta.com/

        Soporte scripting/pfSense https://javcasta.com/soporte/

        1 Reply Last reply Reply Quote 0
        • J
          javcasta
          last edited by

          Hola.

          Sobre la idea que comentaba anteriormente, casi lo mejor es instalar el paquete Cron

          Definir una tarea, por ejemplo cada hora (en el minuto 30)

          Y poner el comando o la ruta de un script que haga lo que se quiera: En este caso mandar por email los bloqueos a un puerto de una ip

          Lógicamente hay que tener definido un email en System: Advanced: Notifications

          Salu2

          ==== añadido ===

          Lo ideal seria un script que comprobara si en la última hora ha habido el bloqueo al acceso gui y si lo hubiere enviar el mail (para no aburrirse recibiendo correos cada hora :) )

          Javier Castañón
          Técnico de comunicaciones, soporte y sistemas.

          Mi web: https://javcasta.com/

          Soporte scripting/pfSense https://javcasta.com/soporte/

          1 Reply Last reply Reply Quote 0
          • J
            javcasta
            last edited by

            Hola.

            Me he animado y he implementado un script, llamado audita.sh

            #!/bin/bash
            ################################################
            # alerta de intento de acceso a GUI de pfSense #
            # by @javcasta - Javier Castañón - 2016        #
            # --------- https://javcasta.com --------------#
            #       dar permiso al script:                 #
            #       chmod +777 /scripts/audita.sh           #
            ################################################
            IP="192.168.1.254"
            PORT="80"
            #Feb 28 00:09:00
            MES=`date +%b`
            DIA=`date +%d`
            HORA=`date +%H`
            SALIDA=`clog /var/log/filter.log | grep "$IP" | grep ",$PORT," | grep "block" | grep "$MES $DIA $HORA"`
            #SALIDA=`clog /var/log/filter.log | grep "$IP" | grep ",$PORT,"`
            echo "Auditando accesos a $IP via puerto $PORT en $MES $DIA $HORA"
            echo $SALIDA > /tmp/milog.txt
            if [ ! -z "$SALIDA" ]; then
            	"$SALIDA" | mail.php -s"accesos a pfSense bloqueados"
              echo .
              echo "Enviando mail"
            fi
            

            Para personalizarlo, solo deberia cambiarse el valor de la variable IP y PORT
            Se pone en una carpeta /scripts (por ejemplo)
            y se le da permisos:

            # chmod 777 /scripts/audita.sh
            

            Y se ejecuta

            # sh /scripts/audita.sh
            

            Solo quedaria definir un cron que cada hora ejecutara (sh /scripts/audita.sh )

            Salu2

            Javier Castañón
            Técnico de comunicaciones, soporte y sistemas.

            Mi web: https://javcasta.com/

            Soporte scripting/pfSense https://javcasta.com/soporte/

            1 Reply Last reply Reply Quote 0
            • T
              tsis
              last edited by

              Gracias Señores, veo que la idea era buena y la habeis llevado a cabo a la perfeccion. me pongo con ello

              gracias de nuevo y buen finde!!!!

              1 Reply Last reply Reply Quote 0
              • J
                javcasta
                last edited by

                Hola.

                Comenta como te ha ido cuando lo hagas.
                (y soy Sr, mis múltiples personalidades no las uso en el foro :)  )

                Salu2

                Javier Castañón
                Técnico de comunicaciones, soporte y sistemas.

                Mi web: https://javcasta.com/

                Soporte scripting/pfSense https://javcasta.com/soporte/

                1 Reply Last reply Reply Quote 0
                • T
                  tsis
                  last edited by

                  Hola

                  algo raro pasa, me dice que el sistema es solo lectura, estoy por ssh como root en la carpeta scritps, he intentado crear otro directorio al mismo nivel y me dice lo mismo, inclusive en el tmp

                  https://forum.pfsense.org/index.php?topic=94900.0

                  conoces  Logwatch? tu crees que se podria instalar en los Pfsense?

                  1 Reply Last reply Reply Quote 0
                  • J
                    javcasta
                    last edited by

                    Hola.

                    Si estas como root deberias tener permisos totales de lectura/modificación/escritura …

                    El enlace que pones se refiere a un problema similar pero para un sistema de 32Bits (i386) y para pfSense nanoBSD

                    Ya sea físico o en virtualización uso pfSense 2.2.6 RELEASE amd64 (sistemas de 64Bits).

                    Otra circunstancia añadida al nanoBSD es que están diseñados para tener muy poca escritura en disco (sistemas muy reducidos en HW donde el HD suele ser una memoria flash de poca capacidad), por lo que si instalas paquetes como p.e  squid suelen tener problemas, en realidad todo aquello que genere logs locales (ergo escrituras en disco local) no seria recomendable.

                    Respecto a lo de logwatch, hay un paquete en pfSense llamado syslogNG que he leido muy buenos comentarios.
                    Otra opción es enviar los logs remotamente a un servidor de syslog como Kiwi Syslog Server (hay ver free y cliente windows para este), lo he probado y me ha gustado. Puede que la combinación de syslogNG y Kiwi sea una buena opción.

                    Salu2

                    Javier Castañón
                    Técnico de comunicaciones, soporte y sistemas.

                    Mi web: https://javcasta.com/

                    Soporte scripting/pfSense https://javcasta.com/soporte/

                    1 Reply Last reply Reply Quote 0
                    • T
                      tsis
                      last edited by

                      ya vi el porque, si mi PF es nano en una tarjeta de 4 Gb, la verdad va de lujo ahora esta lentorro de administracion

                      vi esta opcion que me posibilito hacer tu guia pero no hay correos ni manda nada. me manda los informenes correctamente a diario con lo cual descarto un tema de smtp

                      no se yo si ponerlo siempre en que pueda escribir en el disco always.

                      cree el cron y puse el script pero como te comentaba no hace nada de nada, le puse 30 min.

                      Selección_495.png
                      Selección_495.png_thumb

                      1 Reply Last reply Reply Quote 0
                      • J
                        javcasta
                        last edited by

                        Hola.

                        Haz un test email (System: Advanced: Notifications - test email) y mira en el log (Status: System logs: General) que error te da.

                        Si usas IPs públicas dinámicas (e incluso estáticas) por ejemplo de telefónica, algunos servidores de correo, rechazan aceptar correos por detectar un ratio inusual, …. vamos que te meten en una lista negra :)

                        "php-fpm[44442]: /system_advanced_notifications.php: Could not send the message to javier@undominio.com – Error: 421-4.7.0 [80.59.69.XXX 15] Our system has detected an unusual rate of"

                        Salu2

                        Javier Castañón
                        Técnico de comunicaciones, soporte y sistemas.

                        Mi web: https://javcasta.com/

                        Soporte scripting/pfSense https://javcasta.com/soporte/

                        1 Reply Last reply Reply Quote 0
                        • T
                          tsis
                          last edited by

                          es lo que te dije en mi anterior post, me llegan todas las mañanas los informes por correo que yo genero con el soft de informes de pfsense, que usa las mismas opciones de mandar correo

                          son informes de trafico de wan lan etc y carga de cpu, luego descarto todo eso, el enviador de correos va de lujo y lo tengo programado para que me mande los informes a las 7 AM diario

                          1 Reply Last reply Reply Quote 0
                          • J
                            javcasta
                            last edited by

                            Hola

                            Ah, ok!.

                            Quita del script la linea:

                            
                            echo $SALIDA > /tmp/milog.txt
                            

                            la puse para depurar , crea un fichero en el dir tmp, puede que eso provoque un error

                            salu2

                            Javier Castañón
                            Técnico de comunicaciones, soporte y sistemas.

                            Mi web: https://javcasta.com/

                            Soporte scripting/pfSense https://javcasta.com/soporte/

                            1 Reply Last reply Reply Quote 0
                            • T
                              tsis
                              last edited by

                              comente la linea

                              de camino mire si habia ficheros con ese nombre en esa ruta y no habia.

                              esperaremos 30 min :)

                              1 Reply Last reply Reply Quote 0
                              • J
                                javcasta
                                last edited by

                                Hola.

                                El scripting esta muy bien para ciertas cosas, pero si ya usas el paquete Email Reports…

                                Añade un Report Commands, tal que ejecute (ver img)

                                clog /var/log/filter.log | grep ,443, | grep in | grep 192.168.1.254 | grep block
                                

                                Obtiene el tráfico bloqueado entrante al puerto 443 a la ip 192.168.1.254, si el acceso a tu gui no es https,y es http pon grep ,80, en lugar de grep ,443, . Y en IP la IP que quieras monitorizar (la de tu interfaz, wan, lan, etc)

                                Salu2

                                nota: ojo que si en tus reglas del firewall no especificas que conjunto de IPs permitidas que solo puedan acceder a la GUI de tu pfSense no obtendras los intentos de acceso fallidos mediante este método, y despues de esa regla debe haber una regla a continuación que niegue el acceso a todas las demás IPs y deberia ser block, no reject, sino tampoco filtrarias correctamente eso del log (aunque creo que con la default any block, que es transparente, es decir no se ve en las reglas, bastaria).

                                Otra cosa seria averiguar los intentos fallidos (error de usuario:clave) a la GUI del pfSense desde IPs legitimadas por las reglas del cortafuegos … Lo miro en otro momento :)

                                reports.png
                                reports.png_thumb

                                Javier Castañón
                                Técnico de comunicaciones, soporte y sistemas.

                                Mi web: https://javcasta.com/

                                Soporte scripting/pfSense https://javcasta.com/soporte/

                                1 Reply Last reply Reply Quote 0
                                • T
                                  tsis
                                  last edited by

                                  ok

                                  lo del script lo voy quitando y dejo esto habilitado, todo lo que se te ocurra lo voy probando y asi me entero de algo :)

                                  un saludo y gracias

                                  1 Reply Last reply Reply Quote 0
                                  • J
                                    javcasta
                                    last edited by

                                    Hola.

                                    Era tan simple como filtrar en system.log :)

                                    clog /var/log/system.log | grep "authentication error"
                                    Mar  6 01:10:46 vra1 php-fpm[19196]: /index.php: webConfigurator authentication error for 'admin' from 192.168.88.135

                                    Resumiendo:

                                    Añade un Report Commands en Email Reports, tal que ejecute

                                    clog /var/log/system.log | grep "authentication error"
                                    

                                    Salu2

                                    === añadido ===

                                    Y para monitorizar los accesos exitosos

                                    clog /var/log/system.log | grep "Successful login"
                                    

                                    Javier Castañón
                                    Técnico de comunicaciones, soporte y sistemas.

                                    Mi web: https://javcasta.com/

                                    Soporte scripting/pfSense https://javcasta.com/soporte/

                                    1 Reply Last reply Reply Quote 0
                                    • T
                                      tsis
                                      last edited by

                                      me funciona , me llegan los intentos acertados desde mi ip

                                      lo que me tiene mosca es que habilito la opcion de escritura del nano ( captura) y todo va bien rapido, pero si la dejo por defecto el PF se ralentiza bastante a la hora de generar eglas sobre todo al aplicar cambios,

                                      sera la opcion de escritura para configurar los PF al principio y luego cambiar a solo lectura? para no cargar mucho la vida de este tipo de memorias

                                      un saludo

                                      Selección_495.png
                                      Selección_495.png_thumb

                                      1 Reply Last reply Reply Quote 0
                                      • J
                                        javcasta
                                        last edited by

                                        Hola.

                                        Claro, si se evita hacer escritura en discos tipo flash para alargar su ciclo de vida, tendrá que recurrir a la ram, puede que ampliando la ram mejore el rendimiento, pero no tengo experiencia con nanoBSD, no podría asegurarlo.

                                        Salu2

                                        Javier Castañón
                                        Técnico de comunicaciones, soporte y sistemas.

                                        Mi web: https://javcasta.com/

                                        Soporte scripting/pfSense https://javcasta.com/soporte/

                                        1 Reply Last reply Reply Quote 0
                                        • pttP
                                          ptt Rebel Alliance
                                          last edited by

                                          Esa "lentitud" es algo inherente a ciertas CF….

                                          Busquen posts de cmb, al respecto  ;)

                                          https://forum.pfsense.org/index.php?topic=104906.msg584944#msg584944

                                          The slow rw->ro mount times are the same as in recent versions after removal of forcesync patch. For drives that are slow there, keep it permanently rw mounted. Noted here, search forcesync.

                                          https://doc.pfsense.org/index.php?title=2.2.4_New_Features_and_Changes

                                          The forcesync patch for #2401 is still considered harmful to the filesystem and has been kept out. As such, there may be some noticeable slowness with NanoBSD on certain slower disks, especially CF cards and to a lesser extent, SD cards. If this is a problem, the filesystem may be kept read-write on a permanent basis using the option on Diagnostics > NanoBSD. With the other above changes, risk is minimal. We advise replacing the affected CF/SD media by a new, faster card as soon as possible. #4814

                                          1 Reply Last reply Reply Quote 0
                                          • T
                                            tsis
                                            last edited by

                                            o sea que no pasa nada si la dejo activada segun el ultimo comentario, hasta que saquen algo, parche o algun fix

                                            pues lo dejare en RW si asi va mucho mejor, total esas memorias CF son muy baratas ahora, lo malo es que desaparezcan, en amazon las vi a 6 euros parecidas.

                                            gracias

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post
                                            Copyright 2025 Rubicon Communications LLC (Netgate). All rights reserved.