Больше невозможно подключиться к экземпляру SQL Server после включения UFW в Ubuntu 16.04 с уже установленным webmin

Я включил UFW на сервере ubuntu, настроенном кем-то другим, следуя документации по digitalocean. На этом сервере уже был установлен virtualmin / webmin.

Включение UFW не повлияло на трафик, разрешен только OpenSSH, а по умолчанию установлены входящие (запретить), исходящие (разрешить). Я все еще мог посещать веб-сайт, даже когда Apache не был добавлен в правило UFW.

Мне пришлось перезагрузить сервер, чтобы увидеть, сработает ли UFW, но брандмауэр был «неактивен», и теперь я не могу подключиться к экземпляру SQL Server через приложение или SSMS даже после отключения брандмауэра.

Приложение не работает уже несколько часов, мир на моей шее, и я почти на конце моей веревки.


person swaggerjacker    schedule 11.10.2019    source источник
comment
Я предполагаю, что SQL Server работает на вашем Ubuntu Box? Если нет, ufw не имеет к этому никакого отношения. Если он находится на сервере Ubuntu и ufw неактивен, он не остановит ваше соединение; что означает, что служба (SQL Server) не запущена. Вы можете узнать это с помощью sudo service mssql-server status.   -  person Larnu    schedule 11.10.2019
comment
ufw также не останавливает локальное соединение. Если Webmin и SQL Server работают на одном хосте, ufw не будет останавливать соединения; он остановит только те, которые поступают с внешних IP-адресов, которые не входят в разрешенный список (или имеют явный DENY).   -  person Larnu    schedule 11.10.2019
comment
Спасибо, @Larnu, запуск команды показал, что sql-сервер был активен ... но я не могу подключиться к нему ...   -  person swaggerjacker    schedule 11.10.2019
comment
Откуда вы пытаетесь подключиться к нему, с локального хоста, извне? Вы пробовали подключиться с помощью sqlcmd с локального хоста? если не удается установить соединение, какую ошибку вы получите? если он работает, очевидно, проблема в брандмауэре.   -  person Larnu    schedule 11.10.2019
comment
Я пытаюсь подключиться к нему как через приложение (веб-сайт), так и удаленно с помощью SSMS ... Я попытался подключиться локально с помощью sqlcmd -S localhost -U sa -P 'xxxxxxxx', и он представил следующие ошибки: Sqlcmd: Ошибка: Microsoft Драйвер ODBC 17 для SQL Server: поставщик TCP: код ошибки 0x2746. Sqlcmd: ошибка: драйвер Microsoft ODBC 17 для SQL Server: клиенту не удалось установить соединение.   -  person swaggerjacker    schedule 11.10.2019
comment
Вы случайно не обновлялись в последнее время до последней версии CU? Если да, то какая версия msodbcsql17 у вас установлена?   -  person Larnu    schedule 11.10.2019
comment
Я также вижу, что порт 1433 не открыт, может ли это быть фактором?   -  person swaggerjacker    schedule 11.10.2019
comment
Я также вижу, что порт 1433 не открыт. Может ли это быть фактором? На ufw? Только для подключения не с локального хоста.   -  person Larnu    schedule 11.10.2019
comment
Я запустил apt-get upgrade на своем сервере   -  person swaggerjacker    schedule 11.10.2019
comment
Я запускал apt-get upgrade на своем сервере до того, как это произошло?   -  person Larnu    schedule 11.10.2019
comment
да, до этого ...   -  person swaggerjacker    schedule 11.10.2019
comment
Каковы значения installed при запуске sudo apt-cache policy msodbcsql17 mssql-server?   -  person Larnu    schedule 11.10.2019
comment
да, до того, как это произошло ... Ну, это действительно важная информация, которую мы упустили за последний час ... Похоже, у вас установлены старые драйверы odbc еще.   -  person Larnu    schedule 11.10.2019
comment
Есть идеи, как обновить драйверы, не влияя на данные?   -  person swaggerjacker    schedule 11.10.2019


Ответы (1)


Продолжаем догадываться после нескольких комментариев.

Похоже, вы обновили версию mssql-server, но не обновили пакет msodbcsql17. Последнему CU требуется последняя версия msodbcsql17 (не знаю, почему, но ее отсутствие вызывает сбои подключения).

Сначала обновите свои пакеты:

sudo apt update

Затем установите последнюю версию msodbcsql17:

sudo apt установить msodbcsql17

Это должно установить версию 17.4.2.1-1.

Если это по каким-то причинам не удается. Вы можете откатить обновление до mssql-server:

sudo apt install mssql-server=14.0.3223.3-15
person Larnu    schedule 11.10.2019
comment
Мне пришлось настроить новую базу данных sql server, чтобы проверить это, чтобы убедиться, что я не потеряю никаких данных ... оказывается, что откат к предыдущей версии устранил проблему с подключением, хотя в моем случае я откатился до 14.0.3192.2-2, спасибо для этого .... Я бы не справился без тебя. - person swaggerjacker; 12.10.2019