¿Puedo especificar configuraciones TLS en una plantilla?

¿Puedo especificar configuraciones TLS en una plantilla?

Estoy intentando configurar esto para la ingesta de SIEM en RHEL 8. Tengo esta configuración a continuación, sin embargo, el TCP normal que no es tls no funciona.

Sé que el problema se debe a que tengo gtls globalmente y en mi módulo imtcp; eso es obvio, pero lo que no puedo encontrar es cómo agregar esta configuración en una sola plantilla de entrada que puedo agregar a cada conjunto de reglas necesario. ¿Se puede siquiera hacer eso?

Intenté agregar lo siguiente a mi plantilla de entrada sin éxito. Parecen obsoletos.

Intenté agregar:

(1)
  StreamDriver.Name="gtls"
  StreamDriver.Mode="1"
  StreamDriver.Authmode="anon"

(2)
Tag="ssl"

(3)
tls="on" 
tls.caCert="/etc/rsyslog.d/certs/CA.pem" 
tls.myCert="/etc/rsyslog.d/certs/server.pem" 
tls.myPrivKey="/etc/rsyslog.d/certs/Key.key" 
tls.authmode="name" 

Cualquier sugerencia será muy apreciada.

  
########## MODULES ##########
module(load="imudp")
module(load="imtcp" MaxSessions="500"
StreamDriver.Name="gtls"
StreamDriver.Mode="1"
StreamDriver.Authmode="anon"
)

########## TEMPLATES ##########
template(name="FileFormat" type="list") {
 property(name="rawmsg-after-pri")
 constant(value="\n")
}

# make gtls driver the default and set certificate files
global(
DefaultNetstreamDriver="gtls"
DefaultNetstreamDriverCAFile="/etc/rsyslog.d/certs/CA.pem"
DefaultNetstreamDriverCertFile="/etc/rsyslog.d/certs/server.pem"
DefaultNetstreamDriverKeyFile="/etc/rsyslog.d/certs/Key.key"
)




# semanage port -a -t syslogd_port_t -p udp <port>
############### udp_input  ###############
input(type="imudp" port="8501" ruleset="udp_input")
template(name="udp_input" type="string" string="var/log/remote/udp_input/%HOSTNAME%/%$day%_%$hour%.log")
ruleset(name="udp_input"){
action(
 type="omfile"
 dirCreateMode="0755"
 template="FileFormat"
 dynafile="udp_input"
)
}

# semanage port -a -t syslogd_port_t -p tcp <port>
############### TCP_input  ###############
input(type="imtcp" port="8502" ruleset="TCP_input")
template(name="TCP_input" type="string" string="var/log/remote/TCP_input/%HOSTNAME%/%$day%_%$hour%.log")
ruleset(name="TCP_input"){
action(
 type="omfile"
 dirCreateMode="0755"
 template="FileFormat"
 dynafile="TCP_input"
)
}



# semanage port -a -t syslog_tls_port_t -p tcp <port>
############### tls_input  ###############
input(type="imtcp" port="8611" ruleset="tls_input")
template(name="tls_input" type="string" string="var/log/remote/tls_input/%HOSTNAME%/%$day%_%$hour%.log")
ruleset(name="tls_input"){
action(
 type="omfile"
 dirCreateMode="0755"
 template="FileFormat"
 dynafile="tls_input"
)
}

Tengo módulos: rsyslog.x86_64
rsyslog-gnutls.x86_64 rsyslog-gssapi.x86_64 rsyslog-relp.x86_64

Respuesta1

¿También intentó reemplazar el módulo imtcp mediante TCP imptcp de texto sin formato?

############### TCP_input ###############

input(type="imptcp" port="8502" ruleset="TCP_input")

información relacionada