Подтвердить что ты не робот

Не подключаться к SQL Server через VPN

Я впервые подключился к существующей сети через VPN. Я могу выполнить ping IP-адрес, который используется SQL Server от VPN-клиента, но SSMS не подключается к SQL Server. Я использую правильный идентификатор входа и пароль.

Почему это могло произойти? Есть идеи?

благодаря

4b9b3361

Ответ 1

В экземпляре по умолчанию SQL Server прослушивает по TCP/1433 по умолчанию. Это можно изменить. На именованном экземпляре, если он не настроен по-разному, SQL Server прослушивает динамический порт TCP. Это означает, что SQL Server обнаруживает, что порт используется, он выберет другой TCP-порт. Как клиенты обычно находят правильный порт в случае именованного экземпляра, это разговаривать с SQL Server Listener Service/SQL Browser. Это прослушивает UDP/1434 и не может быть изменено. Если у вас есть именованный экземпляр, вы можете настроить статический порт, и если вам нужно использовать аутентификацию/делегирование Kerberos, вы должны.

Что вам нужно будет определить - это то, что прослушивает ваш SQL Server. Затем вам нужно будет связаться с вашими специалистами по сети/безопасности, чтобы определить, разрешают ли они осуществлять связь с этим портом через VPN. Если они, как указано, проверьте настройки брандмауэра. В некоторых системах есть несколько брандмауэров (например, мой ноутбук). Если это так, вам нужно будет проверить все брандмауэры в вашей системе.

Если все они верны, убедитесь, что на сервере нет политики IPSEC, которая ограничивает доступ к порту SQL Server через IP-адрес. Это также может привести к блокировке.

Ответ 2

Когда это происходит со мной, это происходит потому, что DNS работает неправильно. Попробуйте использовать IP-адрес вместо имени сервера в SQL Server.

Ответ 3

Убедитесь, что SQL Server включен для TCP/IP (кто-то может отключить его)?

Это также поможет вам проверить/подтвердить номер порта, который использует экземпляр SQL (в случае, если кто-то изменил его с по умолчанию порта 1433).

Очевидно, что порт 1433 (или любой другой порт, который прослушивает SQL) должен быть разблокирован любыми брандмауэрами между вашей машиной и ядром SQL.

Чтобы проверить конфигурацию сети SQL (требуется установка клиентских инструментов SQL Server): Пуск → Программы → SQL Server 200x → Инструменты настройки → Диспетчер конфигурации SQL Server

Подключитесь к нужному компьютеру, затем разверните элемент дерева (LHS) "Конфигурация сети SQL Server", затем выберите экземпляр. У вас должно быть четыре варианта: общая память, именованные каналы, TCP/IP и VIA. Вы можете проверить, что TCP/IP включен в окне RHS.

Если вы дважды щелкните по TCP/IP и перейдите на вкладку "Дополнительно", вы также можете просмотреть номер порта.

Другие мысли. Используете ли вы аутентификацию SQL Authentication или Windows (Domain)?

  • Если SQL Authentication (предположим, что вы используете данное имя пользователя и пароль), уверены ли вы, что экземпляр SQL, с которым вы подключаетесь, активировал аутентификацию смешанного режима? Если нет, вам необходимо подключиться как Администратор и изменить параметры безопасности по умолчанию, чтобы разрешить аутентификацию SQL.

  • Если Windows Authentication, может ли ваша сеть использовать Kerberos потенциально? Можно было бы подумать, что учетные данные VPN будут использоваться для рукопожатия. Я бы проверял, что у вашей учетной записи есть соответствующие права входа.

Ответ 4

Убедитесь, что порт, используемый SQL Server, не заблокирован ни вашим брандмауэром, ни VPN.

Ответ 5

У меня также была эта проблема при попытке подключиться удаленно через VPN Hamachi. Я пробовал все доступное в Интернете (включая этот пост), и он все еще не работал. Обратите внимание, что все работает нормально, когда одна и та же база данных была установлена ​​на компьютере в локальной сети. Наконец, я смог добиться успеха, используя следующее исправление: на удаленном компьютере включите IP-адрес в протоколе TCP/IP, например:

