С базой данных SQL Sever, которая находится на удаленном выделенном сервере, я могу работать с помощью SQL Server Management Studio, установленной либо на том же сервере, либо на моем локальном компьютере. В первом случае я должен работать с использованием удаленного рабочего стола, и это немного замедляет работу. Во втором случае мне нужно открыть дополнительный порт в брандмауэре сервера, но у меня будет более удобный пользовательский интерфейс.
Какова рекомендуемая практика этих двух?
sql-server
ssms
рем
источник
источник
Ответы:
Открытие SQL-сервера для прямых внешних подключений - это идея, которую следует избегать, если вы можете - вы значительно увеличиваете видимую поверхность для атаки, и любое взаимодействие между вами и сервером (за исключением учетных данных для входа на этапе аутентификации, возможно) не будет зашифрованы. Если вы должны открыть порт, убедитесь, что он открыт только для вашего фиксированного IP-адреса (ов) (при условии, что у вас есть фиксированные адреса, которые не используются кем-то еще, т. Е. Вы не используете провайдера, у которого вы находитесь за механизмом NAT, таким как большинство провайдеров мобильного интернета).
Гораздо лучшим вариантом было бы установить настройку VPN (например, OpenVPN ) или службу SSH ( Cygwinвключает порт общего стандартного OpenSSH, который я финансирую в настоящее время хорошо работает в качестве службы под Windows 2003 и 2008), через который вы можете туннелировать соединение. Таким образом, SSH или VPN обрабатывают как аутентификацию, так и шифрование, и добавляют (при условии, что у вас есть безопасные пароли / ключи) значительный уровень защиты, который не будет иметь непосредственно открытый порт. Поддержка сжатия, которую они предлагают, поможет время отклика для любых запросов, которые также возвращают больше, чем небольшой объем данных. Компоновка на основе SSHd может быть проще в настройке, особенно если вы, конечно, уже знакомы с SSH, хотя большинство настоящих VPN (например, OpenVPN) имеют преимущество в том, что связь через них с большей вероятностью выдержит короткое отключение связи (например, потеря маршрутизатора ADSL). синхронизировать и переподключить). Опция VPN также менее хлопотна, если на целевом компьютере или на целевом сайте работает несколько экземпляров SQL-сервера. Я успешно использовал оба метода для ряда вещей, включая общение с SQL Server с использованием локальных версий стандартных инструментов, и обнаружил, что они хорошо работают (хотя все мои серверы OpenVPN работают на Linux, но мне сказали, что это хорошо сервер на винде тоже).
Подключение к удаленной машине (в) напрямую, как это, может быть очень удобным, но имейте в виду, что даже при тщательной настройке VPN вы увеличиваете количество машин, на которых работает ваш SQL Server, особенно если это производственная система с вашим Реальные данные пользователя, убедитесь, что вы нашли время, чтобы убедиться, что машины, которые могут видеть сервер через VPN / туннель, сами защищены и не заражены (вы, вероятно, уже делаете это, конечно, но это всегда стоит перезапускать!).
источник
Я знаю, что для этого нужно установить VPN-соединение с другим сайтом, что исключает необходимость открытия порта и поддержания безопасности установки, устраняя необходимость в RDP на другом сервере. Конечно, вы рискуете разорвать соединение во время работы, что может привести к преждевременному завершению запросов, но в остальном ... это то, что мы делаем, и это хорошо работает для нас.
Если вы собираетесь использовать их на регулярной основе удаленно, вы можете посмотреть полупостоянное VPN-соединение (я уверен, что есть более подходящее имя ... VPN-мост?), Которое позволит вам просто подключаться по IP-адресу. Сетевой парень может весить лучше здесь.
источник
В нашем офисе у нас есть два брандмауэра, один брандмауэр для общедоступного интернета и один для внутренней сети. Если вы находитесь во внутренней сети, вы можете подключиться к серверу SQL напрямую. Если вы во внешнем Интернете, вы не можете, потому что порт не открыт на брандмауэре. Если вы хотите подключиться через Интернет, вы должны войти через VPN.
источник
В нашем офисе у нас есть постоянный VPN ко всем серверам БД, и мы работаем с локальной Management Studio через удаленные серверы. Использование удаленного рабочего стола немного медленнее, чем использование локальных инструментов.
Когда действительно требуется подключение к удаленному рабочему столу, вы можете использовать какой-нибудь бесплатный инструмент (например, Royal TS) и хранить все подключения к серверу в зашифрованном файле и использовать его только при необходимости.
источник