JDBC SQL server error, TSL

Hi im getting this error in logstash 7.6.1 when using JDBC driver

The driver could not establish a secure connection to SQL Server by using Secure Sockets Layer (SSL) encryption. Error: \"The server selected protocol version TLS10 is not accepted by client preferences [TLS13, TLS12]

this is my input:

input {
    jdbc {
        jdbc_driver_class => "com.microsoft.sqlserver.jdbc.SQLServerDriver"
        jdbc_connection_string => "jdbc:sqlserver://dbip:1433;databasename=MyDB"
        jdbc_user => "myuser"
       jdbc_password => "mypass"
#        jdbc_validate_connection => true

        statement => " SELECT TOP 10 ..."

        jdbc_default_timezone => "UTC"
        tracking_column_type => "timestamp"
        use_column_value => true
        record_last_run => true
        tracking_column => "time"
        last_run_metadata_path => "./alerts_last_run.yml"
   }
}

Any ideas on how can I solve this?

You are connecting to a server that does not want to talk TLS 1.2 or 1.3, but instead chose TLS 1.0, which is literally from the last century.

I am not aware of any way to enable 1.0 in the Elastic stack. You could ask the DBAs to upgrade their end, or to enable unencrypted links (which they might as well do if they are running 1.0).

1 Like

Hi @Badger, a friend told me with no major details that in his work they solve this using a docker container.

Can you infer why it would work using a docker container?

Any idea that would led mi in the right track will be appreciated, Thanks!

Possibly they got it to work by installing an obsolete and insecure version of Java (e.g. 1.7) in the container. However, no supported version of logstash supports 1.7.

You might be able to cobble together something that "works", but please do not imagine that it is secure.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.