Como configurar um túnel VPN Point-to-Site no Azure
Nov 14, 2022
Este post guia você pelos passos de configuração de uma conexão VPN ponto a ponto a partir de um servidor Windows executando Netwrix Access Analyzer para que você possa descobrir e monitorar todos os seus bancos de dados SQL do Azure.
Contexto
Quando você hospeda bancos de dados SQL na nuvem da Microsoft Azure, pode ser necessário acessar esses bancos de dados a partir de redes externas. Existem duas maneiras de configurar a conectividade:
- Ponto de extremidade público— Um ponto de extremidade público pode ser definido para cada banco de dados Azure SQL que permite acesso por aplicações externas. Para segurança, isso requer a lista de permissões dos endereços IP (endereços do cliente) do pool de endereços de rede externa que precisa de acesso ao banco de dados.
- Virtual Private Network (VPN)— Alternativamente, você pode configurar uma conexão VPN entre a rede externa ou aplicativo e o ambiente Azure que hospeda os bancos de dados Azure SQL. Esta opção não exige a definição de pontos finais públicos para os bancos de dados Azure SQL. A conexão VPN pode ser site-to-site ou point-to-site:
- Uma conexão de VPN de site-to-site permite que aplicações executando em uma rede externa inteira acessem sem problemas os bancos de dados Azure SQL.
- Uma conexão VPN point-to-site é específica para um computador cliente individual que está fora do Azure. Esta é a opção abordada por esta postagem no blog.
Configuração de VPN Point-to-Site do Azure
Passo 1. Crie um certificado raiz.
É necessário um certificado de cliente para autenticação ao usar a autenticação de certificado do Azure, portanto, o primeiro passo é criar e exportar um certificado raiz autoassinado. Execute o script do PowerShell abaixo em um computador com Windows 10 ou Windows Server 2016. (Alternativamente, se você tiver o Windows 10 SDK instalado, pode usar a utilidade makecert para criar um certificado autoassinado.)
$cert = New-SelfSignedCertificate -Type Custom -KeySpec Signature `
-Subject “CN=AzureRootCert” -KeyExportPolicy Exportable `
-HashAlgorithm sha256 -KeyLength 2048 `
-CertStoreLocation “Cert:CurrentUserMy” -KeyUsageProperty Sign -KeyUsage CertSign
Este script cria um certificado raiz chamado AzureRootCert em Certificados-Usuário atualPersonalCertificate. Ele pode ser visualizado usando a Ferramenta de Gerenciamento de Certificados (certmgr.exe):
Passo 2. Crie um certificado de cliente.
Crie um certificado de cliente usando o script PowerShell abaixo. O script irá gerar uma chave que será válida por 6 anos a partir da data de criação; ajuste o número conforme suas necessidades.
New-SelfSignedCertificate -Type Custom -DnsName P2SChildCert -KeySpec Signature `
-Subject “CN=AzureChildCert” -KeyExportPolicy Exportable `
-HashAlgorithm sha256 -KeyLength 2048 `
-CertStoreLocation “Cert:CurrentUserMy” `
-NotAfter (Get-Date).AddYears(6)`
-Signer $cert -TextExtension @(“2.5.29.37={text}1.3.6.1.5.5.7.3.2”)
Isso cria um certificado de cliente chamado AzureChildCert em ‘Certificates-Current userPersonalCertificate’. Também pode ser visualizado usando a Ferramenta de Gerenciamento de Certificados:
Etapa 3. Exporte a parte da chave pública do certificado raiz.
Em seguida, precisamos exportar a parte da chave pública do certificado raiz criado na Etapa 1.
3.1. Para começar, inicie o Assistente de Exportação de Certificado conforme mostrado abaixo:
3.2. Na tela de boas-vindas do Assistente de Exportação de Certificado, clique em Próximo para continuar.
3.3. Na tela “Export Private Key”, escolha a opção padrão “No, do not export the private key” e clique em Próximo.
3.4. Na tela “Formato do Arquivo de Exportação”, escolha a opção Base-64 encoded X.509 (.CER) e clique em Próximo.
3.5. Na tela “File to Export”, navegue até o local onde deseja salvar o certificado, especifique o nome do certificado e clique em Next.
3.6. Na tela seguinte, clique em Finish para exportar o certificado. As informações deste arquivo serão necessárias nos passos subsequentes para a configuração da VPN Azure.
Passo 4. Exporte o certificado do cliente (opcional).
Este passo é necessário apenas se você precisar configurar uma conexão VPN para o Azure a partir de servidores diferentes daquele que foi usado para criar os certificados.
4.1. Inicie o Assistente de Exportação de Certificado conforme mostrado abaixo:
4.2. Na tela de boas-vindas do Assistente de Exportação de Certificado, clique em Próximo para continuar.
4.3. Na tela Exportar Chave Privada, escolha Sim, exportar a chave privada, e então clique em Próximo.
4.4. Escolha as opções padrão na tela de Formato de Arquivo de Exportação:
4.5. Especifique uma senha para o certificado do cliente. Uma vez que este certificado pode ser usado para autenticar-se na VPN Azure, certifique-se de protegê-lo com uma senha forte.
4.6. Na tela do assistente de Exportação de Arquivo, forneça um nome de arquivo e clique em Próximo.
4.7. Verifique suas configurações e clique em Finish para exportar o certificado.
Passo 5. Configure o gateway de rede virtual.
Em seguida, você precisa fazer login no portal Azure e procurar um gateway de rede virtual. Se não existir nenhum, crie um (consulte a documentação do Azure para criar uma rede virtual e uma sub-rede de Gateway) antes de prosseguir.
5.1. Clique no hiperlink do gateway de rede virtual. O meu é chamado de Gateway-pkjuebl4yqscro.
5.2. Na tela de configuração, clique no link de Point-to-site configuration.
5.3. Localize o certificado raiz que você exportou no Passo 3 e abra-o em um editor de texto de sua escolha. O conteúdo do certificado será semelhante à captura de tela abaixo. Estou mostrando propositalmente todo o conteúdo dos dados do certificado, pois não tenho intenção de deixá-lo permanentemente no Azure; eu o criei apenas para o propósito de escrever este blog.
5.4. No editor de texto, exclua as quebras de linha, pois o Azure espera que todos os dados do certificado estejam em uma única linha. Tenha cuidado para não excluir nenhum caractere da chave! Em seguida, copie os dados do certificado para a área de transferência.
5.5. Agora volte para a tela de configuração Point-to-Site do gateway de rede virtual no portal Azure. Na seção Root Certificate da página:
- Forneça um nome para o certificado.
- Cole o conteúdo do certificado do Passo 5.3 no campo de Public certificate data
- Certifique-se de que o Tunnel Type está definido como IKEv2 e SSTP (SSL) e o tipo de Authentication está definido como Azure certificate.
Clique em Save para salvar as configurações.
Passo 6. Baixe e execute o pacote do cliente VPN.
6.1. Neste ponto, você deve baixar o cliente VPN usando o link mostrado na captura de tela a seguir:
6.2. O download é um arquivo zip com três diretórios. Dois deles possuem os arquivos de instalação do software cliente VPN para plataformas de 32 bits e 64 bits. O terceiro diretório, chamado Generic, contém os arquivos de informação de configuração da VPN.
Supondo que você esteja usando um sistema operacional Windows de 64 bits, navegue até o diretório WindowsAmd64 e execute o pacote do cliente VPN. Isso criará uma vnet Azure chamada vnet-xxxxxxx. No meu caso, o nome era vnet-fvmisql.
Passo 7. Configure a conexão VPN.
Selecione o novo perfil de conexão VPN e clique em Connect. Se funcionar para você (e eu sinceramente espero que funcione), está tudo pronto!
No entanto, pode não funcionar. Você pode receber o erro “Error 798 – A certificate could not be found that can be used with this Extensible Authentication Protocol”. Nesse caso, será necessário configurar uma conexão VPN manualmente, conforme detalhado abaixo.
Passo 8. Se necessário, configure uma conexão VPN manualmente.
Se você está planejando configurar a conexão VPN em outro computador, então precisa importar o certificado do cliente para esse computador.
8.1. Abra o Centro de Rede e Compartilhamento e clique em Configurar uma nova conexão ou rede.
8.2. Na tela “Escolha uma opção de conexão”, escolha Connect to a workplace e clique em Próximo.
8.3. Na tela “Deseja usar uma conexão que já possui?” escolha a opção No, create a new connection e clique em Next.
8.4. Na tela “Como você deseja se conectar?”, clique na opção Use my Internet connection (VPN) option
8.5. Navegue até a pasta Generic do pacote do cliente VPN que você baixou do Azure. Abra o arquivo VpnSettings e copie o nome público do gateway VPN do Azure.
8.6. Na tela “Digite o endereço da Internet para se conectar”, cole o texto copiado na caixa “Endereço da Internet”. Forneça um nome de destino e deixe todas as outras opções em suas configurações padrão. Clique em Criar.
8.7. Volte para o Network and Sharing Center e clique no link Change adapter settings. Clique com o botão direito na conexão VPN que você configurou e escolha Properties. Verifique o endereço VPN ou o nome do host.
8.8. Acesse a aba Segurança. Em “Criptografia de dados”, escolha a opção Exigir criptografia (desconectar se o servidor recusar). Para “Autenticação”, escolha a opção Microsoft Smart Card ou outro certificado (criptografia ativada).
8.9. Clique no botão Propriedades na seção Autenticação. Escolha a opção Usar um certificado neste computador e clique em OK.
8.10. Clique na aba Internet Protocol Version 4 (TCP/IPv4) e escolha a opção Properties botão.
8.11. Clique no botão Avançado. Na guia Configurações de IP, desmarque a caixa Usar gateway padrão na rede remota e clique em OK.
8.12. Na barra de tarefas, clique no ícone de rede. Escolha o perfil de conexão VPN Azure que você acabou de criar e clique em Connect.
Agora você deve estar conectado ao gateway VPN do Azure e capaz de começar a interagir com os bancos de dados SQL do Azure usando seu ponto de extremidade privado.
Se você configurar seu gateway VPN em um servidor local executando Netwrix StealthAUDIT, poderá executar o trabalho Netwrix StealthAUDIT for Azure SQL e começar a auditar seu ambiente Azure SQL.
Garantindo a segurança dos seus bancos de dados SQL Server
O SQL Server frequentemente contém informações muito sensíveis, sendo assim um alvo principal para atacantes. Como as instâncias de banco de dados SQL muitas vezes se espalham pela rede, os administradores de banco de dados (DBAs) necessitam de ferramentas eficazes para proteger adequadamente os dados sensíveis que eles contêm.
Netwrix Access Analyzer pode ajudar. Ele pode relatar sobre permissões de usuário e configurações de banco de dados, fornecer avaliações de vulnerabilidade completas e descobrir dados sensíveis armazenados nos seus bancos de dados Azure SQL. Ele também pode monitorar a atividade do usuário nos seus bancos de dados SQL, e até auditar ações específicas baseadas no tipo de instrução SQL executada ou uma combinação de critérios como o nome de usuário, aplicativo e tempo de execução.
Proteja seu SQL com Netwrix Access Analyzer
FAQ
O que são VPN ponto a ponto e VPN site a site?
Uma conexão VPN ponto a ponto é específica para um servidor ou desktop que está fora do Azure, enquanto uma conexão VPN site a site é para uma rede inteira para o Azure.
Quais tipos de VPN são suportados pelo Azure point-to-site?
O Azure point-to-site VPN suporta três tipos de conexões VPN: Secure Socket Tunneling Protocol (SSTP), OpenVPN e IKEv2 VPN.
Compartilhar em
Saiba Mais
Sobre o autor
Joe Dibley
Pesquisador de Segurança
Pesquisador de Segurança na Netwrix e membro da Equipe de Pesquisa de Segurança da Netwrix. Joe é um especialista em Active Directory, Windows e uma ampla variedade de plataformas de software empresarial e tecnologias, Joe pesquisa novos riscos de segurança, técnicas de ataque complexas e as respectivas mitigações e detecções.
Saiba mais sobre este assunto
Leis de Privacidade de Dados por Estado: Abordagens Diferentes para a Proteção da Privacidade
Exemplo de Análise de Risco: Como Avaliar Riscos
O Triângulo da CIA e Sua Aplicação no Mundo Real
O que é Gerenciamento de Registros Eletrônicos?
Análise de Risco Quantitativa: Expectativa de Perda Anual