LetsEncrypt для SQL Server в Linux

Я нашел информацию о

  • как установить LetsEncrypt на Linux для NGINX (который работает)
  • как установить LetsEncrypt для SQL Server в Windows (которая использует инструменты с графическим интерфейсом, поэтому она бесполезна), и
  • как установить другие сертификаты для SQL Server в Linux

но я не могу найти ничего о LetsEncrypt для SQL Server в Linux. Независимо от того, что я пытаюсь, я получаю это сообщение об ошибке:
Error: 49940, Severity: 16, State: 1.Unable to open one or more of the user-specified certificate file(s). Verify that the certificate file(s) exist with read permissions for the user and group running SQL Server.

Кажется, это должно быть возможно, кто-нибудь может дать несколько советов? [Редактировать]
Я проверил, что два файла LetsEncrypt имеют соответствующие разрешения. Я скопировал и переименовал их, и на них указывают ключи tlscert и tlskey в сетевом разделе /var/opt/mssql/mssql.conf.

[network]
tlscert = /etc/ssl/certs/mssql.pem
tlskey = /etc/ssl/private/mssql.key
tlsprotocols = 1.2
forceencryption = 1

Мне не совсем ясно, нужно ли извлекать закрытый ключ Letsencrypt в формате.pem в файл.key, поэтому я пробовал оба способа. Я получаю ту же ошибку в любом случае.
Эти ошибки отображаются в файле mssql/log/errorlog.
Вот результаты, запрошенные для

ls -l  /etc/ssl/certs/mssql.pem:
-rw------- 1 mssql mssql 3586 May  3 22:20 /etc/ssl/certs/mssql.pem
ls -l  /etc/ssl/private/mssql.key
-rw------- 1 mssql mssql 1679 May  3 22:42 /etc/ssl/private/mssql.key

Первоначально mssql.pem был fullchain.pem, а mssql.key изначально был privkey.pem, которые являются файлами, необходимыми для Nginx, и которые работают для него.

1 ответ

Решение

Перефразировано из конфигурации SSL MariaDB - с помощью сертификата Let's Encrypt

Ключ имеет неправильный формат и может быть преобразован с помощью openssl в другой формат.

openssl rsa -in ./privkey.pem -out ./privkeyrsa.pem

И после настройки прав (0400) и владения этим файлом (mysql:mysql) SSL работает как нужно. (и, конечно, строка конфигурации, указывающая на правильный сертификат)

Другие вопросы по тегам