O SSL-VPN conecta um cliente (Windows, Linux, Android ou macOS) à rede privada de uma vpc para permitir acesso seguro pela internet.
Para clientes iOS e iPadOS, consulte Conectar um iPhone ou iPad a uma vpc usando uma conexão SSL-VPN .
Caso de uso
Objetivo: Criar um VPN Gateway com SSL-VPN habilitado para permitir que um cliente local acesse com segurança uma instância ECS em uma vpc usando seu endereço ip privado.
Este cenário utiliza os seguintes recursos:
-
vpc
Nome:
vpc-demoRegião: China (Hangzhou)
Bloco CIDR: 10.0.0.0/16
-
vSwitches: Dois vSwitches chamados
vsw1evsw2.O
vsw1está na zona J com o bloco CIDR 10.0.0.0/24.O
vsw2está na zona K com o bloco CIDR 10.0.1.0/24.
ECS: Uma instância ECS com o endereço ip privado 10.0.0.1, executando o sistema operacional
Alibaba Cloud Linux 3.2104 LTS 64-bit.
Rede local do cliente: 172.16.0.0/16
Etapa 1: Configurar recursos de VPN na nuvem
Antes de conectar um cliente à vpc, crie e configure um VPN Gateway, um servidor SSL e um cliente SSL no console do Alibaba Cloud.
1. Criar um VPN Gateway
O VPN Gateway é o ponto de entrada e saída na nuvem para conexões SSL-VPN.
Acesse a página VPN Gateway e clique em Create VPN Gateway.
-
Na página VPN Gateway, configure os seguintes parâmetros:
Instance Name:
vpn-demoRegion: China (Hangzhou).
vpc: Selecione a vpc que o cliente acessará.
-
vSwitch 1/vSwitch 2: Selecione
vsw1evsw2, respectivamente.As instâncias de VPN Gateway usam arquitetura ativo-ativo. Para garantir alta disponibilidade entre zonas em uma região com suporte a múltiplas zonas, a vpc deve ter pelo menos dois vSwitches em zonas diferentes. Caso esse requisito não seja atendido, crie um vSwitch primeiro.
Maximum Bandwidth: 10 Mbps
IPsec-VPN: Disabled (Esta opção só estará disponível após você ativar o SSL-VPN abaixo.)
SSL-VPN: Enable.
SSL-VPN Connections: 5.
Service-linked Role: Se não existir uma função vinculada ao serviço, clique em Create Service-linked Role.
Para descrições detalhadas dos parâmetros, consulte Criar e gerenciar uma instância de VPN Gateway .
-
Após concluir a compra, a instância de VPN Gateway aparecerá na página VPN Gateway.
Uma instância de VPN Gateway recém-criada fica no estado Preparing . O estado muda para Normal em cerca de 1 a 5 minutos. A instância estará então pronta para uso.
2. Criar um servidor SSL
Um servidor SSL define a rede na nuvem acessível aos clientes e configura o pool de endereços ip dos clientes.
Acesse a página SSL Servers. Na barra de navegação superior, selecione a região China (Hangzhou) e clique em Create SSL Server.
-
No painel Create SSL Server, configure as seguintes definições:
-
Name: Insira
server-demo. -
VPN Gateway: Selecione a instância de VPN Gateway criada anteriormente.
-
Local Network: Insira o bloco CIDR da vpc:
10.0.0.0/16.Este bloco CIDR define a rede na nuvem acessível aos clientes. Geralmente, corresponde ao bloco CIDR da sua vpc.
Mantenha as demais opções com seus valores padrão. Para descrições detalhadas dos parâmetros, consulte Criar e gerenciar um servidor SSL.
-
3. Criar um cliente SSL e baixar o certificado
Um cliente SSL gerencia certificados de cliente. Cada cliente que precisar se conectar deve importar um certificado para autenticação e criptografia.
No painel de navegação à esquerda, escolha Interconnections > VPN > SSL Clients. Na barra de navegação superior, certifique-se de que a região China (Hangzhou) esteja selecionada. Na página SSL Client, clique em Create SSL Client.
No painel Create SSL Client, insira
client-demoem Name, selecioneserver-demoem SSL Server e clique em OK.Na página SSL Client, localize o cliente SSL criado e, na coluna Actions, clique em Download Certificate.
Etapa 2: Configurar o cliente
Siga as instruções correspondentes ao sistema operacional do seu cliente.
Cliente Windows
-
Baixe e instale o cliente OpenVPN para sua versão do Windows:
Windows 64 bits (Intel/AMD): Cliente OpenVPN (Windows 64 bits).
Windows ARM64: Cliente OpenVPN (Windows ARM64).
Se não conseguir abrir o link de download, entre em contato com seu gerente de conta ou com um engenheiro do Alibaba Cloud.
-
Descompacte o pacote de certificados do cliente SSL baixado e copie todos os arquivos extraídos para o diretório de configuração do OpenVPN.
Caminho padrão:
C:\Program Files\OpenVPN\configObservação: Se você alterou o caminho de instalação, copie os arquivos para a pasta config no diretório de instalação.