На удаленном компьютере запустите диспетчер конфигурации SQL Server, разверните конфигурацию сети SQL Server, выберите "Протоколы для SQLEXPRESS" (или "MSSQLSERVER" ), щелкните правой кнопкой мыши по TCP/IP, в появившемся диалоговом окне перейдите к IP-адресу Адреса и убедитесь, что элемент "IP1" Active=Yes и Enabled=Yes. Обратите внимание на IP-адрес (для меня не нужно было их изменять). Затем запустите и запустите службы SQL Server. После этого убедитесь, что брандмауэр на удаленном компьютере отключен или исключение разрешено для порта 1433, который включает как локальную подсеть, так и подсеть для адреса, указанного в предыдущем диалоговом окне. На вашей локальной машине вы сможете подключиться, установив имя сервера 192.168.1.22\SQLEXPRESS (или [ip address of remote machine]\[SQL server instance name]).

Надеюсь, что это поможет.

Ответ 6

Возможно, у вас нет UDP-порта open/VPN-forwarded, номер порта 1433.

Несмотря на имя клиентского протокола "TCP/IP", mssql использует UDP для битбинга.

Ответ 7

SQL Server использует TCP-порт 1433. Вероятно, это блокируется туннелем VPN или брандмауэром на сервере.

Ответ 8

При подключении к VPN каждое сообщение проходит через VPN-сервер и не может пересылать ваши сообщения на этот порт, на котором работает SQL-сервер.

Try

отключить настройки VPN- > Свойства- > Свойства TCP/IP- > Дополнительно- > Использовать шлюз по умолчанию в удаленной сети.

Таким образом, вы сначала попытаетесь подключить локальный IP-адрес сервера SQL и только затем использовать VPN-сервер для пересылки вам

Ответ 9

У меня проблема с Citrix Access Gateway. Обычно я получаю ошибку тайм-аута. Если вы можете подключиться к базе данных от клиента в сети, но не от удаленного клиента через VPN, вы можете забыть большинство предложенных здесь предложений, потому что все они адресуют проблемы на стороне сервера.

Я могу подключиться, когда я увеличиваю время ожидания от значения по умолчанию (15 секунд) до 60 секунд, и для хорошей меры принудительно передайте протокол TCP/IP. Это можно сделать на экране "Параметры" диалогового окна входа в систему:

`

Ответ 10

Это то, что фиксировало проблему подключения к базе данных SQL Server 2012 через VPN

С Диспетчер конфигурации SQL Server 2012

Я перешел в конфигурацию сети SQL Server

Затем нажал на экземпляр NEW сервера и дважды щелкнул по протоколу TCP/IP [Я также ранее включил эту опцию и перезагрузил сервер, но это еще не исправило его]

Теперь, когда TCP/IP был включен, я отметил, что все слоты IP-портов на вкладке "IP-адреса" диалогового окна "Свойства TCP/IP" были установлены на "Включено" = "Нет".

Мне было любопытно, почему моя новая установка установила все эти IP-слоты в NO, а не Yes, поэтому я просто изменил их на YES.

Теперь соединение с сервером через VPN работает отлично, я не изменил номера портов.

Примечание. У меня также был установлен SQL Server 2008 по умолчанию из Visual Studio 2010, но я не думаю, что это напрямую повлияло на ситуацию TCP/IP. Сотрудник сказал мне, что установки 2008 и 2005 годов, которые поставляются с визуальной студией, могут помешать работе SQL 2012.

Ответ 11

Пока у вас установлен брандмауэр, позволяющий порт, используемый вашим экземпляром SQL Server, все, что вам нужно сделать, это изменить источник данных с =Server name на =IP,Port

т.е. в строке подключения используйте что-то вроде этого.

Data Source=190.190.1.100,1433;

Вам не нужно ничего менять на стороне клиента.

Ответ 12

У меня тоже была проблема с SQL Server 2017.

Я нахожусь в той же сети, что и сервер через VPN, и могу выполнить ping. После разочарования, что никакой метод проверки подлинности не будет работать - я настроил SSH-сервер на SQL-сервере, и я смог нормально подключиться. Это подтвердило, что по какой-то причине правильный порт не попал. Я даже создал новые учетные записи пользователей, учетные записи домена, проверки брандмауэра на обоих концах и т.д....

Решением для меня было: 1. Установить соединение для строгого использования TCP/IP в SSMS 2. Используйте настраиваемую строку, чтобы указать на порт по умолчанию (например: Источник данных = 192.168.168.166,1433;)

Все остальные комментарии выше пока не сработали. Похоже, что было обязательным включать порт (хотя и по умолчанию).

Ответ 13

если вы используете SQL Server 2005, сначала запустите сервис браузера сервера sql