Olá Eduardo,
Ben vindo ao fórum. Tenho certeza que você irá encontrar muita ajuda aqui, quando necessitar.
Quanto às suas dúvidas:
1) Pelo que entendi, sua aplicação vai se conectar ao banco de dados dos clientes (se estiver errado, por favor me corrija). Nesse caso, se a conexão for através da rede pública (internet) você precisará estabelecer uma conexão de sua rede à rede do cliente
através de VPN site-to-site, se o servidor de SQL Server não possuir um ip público. Se o servidor tiver um ip público, não precisa da VPN, porém é uma ótima prática criar uma regra no firewall permitindo a conexão à porta 1433 apenas para o(s) ip(s) do servidor
da aplicação. Se a conexão for através de links PAP, você estará com conexão direta à rede do cliente, nesse caso não haveria necessidade da VPN;
2) As regras devem ser estabelecidas de acordo com os acessos que a aplicação terá ao banco, permissão de logar no SQL e acesso àpenas ao banco;
3) segue alguns links com informações que podem te ajudar:
Configuração de portas TCP no SQL Server: http://angmaximo.wordpress.com/2012/06/16/configurando-portas-tcp/
Server Roles: http://msdn.microsoft.com/en-us/library/ms188659.aspx
Database Server role: http://msdn.microsoft.com/en-us/library/ms189121.aspx
Configuração de vpn: http://technet.microsoft.com/pt-br/library/cc725734(v=ws.10)
De qualquer forma, converse com o responsável pela rede do seu cliente, para entenderem a topologia da rede e definirem a forma mais segura de acesso às informações.
Espero ter ajudado.
Angelo Máximo
MCSA Windows 2003 | MCTS SQL Server 2008
angmms@gmail.com
http://angmaximo.wordpress.com/