-
Abra o arquivo
config.ovpncom um editor de texto e adicione a seguinte linha ao final do arquivo:disable-dco.O recurso Data Channel Offload (DCO), introduzido no OpenVPN 2.6, é incompatível com alguns sistemas Windows, como versões específicas do Windows 10 e Windows 11. Desativar o DCO resolve possíveis problemas de conexão nesses dispositivos.
client dev tun proto tcp remote 121.41.xxx resolv-retry infinite nobind persist-key persist-tun ca ca.crt cert vsc-bp1xxx.crt key vsc-bp1xxx.key cipher AES-128-CBC ;comp-lzo verb 4 disable-dco Na bandeja do sistema, clique com o botão direito no ícone do OpenVPN e clique em Connect.
A conexão será bem-sucedida quando o status for "Connected" e um endereço ip for atribuído.
Cliente Linux
-
Execute os comandos a seguir para instalar o cliente OpenVPN e criar o diretório
conf.CentOS
yum install -y openvpn mkdir -p /etc/openvpn/confUbuntu
apt-get update apt-get install -y openvpn mkdir -p /etc/openvpn/conf -
Descompacte o pacote de certificados do cliente SSL baixado e copie os arquivos extraídos para o diretório /etc/openvpn/conf/.

-
Navegue até o diretório /etc/openvpn/conf/ e execute o comando a seguir para estabelecer a conexão VPN.
openvpn --config /etc/openvpn/conf/config.ovpn --daemon -
(Opcional) Configure o processo do OpenVPN para iniciar automaticamente na inicialização.
-
Edite o arquivo /etc/rc.local e adicione os seguintes comandos.
# Open the /etc/rc.local file in edit mode. vi /etc/rc.local # Press i to enter edit mode, then add the following commands to the /etc/rc.local file. cd /etc/openvpn/conf/ openvpn --config /etc/openvpn/conf/config.ovpn --daemon # Press Esc to exit edit mode, then enter the following command to save and exit the file. :wq -
Conceda permissões de execução ao arquivo /etc/rc.local.
chmod +x /etc/rc.local
-
Cliente Android
-
Baixe e instale o cliente OpenVPN para Android.Se não conseguir abrir o link de download, entre em contato com seu gerente de conta ou com um engenheiro do Alibaba Cloud.
Este exemplo usa um dispositivo Android 9.0 com o cliente OpenVPN v3.0.5 instalado.
-
Transfira o pacote de certificados do cliente SSL baixado para o seu dispositivo Android e descompacte-o.
NotaSe o seu dispositivo Android não possuir um utilitário de descompactação, descompacte o pacote de certificados em um computador e transfira os arquivos extraídos para o cliente Android.
Certifique-se de que todos os arquivos extraídos estejam na mesma pasta, conforme mostrado na figura a seguir.

