小編最近遇到了Net Core 6要連線MS SQL Server時出現了「SSL Handshake failed with OpenSSL error – SSL_ERROR_SSL」錯誤訊息,什麼?這怎可能發生….微軟自家的程式語言連線自家的SQL DB,不應該會出錯阿><
[範例情境]
作業系統:Ubuntu 22.04.3 LTS
程式語言:.Net Core 6
結果竟然是因為TLS版本與資料庫主機不吻合所產生的錯誤….真的是OOXX
解決辦法如下:
01、編輯「/usr/lib/ssl/openssl.cnf」檔案
指令語法:
sudo vi /usr/lib/ssl/openssl.cnf
在該檔案的最下方修改成:
[system_default_sect] MinProtocol = TLSv1 CipherString = DEFAULT:@SECLEVEL=1
02、編輯「/etc/ssl/openssl.cnf」檔案
指令語法:
sudo vi /etc/ssl/openssl.cnf
在該檔案的最下方修改成:
[system_default_sect] MinProtocol = TLSv1 CipherString = DEFAULT:@SECLEVEL=1
03、重新啟動Linux作業系統
指令語法:
reboot