Has anybody managed to successfully deploy Sophos Enterprise 5.5.1 while using the TLS1.2 database connectivity?

I just cant seem to figure it out how to get it to work...? even though Im on server2012 R2 fully updated, with SQL 2012 SP4. No matter what i do the Sophos Installer always says:

 

(x) SQL Server instance does not support TLS 1.2

(x) There is no certificate installed that can be used with SQL Server

I ignored these warnings and Installed SEC5.5.1 anyway as it still works with TLS1.0, but i relly want it to work with TLS1.2, Anybody else have any similar issues?

 

Cheers

Parents
  • Hello Redfern,

    I am in the process of updating from 5.4.1 and have outcome all but the stated instance support error. I too am on 2012 SP4 /w CU 10. I've tried many different things after ensuring it was not anything to do with an encrypted connection to the SQL server.

    So I decided to log a ticket with Sophos to get their explanation on the issue. I'm wondering if it is simply checking for a version number that is different, below mine is stated as 11.4.7001.0 which might identify express version over other versions.

      SQL Server 2012
         codename Denali
    11.0.2100.60 11.0.3000.0
    or 11.1.3000.0
    11.0.5058.0
    or 11.2.5058.0
    11.0.6020.0
    or 11.3.6020.0
    11.0.7001.0
    or 11.4.7001.0

    In your case the cert issue is that you will need to configure a certificate for use with the SQL Server. We have an enterprise CA so it's quite straightforward for me (just remember to configure all the alternate names you might be using). Sophos link below if you haven't already seen it.

    community.sophos.com/.../127521


    Can let you know what they reply.

    Cheers,

    Grant

  • Hi Grant. 

    Thanks for this. 

    Did you get a helpful Reply? 

     

    Would be grateful if you can share it with us. 

     

    Cheers. 

     

    Shahid 

  • Hi Grant, 

     

    thank you for the detailed post about your procedure. I think ill also upgrade to 2016 to see if it helps. 

    Let us know how you get on. 

    Cheers

     

  • Hi guys,

    So the last thing I have done is the usual SDU logs to the support team, who will probably take them to the product team. On the brightside at least it's now running the latest version of SEC.

    Ta,

    Grant

  • Hi guys,

    not much to add to the Friday afternoon wrap up, other than I've been told that the incident has gone to GES engineers, who, "are the highest technical tier within support and are responsible for interacting with our development teams".

    Should have some better information next week.

    have a good weekend.

    Grant

  • Hi guys,

    sorry for the delay but this has turned into a bit of an annoyance. Anyway, long story short I upgraded to 2017 without any change in behaviour, I identified the client connections to the SQL box and realised Sophos was using 2 different client libraries (of which one is not TLS 1.2 compliant). So now I am trying to figure out if there is TLS 1.2 support for this driver, or that Sophos needs to update the parts of the application that is using SQL OLE DB connection strings as per this article from Microsoft tech team.


    https://blogs.msdn.microsoft.com/sqlreleaseservices/released-microsoft-ole-db-driver-for-sql-server/

    At this point I’m not sure as I do not know the exact provider they are using.

    It's worth noting that this was done in a DEV environment and I ran up a fresh Windows 2016 with SEC 5.5.1 and got exactly the same behaviour.

    Below are some notes I made to get to this point.

    --------------------------------------------------------------------------

     

    R&D team’s answer to support is to follow the articles and to speak to Microsoft and SQL experts:

    -----------------------------------------
    Article ID: 127521
    Title: Enterprise Console - Database connection check
    URL: https://sophos.com/kb/127521 
    -----------------------------------------

    -----------------------------------------
    Article ID: 131698
    Title: Sophos Enterprise Console - How to create the required certificate package to allow TLS 1.2 connection to the database
    URL: https://sophos.com/kb/131698 
    -----------------------------------------

     

    Sound familiar?

    Okay, so from here I decided to upgrade to SQL 2017.

    Next time to find out exactly what are the connections to the database by application and driver.

    Sp_who2

    SPID

    Status

     

     

    BlkBy

    DBName

    Command

    CPUTime

    DiskIO

    LastBatch

    ProgramName

    SPID

    REQUESTID

    51

    sleeping                     

     

     

      .

    master

    AWAITING COMMAND

    0

    0

    07/06/2018 11:01

    Microsoft SQL Server Management Studio                   

    51

    0

    52

    sleeping                     

     

     

      .

    tempdb

    AWAITING COMMAND

    637166

    25177

    07/06/2018 11:06

    Microsoft SQL Server Management Studio                   

    52

    0

    53

    sleeping                     

     

     

      .

    master

    AWAITING COMMAND

    218

    1

    07/06/2018 11:01

    SQLServerCEIP                                            

    53

    0

    54

    SUSPENDED                    

     

     

      .

    master

    SELECT         

    0

    5

    07/05/2018 14:56

    Microsoft SQL Server Management Studio                   

    54

    0

    55

    sleeping                     

     

     

      .

    tempdb

    AWAITING COMMAND

    2481

    66

    07/06/2018 9:45

    Microsoft SQL Server Management Studio                   

    55

    0

    56

    RUNNABLE                     

     

     

      .

    master

    SELECT INTO    

    110

    45

    07/06/2018 11:06

    Microsoft SQL Server Management Studio - Query           

    56

    0

    57

    sleeping                     

     

     

      .

    SOPHOS551

    AWAITING COMMAND

    0

    0

    07/06/2018 11:04

    .Net SqlClient Data Provider                             

    57

    0

    58

    SUSPENDED                    

     

     

      .

    master

    SELECT         

    1516

    0

    07/05/2018 16:06

    SQL Server Profiler - 49bc8e49-f62d-41bd-92c3-2437f88530d2

    58

    0

    59

    sleeping                     

     

     

      .

    master

    AWAITING COMMAND

    47

    0

    07/06/2018 10:31

    Microsoft SQL Server Management Studio - Query           

    59

    0

    60

    sleeping                     

     

     

      .

    SOPHOS551

    AWAITING COMMAND

    0

    0

    07/06/2018 11:05

    Sophos Endpoint Management                               

    60

    0

    61

    sleeping                     

     

     

      .

    SOPHOS551

    AWAITING COMMAND

    31

    3

    07/06/2018 11:06

    Sophos Endpoint Management                               

    61

    0

     

    This shows applications accessing the Sophos DB and if we follow SPID 57 & 60 we see 1 is SQLNCLI and the other is “Sophos EndPoint Management”. So lets follow those 2 into the activity monitor.

    Activity monitor reveals the same information ass sp_who2 and now we follow the session ID to find out what drivers are being used by the applications.

    Using this article we find the driver versions:
    https://www.mssqltips.com/sqlservertip/2198/determine-which-version-of-sql-server-data-access-driver-is-used-by-an-application/

    session_id

    protocol_type

    driver_version

    client_tcp_port

    local_tcp_port

    52

    TSQL

    SQL Server 2012/14/16/17

    49938

    49192

    53

    TSQL

    SQL Server 2012/14/16/17

    NULL

    NULL

    54

    TSQL

    SQL Server 2012/14/16/17

    49740

    49192

    55

    TSQL

    SQL Server 2012/14/16/17

    49723

    49192

    56

    TSQL

    SQL Server 2012/14/16/17

    49746

    49192

    57

    TSQL

    SQL Server 2012/14/16/17

    NULL

    NULL

    58

    TSQL

    SQL Server 2012/14/16/17

    NULL

    NULL

    59

    TSQL

    SQL Server 2012/14/16/17

    49758

    49192

    60

    TSQL

    SQL Server 2000

    52782

    49192

    61

    TSQL

    SQL Server 2000

    52774

    49192

    62

    TSQL

    SQL Server 2000

    52780

    49192

     

    Now we can see that session ID 57 and 60 are using different client libraries as per this article

    https://msdn.microsoft.com/en-us/library/dd339982.aspx

    So now using SQL profiler, the trace reveals that both these session ID’s come from the same ClientProcessID 2112

     

    Now task manager will show us what process 2112 actually is:

     

    So it appears that MgntSvc.exe or “Sophos Management Service” is making SQL connections using 2 different client libraries. Of which the “SQL 2000” driver connection made by the application name of “Sophos EndPoint  Management “ does not support TLS 1.2.

    It would appear that this connection is a SQL OLE DB TLS 1.0 connection as illustrated when using a test connection and generating the same error.

    Do Sophos need to update the connection string as per this article?
    https://blogs.msdn.microsoft.com/sqlreleaseservices/released-microsoft-ole-db-driver-for-sql-server/

    At this point I’m not sure as I do not know the exact provider they are using, will pose question to tech support.

  • Have you run the CheckDBconnection.exe -a to setup the SQLNLI connection string

    The tool has two working mode. The default is checking the system for TLS 1.2 compatibility (system check mode). The second performs the database settings modification (apply mode: -a).

     

  • Hi Dominic,

    Where have you been all this time! No I did not see that a tool called CheckDBconnection.exe is used to change the SQL provider. I've just gone back to check that article and can now see that they have it in the guts of the tool info.

    Looks like a real silly place to put it to me as I missed it entirely. Not sure why it is in a list of a parameters for an article called DB connection check. Not sure why there is nothing in the setup to tell you that you need to convert the connection string, or even clear steps in that article outlining;

    1. upgrade

    2. db check

    3. convert connection string

    Thank you, you've saved me a lot of grief as I knew it had to be that, now that I realise this tool is not to check, but to change the SQL connection string I will go back and do exactly that.

    And just like that, I've disabled TLS 1.0 & 1.1 after changing the connection string and everything works as expected.

    Really not a fan of that documentation. 

    Many thanks again!!!

    Grant

  • Hello

    There have been many mentions to many articles.  When you write "that article", I am not sure which one you refer to ...

    Paul Jr

  • Hi Paul,

    This is one below the main culprit for me, as I'm never one to read details parameters of application unless I think I need the functionality. I really did not expect that the convert string would be found in a db check tool.

    -----------------------------------------
    Article ID: 127521
    Title: Enterprise Console - Database connection check
    URL: https://sophos.com/kb/127521 
    -----------------------------------------

    Anyway, time to continue, I've spent way too much time on this already and life's too short.

    Big thanks again to Dominic for showing me what I had missed.

    Best wishes to all,

    Grant

  • No problem Grant,

    Agree the single line in the document is not particularly obvious or that it is required to run the connectivity tool in -a mode to migrate the console over to TLS 1.2

    Surely going forward the functionality will be built into the Installer/Console itself, and would be the recommended default on install. 

     

Reply
  • No problem Grant,

    Agree the single line in the document is not particularly obvious or that it is required to run the connectivity tool in -a mode to migrate the console over to TLS 1.2

    Surely going forward the functionality will be built into the Installer/Console itself, and would be the recommended default on install. 

     

Children
No Data