Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Configuración de dispositivos syslog
Tras configurar la ingesta de syslog, configure las fuentes de syslog para enviar mensajes al nombre DNS del punto final de la VPC. Sus dispositivos llegan al punto final a través de su conexión VPN o Direct Connect a la VPC.
nota
Las siguientes configuraciones se proporcionan a modo de ejemplo. Para ver las opciones de configuración completas y las prácticas recomendadas, consulte la documentación oficial de su implementación de syslog (rsyslog, syslog-ng o el proveedor del dispositivo).
En los ejemplos siguientes, sustitúyalo por el nombre DNS del punto final de la VPC del procedimiento de configuración (por ejemplo,VPCE_DNSvpce-0abc123def456.syslog-logs.us-east-1.vpce.amazonaws.com).
rsyslog
rsyslog es el daemon syslog predeterminado en la mayoría de las distribuciones de Linux. Agregue la siguiente /etc/rsyslog.d/50-cwl-syslog.conf configuración a.
TCP + TLS:
# Forward all logs to CloudWatch Logs via TCP+TLS action(type="omfwd" target="VPCE_DNS" port="6514" protocol="tcp" StreamDriver="gtls" StreamDriverMode="1" StreamDriverAuthMode="x509/certvalid" template="RSYSLOG_SyslogProtocol23Format" queue.type="LinkedList" queue.filename="cwl_fwd" queue.saveOnShutdown="on" action.resumeRetryCount="-1")
Texto sin formato TCP:
# Forward all logs to CloudWatch Logs via plaintext TCP action(type="omfwd" target="VPCE_DNS" port="1514" protocol="tcp" template="RSYSLOG_SyslogProtocol23Format" queue.type="LinkedList" queue.filename="cwl_fwd" queue.saveOnShutdown="on" action.resumeRetryCount="-1")
UDP:
# Forward all logs to CloudWatch Logs via UDP action(type="omfwd" target="VPCE_DNS" port="514" protocol="udp" template="RSYSLOG_SyslogProtocol23Format")
Tras añadir la configuración, reinicie rsyslog:
sudo systemctl restart rsyslog
nota
Las queue.saveOnShutdown="on" directivas queue.type="LinkedList" y permiten la creación de colas asistidas por disco. Si la conexión con el punto final de la VPC se pierde temporalmente, rsyslog almacena los mensajes en el búfer local y vuelve a intentar entregarlos.
Filtrado por instalación o gravedad:
Para enviar solo mensajes específicos, añade un filtro antes de la acción:
# Send only auth messages via TCP+TLS auth,authpriv.* action(type="omfwd" target="VPCE_DNS" port="6514" protocol="tcp" StreamDriver="gtls" StreamDriverMode="1" StreamDriverAuthMode="x509/certvalid" template="RSYSLOG_SyslogProtocol23Format")
syslog-ng
syslog-ng se utiliza habitualmente en dispositivos de red y sistemas Linux empresariales. Agregue la siguiente configuración a. /etc/syslog-ng/conf.d/cwl-syslog.conf
TCP + TLS:
destination d_cwl_syslog { network("VPCE_DNS" port(6514) transport("tls") tls( peer-verify(required-trusted) ca-dir("/etc/ssl/certs") ) ); }; log { source(s_sys); destination(d_cwl_syslog); };
Texto sin formato TCP:
destination d_cwl_syslog { network("VPCE_DNS" port(1514) transport("tcp") ); }; log { source(s_sys); destination(d_cwl_syslog); };
UDP:
destination d_cwl_syslog { network("VPCE_DNS" port(514) transport("udp") ); }; log { source(s_sys); destination(d_cwl_syslog); };
Tras añadir la configuración, reinicie syslog-ng:
sudo systemctl restart syslog-ng
Validación rápida
Use los siguientes comandos desde cualquier host que pueda llegar al punto final de la VPC para verificar la conectividad.
Texto sin formato TCP (puerto 1514):
echo "<134>1 $(date -u +%Y-%m-%dT%H:%M:%SZ) myhost myapp 1234 - - Hello from syslog" | \ ncVPCE_DNS1514
TCP + TLS (puerto 6514):
echo "<134>1 $(date -u +%Y-%m-%dT%H:%M:%SZ) myhost myapp 1234 - - Hello TLS syslog" | \ openssl s_client -connectVPCE_DNS:6514 -quiet -no_ign_eof
UDP (puerto 514):
echo "<134>1 $(date -u +%Y-%m-%dT%H:%M:%SZ) myhost myapp 1234 - - Hello UDP syslog" | \ nc -u -w1VPCE_DNS514
Tras enviar los mensajes de prueba, verifica la entrega en CloudWatch los registros (normalmente en un plazo de 10 a 20 segundos):
aws logs filter-log-events \ --log-group-name /syslog/my-devices \ --start-time $(date -d '5 minutes ago' +%s000 2>/dev/null || echo $(($(date -v-5M +%s) * 1000))) \ --region $REGION
Dispositivos de red
La mayoría de los firewalls, enrutadores y conmutadores admiten la configuración de un servidor syslog externo especificando una dirección IP y un puerto de destino. Utilice la dirección IP privada del ENI del punto final de la VPC (visible en la consola de Amazon VPC en Endpoints) y uno de los puertos compatibles (6514, 1514 o 514).
Consulte la documentación del dispositivo para conocer la sintaxis de configuración específica. Los ajustes clave que se deben configurar son:
Dirección del servidor: el nombre DNS del punto final de la VPC o la dirección IP privada de ENI.
Puerto: 6514 (TCP+TLS), 1514 (TCP) o 514 (UDP).
Protocolo: TCP (recomendado) o UDP.
Formato: RFC 5424 (preferido) o RFC 3164 (antiguo). Ambos son compatibles.
Certificado TLS de confianza
La conexión TLS del puerto 6514 utiliza un certificado AWS gestionado emitido por Amazon Trust Services. La mayoría de los sistemas operativos y daemons de syslog confían en este certificado automáticamente porque los certificados raíz de Amazon Trust Services se incluyen en los almacenes de confianza de CA estándar.
Si su dispositivo no confía en el certificado de forma predeterminada, descargue los certificados raíz de Amazon Trust Services https://www.amazontrust.com/repository/