Se entendi o que li, tudo o que você precisa fazer para permitir o acesso remoto ao SQL Server é abrir a porta TCP 1433 no firewall do Windows. Mas isso deixará seu servidor aberto para toda a Internet e o próprio SQL Server não fornece mais ferramentas para ajustar a origem das conexões.
Existe uma maneira de conceder acesso a essa porta apenas para conexões de um endereço IP estático conhecido?
Eu uso o Firewall do Windows e o Powershell para isso. A menos, é claro, que você queira obter algo como ScaleArc para atuar como um proxy reverso. Suas opções serão realmente limitadas a algo que utiliza uma dessas tecnologias. Firewall/IPSec ou um proxy reverso.
Este é o esboço do script que uso para verificar as portas em que a regra existe neste ambiente e adicioná-la. Especifique -RemoteAddress para limitar o acesso apenas a determinados IPs:
Documentos New-NetFirewallRule
.
Script PowerShell:
O firewall do Windows permite filtrar por endereço IP pronto para uso, só que você não pode escolher no assistente de nova regra . Você deve primeiro criar uma regra e depois editar suas propriedades:
Você pode controlar isso por meio de sua rede e sua infraestrutura de roteamento/comutação. Sempre que tive situações semelhantes, nossa equipe de rede limitava o acesso à sub-rede em que o SQL está conectado a determinadas sub-redes. Por exemplo, você deseja que seus desenvolvedores internos tenham acesso aos sistemas de desenvolvimento, mas não aos sistemas de produção. Em vez de limitar isso apenas por ID do Windows ou usuários SQL, você também pode abrir uma rota/túnel para a sub-rede em que o SQL está, para/da sub-rede em que seus desenvolvedores estão. contas SQL, mas também por sub-rede/rede.