
¿Existe un registro en los servidores centos que registre cada conexión hacia/desde?
algo así como un registro de conexiones centralizado
Respuesta1
La única forma segura de obtener un único registro centralizado de todas las conexiones TCP sería agregar LOG
reglas a iptables
la configuración del firewall de su software que registrarían cualquier paquete con bits SYN y ACK configurados, es decir, el segundo paquete de cualquier conexión TCP. Estos aparecerían como mensajes de registro del kernel de /var/log/messages
forma predeterminada.
Por favor miraesta pregunta en Server Fault.SE.
Básicamente, querrás agregar reglas de iptables como esta:
iptables -A OUTPUT -p tcp --tcp-flags SYN,ACK SYN,ACK -j LOG --log-prefix "Inbound connection established: "
iptables -A INPUT -p tcp --tcp-flags SYN,ACK SYN,ACK -j LOG --log-prefix "Outbound connection established: "
(Es posible que desee colocar estas reglas en su conjunto de reglas existente para que no se apliquen a la interfaz de bucle invertido, ya que eso podría generar dos entradas para cada conexión local entre procesos de aplicación dentro del host).
Y sí, la regla en la cadena de SALIDA registra las conexiones entrantes y viceversa, porque esto solo registrará las conexiones a las que realmente se está respondiendo: registrar solo los paquetes SYN también registrará los intentos de conexión que serán rechazados. Debido a los escaneos de puertos ejecutados por sistemas plagados de malware en Internet, esto a menudo le daría muchas entradas de registro inútiles: tendría que cotejar con otros registros, sólo para descubrir que no tiene tal servicio en ejecución, o que la conexión fue rechazada por otra iptables
regla o por el servicio en cuestión.
Para los protocolos UDP es más complicado, porque UDP no tiene conexión y básicamente es solo una plataforma sobre la cual se puede construir un protocolo específico de la aplicación. Por lo tanto, no existe una manera fácil de detectar "el primer paquete de una conexión" ni nada por el estilo, porque todo eso será completamente específico de la aplicación.
Respuesta2
Creo que esto debería funcionar:
journalctl -fu sshd
o
journalctl -u sshd -n 100
Es decir, si estás ejecutando systemd, que creo que es el predeterminado. Los primeros mantendrán la vigilancia. Esto último equivale a pasar la tubería por la cola.
(Leer alrededor parece indicar que los registros en realidad deberían estar en /var/log/secure)