FreeTDSはMS SQL接続の暗号化サポートを欠いています。

FreeTDSはMS SQL接続の暗号化サポートを欠いています。

pyodbc私はGentoo Linuxを実行していますfreetds

デバッグログインが有効になっていますfreetds。ここで接続しようとすると、次のようになります。

18:13:00.841828 13523 (net.c:270):tds_open_socket: connect(2) returned "Operation now in progress"
18:13:00.955976 13523 (net.c:310):tds_open_socket() succeeded
18:13:00.955996 13523 (util.c:156):Changed query state from DEAD to IDLE
18:13:00.956017 13523 (net.c:741):Sending packet
0000 12 01 00 34 00 00 00 00-00 00 15 00 06 01 00 1b |...4.... ........|
0010 00 01 02 00 1c 00 0c 03-00 28 00 04 ff 08 00 01 |........ .(......|
0020 55 00 00 02 4d 53 53 51-4c 53 65 72 76 65 72 00 |U...MSSQ LServer.|
0030 d3 34 00 00            -                        |.4..|

18:13:01.190745 13523 (net.c:555):Received header
0000 04 01 00 25 00 00 01 00-                        |...%....|

18:13:01.190772 13523 (net.c:609):Received packet
0000 04 01 00 25 00 00 01 00-00 00 15 00 06 01 00 1b |...%.... ........|
0010 00 01 02 00 1c 00 01 03-00 1d 00 00 ff 0a 32 10 |........ ......2.|

18:13:01.190781 13523 (login.c:1057):detected flag 3
18:13:01.190783 13523 (login.c:1068):server required encryption but support is not compiled in
18:13:01.190785 13523 (login.c:466):login packet rejected
18:13:01.190821 13523 (util.c:156):Changed query state from IDLE to DEAD

一部の暗号化のサポートが欠けているようですが、どの暗号化なのかわかりません。私はfreetds次の設定パラメータに従います。

./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --disable-dependency-tracking --libdir=/usr/lib64 --with-tdsver=7.0 --enable-msdblib --enable-odbc --with-unixodbc=/usr --enable-krb5

私が知る限り、それはlibkrb5暗号化に使用されます。私の設定フラグは次のとおりですlibkrb5

./configure --prefix=/usr --build=x86_64-pc-linux-gnu --host=x86_64-pc-linux-gnu --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share --sysconfdir=/etc --localstatedir=/var/lib --libdir=/usr/lib64 --without-ldap --without-tcl --enable-pkinit --enable-thread-support --without-hesiod --enable-shared --with-system-et --with-system-ss --enable-dns-for-realm --enable-kdc-lookaside-cache --with-system-verto --disable-rpath  --with-pkinit-crypto-impl=openssl

MS SQLに接続するために欠落している構成フラグが何であるかを知っている人はいますか?

ベストアンサー1

freetds私が欠けている設定パラメータからそれを自分で見つけました--with-openssl。一度追加して再インストールすると、freetdsすべてがうまくいきました。

おすすめ記事