-
Abra o cliente OpenVPN, importe o arquivo
config.ovpne adicione a conexão VPN.
Etapa
Descrição
①
Selecione o método de conexão OVPN Profile.
②
Localize o arquivo
config.ovpnno diretório de armazenamento.③
Clique em IMPORT para importar o arquivo
config.ovpn.④
O sistema lê automaticamente as informações do arquivo
config.ovpne exibe o endereço ip público do gateway de VPN. Clique em ADD para adicionar a conexão VPN. -
Toque no botão de alternância para ativar a conexão VPN.

macOS (GUI)
-
Acesse a página Tunnelblick Releases, localize a versão
Tunnelblick 4.0.1 (build 5971)e baixe o arquivo.dmgno painel Assets. Se não conseguir abrir o link de download, entre em contato com seu gerente de conta ou com um engenheiro do Alibaba Cloud.
-
Instale o software Tunnelblick.

Etapa
Descrição
①
Clique duas vezes no pacote de instalação do Tunnelblick baixado.
②
Clique duas vezes no ícone do Tunnelblick.
③
Selecione I have configuration files.
④
Clique em OK.
Descompacte o pacote de certificados do cliente SSL baixado. Em seguida, arraste o arquivo extraído config.ovpn para o painel Configurations.

|
Etapa |
Descrição |
|
① |
No Launchpad, clique no ícone do Tunnelblick. |
|
② |
Arraste o arquivo extraído |
|
③ |
Selecione Only Me. |
|
④ |
Clique em Connect. |
macOS (CLI)
-
Abra o aplicativo Terminal. Se o Homebrew não estiver instalado no seu Mac, execute o comando a seguir para instalá-lo.
NotaO script de instalação do Homebrew inclui o comando sudo e solicitará sua senha de administrador. Quando a mensagem "Press RETURN/ENTER to continue..." aparecer, pressione Enter para prosseguir.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
-
Execute o comando a seguir para instalar o cliente OpenVPN.
brew install openvpn
-
Descompacte o pacote de certificados do cliente SSL baixado e copie os arquivos para o diretório de configuração.
-
Faça backup do diretório /opt/homebrew/etc/openvpn.
cp -r /opt/homebrew/etc/openvpn /opt/homebrew/etc/openvpn_bak -
Execute o comando a seguir para excluir os arquivos de configuração atuais do OpenVPN.
rm /opt/homebrew/etc/openvpn/* -
Execute o comando a seguir para copiar o pacote de certificados do cliente SSL baixado para o diretório de configuração.
cp /path/to/certs.zip /opt/homebrew/etc/openvpn/Nota/path/to/certs.zipé o caminho para o pacote de certificados do cliente SSL baixado. Geralmente, ele está no diretório Downloads do usuário atual, por exemplo,/Users/example/Downloads/certs.zip.
-
-
Execute os comandos a seguir para descompactar o pacote.
cd /opt/homebrew/etc/openvpn/ unzip /opt/homebrew/etc/openvpn/certs.zip -
Conceda permissões de execução ao arquivo /etc/rc.local.
chmod +x /etc/rc.local
Cliente Android
-
Este tópico utiliza um cliente Android 9.0 com o cliente OpenVPN 3.0.5 instalado.
-
Transfira o certificado do cliente SSL baixado para o seu dispositivo Android e descompacte-o.
NotaSe o seu dispositivo Android não possuir software para descompactar arquivos, descompacte o certificado no seu computador. Em seguida, transfira os arquivos descompactados para o cliente Android.

-
Abra o cliente OpenVPN, importe o arquivo
config.ovpne adicione uma conexão VPN.
Número
Descrição
①
Selecione o método de conexão OVPN Profile.
②
Localize o arquivo
config.ovpnno diretório de armazenamento.③
Clique em IMPORT para importar o arquivo
config.ovpn.④
O sistema lê o arquivo
config.ovpne exibe o endereço ip público do gateway de VPN. Clique em ADD para adicionar a conexão VPN. -
Clique no botão de alternância para ativar a conexão VPN.

Cliente Mac (GUI, recomendado para chips da série M)
-
Acesse a página Tunnelblick Releases, localize a versão
Tunnelblick 4.0.1 (build 5971)e baixe o arquivo.dmgno painel Assets.Se não conseguir abrir o link de download, entre em contato com seu gerente de conta ou com um engenheiro do Alibaba Cloud.
-
Instale o software Tunnelblick.

Nº
Descrição
①
Clique duas vezes no pacote de instalação do Tunnelblick baixado.
②
Clique duas vezes no ícone do Tunnelblick.
③
Selecione I have configuration files.
④
Clique em OK.
Descompacte o certificado do cliente SSL baixado. Arraste o arquivo descompactado config.ovpn para o painel Configurations para criar a conexão VPN.

|
Nº |
Descrição |
|
① |
No Launchpad, clique no ícone do Tunnelblick para abrir o software Tunnelblick. |
|
② |
Arraste o arquivo descompactado |
|
③ |
Selecione Only Me. |
|
④ |
Clique em Connect. |
Cliente Mac (linha de comando)
-
Abra a janela do Terminal. Se o Homebrew não estiver instalado, execute o comando a seguir para instalá-lo.
NotaO script de instalação do Homebrew inclui o comando sudo. Você será solicitado a inserir sua senha de administrador. Quando a mensagem "Press RETURN/ENTER to continue..." aparecer, pressione Enter para continuar.
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
-
Execute o comando a seguir para instalar o cliente OpenVPN.
brew install openvpn
-
Copie o certificado do cliente SSL baixado para o diretório de configuração.
-
Faça backup do diretório /opt/homebrew/etc/openvpn.
cp -r /opt/homebrew/etc/openvpn /opt/homebrew/etc/openvpn_bak -
Execute o comando a seguir para excluir os arquivos de configuração atuais do OpenVPN.
rm /opt/homebrew/etc/openvpn/* -
Execute o comando a seguir para copiar o certificado do cliente SSL baixado para o diretório de configuração.
cp /path/to/certs.zip /opt/homebrew/etc/openvpn/Nota/path/to/certs.zipé o caminho para o certificado do cliente SSL baixado. Geralmente, ele está no diretório Downloads do usuário, como/Users/example/Downloads/certs.zip.
-
-
Execute os comandos a seguir para descompactar o certificado.
cd /opt/homebrew/etc/openvpn/ unzip /opt/homebrew/etc/openvpn/certs.zip -
Escolha como executar o cliente.
Executar em primeiro plano
Execute o comando a seguir para iniciar o processo do cliente e estabelecer uma conexão VPN:
sudo /opt/homebrew/opt/openvpn/sbin/openvpn --config /opt/homebrew/etc/openvpn/config.ovpnApós executar este comando, ele continuará rodando em primeiro plano. Para desconectar, pressione Ctrl+C para interromper o comando.
Executar em segundo plano
Execute os comandos a seguir para rodar o cliente VPN como um serviço em segundo plano que inicia automaticamente na inicialização:
cp config.ovpn openvpn.conf sudo brew services start openvpnPara parar o serviço, execute o seguinte comando:
sudo brew services stop openvpn
Etapa 3: Testar a conectividade
-
Configurar regras de grupo de segurança
Para garantir que os clientes possam acessar recursos na vpc, adicione uma regra de entrada ao grupo de segurança associado à instância ECS, permitindo tráfego do Client CIDR Block (
10.200.200.0/24).Para testes de conectividade: Permita o protocolo ICMP para que o comando
pingfuncione corretamente.Para acesso a serviços: Permita portas específicas exigidas pelos seus serviços, como TCP 22 (SSH), TCP 3389 (RDP) e TCP 80/443 (serviços web).
-
Teste de ping
No seu cliente, use o comando ping para testar a conectividade com a instância ECS. Uma resposta bem-sucedida indica uma conexão privada com a instância ECS:
ping 10.0.0.1
-
Teste de porta de serviço
Para verificar o acesso ao serviço, acesse um serviço em execução na instância ECS. Por exemplo, instale e inicie um serviço web, como o Nginx, na instância ECS:
# Run on the ECS instance (example for Alibaba Cloud Linux 3): yum install -y nginx systemctl start nginx.serviceApós confirmar que o grupo de segurança associado à instância ECS permite tráfego do bloco CIDR do cliente na porta TCP 80, acesse
http://10.0.0.1no navegador do cliente.Se a página de boas-vindas do Nginx aparecer, seus serviços estarão acessíveis.

Perguntas frequentes
Autenticação por nome de usuário e senha
Você pode ativar a autenticação de dois fatores. Isso exige que os clientes se autentiquem usando tanto um certificado quanto um nome de usuário/senha para estabelecer uma conexão SSL-VPN.
Desconectar a VPN no Linux ou macOS
-
Para encontrar o processo do OpenVPN, abra uma linha de comando e execute o comando a seguir. Anote o id do processo.
ps aux | grep openvpn -
Para encerrar o processo do OpenVPN, execute o comando a seguir.
kill -9 <process ID>
Solucionar problemas de conexão
|
Sintoma |
Causa e resolução |
|
Falha na conexão. Por exemplo, os logs do cliente mostram |
1. Problema de rede: Verifique se o dispositivo cliente consegue acessar a internet. Certifique-se de que o firewall da rede local ou software de segurança não esteja bloqueando o acesso do cliente OpenVPN ao endereço ip público e porta (padrão: TCP/1194) do VPN Gateway. 2. Problema de certificado: Verifique se o arquivo |
|
A conexão é bem-sucedida, mas não é possível usar |
1. Regras de grupo de segurança: Esta é a causa mais comum. Faça login no console ECS e verifique o grupo de segurança da instância de destino. Certifique-se de que exista uma regra de entrada permitindo o protocolo 2. Firewall do sistema operacional: Verifique se o firewall do sistema operacional na instância ECS (como firewalld ou iptables) está bloqueando solicitações ICMP. |
|
A conexão é bem-sucedida e o |
1. Regras de grupo de segurança: Verifique o grupo de segurança da instância ECS e garanta que ele permita tráfego do seu Client CIDR Block nas portas de serviço necessárias (por exemplo, TCP 80 e TCP 22). 2. Status de escuta do serviço: Faça login na instância ECS e verifique se o serviço está escutando na porta correta. Por exemplo, em um sistema Linux, você pode executar o comando 3. Firewall do sistema operacional: Faça login na instância ECS e verifique se o firewall do sistema operacional permite tráfego na porta necessária. |
|
Após conectar-se à VPN, não é possível acessar sua rede local (por exemplo, uma impressora) ou a internet. |
Conflito de roteamento: Este problema ocorre se o Client CIDR Block configurado no servidor SSL entrar em conflito com o bloco CIDR da sua rede local. Retorne à Etapa 1, altere o Client CIDR Block no servidor SSL para um intervalo menos comum (como |
|
A instância ECS não consegue iniciar um |
Este é o comportamento esperado. Por motivos de segurança, o firewall do sistema operacional do cliente geralmente bloqueia solicitações de entrada não solicitadas de fontes externas, incluindo o endpoint da VPN. Isso não afeta a capacidade do cliente de acessar recursos na nuvem. Para permitir conexões de entrada provenientes de recursos na nuvem, você deve configurar o firewall do cliente para permitir o tráfego necessário (por exemplo, ICMP para solicitações de ping). |
Para mais informações, consulte as Perguntas frequentes sobre conexão SSL-VPN.