Com um banco de dados SQL Server que está em um servidor dedicado hospedado remoto, posso trabalhar usando o SQL Server Management Studio instalado no mesmo servidor ou no meu computador local. No primeiro caso, devo trabalhar usando a Área de Trabalho Remota e isso torna o trabalho um pouco mais lento. No segundo caso, preciso abrir uma porta adicional no firewall do servidor, mas terei uma experiência de usuário mais confortável.
Qual é a prática recomendada desses dois?
A maneira que conheço de fazer isso é estabelecer uma conexão VPN com o outro site, eclipsando assim a necessidade de abrir uma porta e manter a segurança da configuração, eliminando a necessidade de RDP no outro servidor. Concedido, você corre o risco de perder uma conexão enquanto estiver trabalhando, possivelmente encerrando as consultas prematuramente, mas caso contrário ... é o que fazemos e funciona bem para nós.
Se você for usá-los remotamente regularmente, poderá procurar uma conexão VPN semipermanente (tenho certeza de que há um nome melhor .. Ponte VPN?) Que permitirá que você se conecte apenas por endereço IP. Um cara de rede pode pesar melhor aqui.
Abrir o servidor SQL para conexões externas diretas é uma ideia a ser evitada, se puder - você está aumentando significativamente sua área de superfície visível para ataque e qualquer comunicação entre você e o servidor (além das credenciais de login na fase de autenticação, talvez) não será criptografado. Se você precisar abrir a porta, verifique se ela está aberta apenas para o(s) seu(s) endereço(s) IP fixo(s) (supondo que você tenha endereços fixos que não são compartilhados por mais ninguém, ou seja, você não está usando um ISP que o tenha por trás de um arranjo NAT como maioria dos provedores de internet móvel).
Uma opção muito melhor seria instalar uma configuração de VPN (como OpenVPN , por exemplo) ou um serviço SSH ( Cygwininclui uma porta do OpenSSH padrão comum que eu financiei atualmente funciona bem como um serviço no Windows 2003 e 2008) através do qual você pode encapsular uma conexão. Dessa forma, o SSH ou a VPN lidam com autenticação e criptografia e adicionam (supondo que você tenha senhas/chaves seguras) uma camada significativa de proteção que uma porta aberta diretamente não teria. O suporte de compactação que eles oferecem também ajudará os tempos de resposta para quaisquer consultas que retornem mais do que uma pequena quantidade de dados. Um arranjo baseado em SSHd pode ser mais fácil de configurar, especialmente se você já estiver familiarizado com SSH, embora a maioria das verdadeiras VPNs (como OpenVPN) tenha a vantagem de que a comunicação sobre elas é mais provável de sobreviver a curtos blecautes de comunicação (como um roteador ADSL perdendo sincronizar e reconectar). A opção VPN também é menos complicada se você tiver várias instâncias do servidor SQL em execução na máquina de destino ou no site de destino. Eu usei ambos os métodos com sucesso para várias coisas, incluindo falar com o SQL Server usando versões locais das ferramentas padrão e descobri que eles funcionam bem (embora meus servidores OpenVPN estejam todos no Linux, mas me disseram que funciona bem como servidor no Windows também).
Conectar-se à máquina remota (in)diretamente dessa maneira pode ser muito conveniente, mas lembre-se de que mesmo com uma configuração VPN cuidadosa, você está aumentando a quantidade de máquinas às quais seu SQL Server está exposto, especialmente se for um sistema de produção com seu os dados reais do usuário, certifique-se de reservar um tempo para garantir que as máquinas que podem ver o servidor pela VPN/túnel estejam seguras e não infectadas (você provavelmente já fez isso, é claro, mas sempre vale a pena reafirmar!).
Em nosso escritório temos dois firewalls um firewall para a internet pública e outro para a rede interna. Se você estiver na rede interna, poderá se conectar diretamente ao servidor SQL. Se você na Internet externa não pode, porque a porta não está aberta no firewall. Se você deseja se conectar através da Internet, você deve fazer o login através de VPN.
Em nosso escritório, temos uma VPN permanente para todos os servidores db e trabalhamos com o Management Studio local em servidores remotos. Usar a área de trabalho remota é um pouco mais lento do que ter a aparência das ferramentas locais :).
Quando a conexão de área de trabalho remota é realmente necessária, você pode usar alguma ferramenta gratuita (como o Royal TS) e manter todas as conexões do servidor em um arquivo criptografado e usá-lo somente quando necessário.