验证 tls 证书时出现此错误 x509:无法验证 127.0.0.1 的证书,因为它不包含任何 IP SAN

问题描述 投票:0回答:0

我希望使用 golang 在 rsyslog 中实现 TLS。我还找到了图书馆https://github.com/RackSec/.

func main() {
    
    
    
    w, err := syslog.DialWithTLSCertPath("tcp+tls", "127.0.0.1:51430", syslog.LOG_ERR, "superbpatch123", "/path/to/client-key.pem")
    if err != nil {
        fmt.Println("unable to dial Rsyslog ,connection refused :> " + err.Error())
        return
    }
    
    int1, err := w.Write([]byte("these are some bytesssssss"))
    
    if err != nil {
        log.Println("Unable to write the bytes to rsyslog ", err.Error())
        return
    }
    
    fmt.Println("forwarded logs to rsyslog ", int1)
    
    }

出现此错误x509:无法验证 127.0.0.1 的证书,因为它不包含任何 IP SAN

我的服务器配置看起来像

    $AllowedSender TCP, 127.0.0.1
    
    module(load="imtcp"
            StreamDriver.Name="gtls"
            StreamDriver.Mode="1"
            StreamDriver.Authmode="anon"
    )
    input(type="imtcp" port="51430")
    
    
    
    # make gtls driver the default and set certificate files
    global(
    DefaultNetstreamDriver="gtls"
    DefaultNetstreamDriverCAFile="/path/to/ca.pem"
    DefaultNetstreamDriverCertFile="/path/to/server-cert.pem"
    DefaultNetstreamDriverKeyFile="/path/to/server-key.pem"
    )
ssl rsyslog gnutls
© www.soinside.com 2019 - 2024. All rights reserved.