
Setup IPsec VPN — Updated!
Configuração automatizada de servidor VPN IPsec com suporte a IPsec/L2TP, Cisco IPsec e IKEv2. Inclui scripts auxiliares para gerenciamento de usuários e certificados, e gera perfis para clientes iOS, macOS, Android e Windows.
English | 简体中文 | 繁體中文 | 日本語 | Русский
Scripts de configuração automática do servidor VPN IPsec
Configure seu próprio servidor VPN IPsec em apenas alguns minutos, com IPsec/L2TP, Cisco IPsec e IKEv2.
Uma VPN IPsec criptografa o tráfego de rede, para que ninguém entre você e o servidor VPN possa espionar seus dados enquanto eles trafegam pela Internet. Isso é especialmente útil ao usar redes não seguras, por exemplo, em cafeterias, aeroportos ou quartos de hotel.
Usaremos o Libreswan como servidor IPsec e o xl2tpd como provedor L2TP.
Recursos:
- Configuração totalmente automatizada do servidor VPN IPsec, sem necessidade de entrada do usuário
- Suporta IKEv2 com cifras fortes e rápidas (por exemplo, AES-GCM)
- Gera perfis de VPN para configurar automaticamente dispositivos iOS, macOS e Android
- Suporta Windows, macOS, iOS, Android, Chrome OS e Linux como clientes VPN
- Inclui scripts auxiliares para gerenciar usuários e certificados VPN
Também disponível:
- Docker VPN: IPsec VPN, WireGuard, OpenVPN, Headscale
- IA: Self-Hosted AI Stack para LLMs locais, chat, RAG, voz e ferramentas de IA
- 📚 Livros: The Self-Hosted AI Builder’s Guide, Privacy Tools in the Age of AI
Início rápido
Primeiro, prepare seu servidor Linux* com uma instalação de um SO suportado.
Use este comando de uma linha para configurar um servidor VPN IPsec:```bash wget https://get.vpnsetup.net -O vpn.sh && sudo sh vpn.sh
Os detalhes de login da sua VPN serão gerados aleatoriamente e exibidos quando terminar.
> [!TIP]
> Opcionalmente, instale [WireGuard](https://github.com/hwdsl2/wireguard-install), [OpenVPN](https://github.com/hwdsl2/openvpn-install) e/ou [Headscale](https://github.com/hwdsl2/headscale-install) no mesmo servidor.
<details>
<summary>
Veja o script em ação (gravação do terminal).
</summary>
**Nota:** Esta gravação é apenas para fins de demonstração. As credenciais de VPN nesta gravação **NÃO** são válidas.
<p align="center"><img src="https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/raw/master/docs/images/script-demo.svg"></p>
</details>
<details>
<summary>
Clique aqui se não conseguir baixar.
</summary>
Você também pode usar `curl` para baixar:```bash
curl -fsSL https://get.vpnsetup.net -o vpn.sh && sudo sh vpn.sh
URLs alternativos de configuração:```bash https://github.com/hwdsl2/setup-ipsec-vpn/raw/master/vpnsetup.sh https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/raw/master/vpnsetup.sh
Se não conseguir transferir, abra [vpnsetup.sh](https://gitlab.com/hwdsl2/setup-ipsec-vpn/-/blob/master/vpnsetup.sh) e clique no botão `Raw` à direita. Prima `Ctrl/Cmd+A` para selecionar tudo, `Ctrl/Cmd+C` para copiar e cole no seu editor preferido.
</details>
Também está disponível uma [imagem Docker](https://github.com/hwdsl2/docker-ipsec-vpn-server) pré-criada. Para outras opções e configuração de clientes, leia as secções abaixo.
\* Um servidor na nuvem, servidor virtual privado (VPS) ou servidor dedicado.
## Comunidade
- 📬 [Subscreva para receber atualizações do projeto](https://selfhostedstack.beehiiv.com/subscribe?utm_campaign=vpn) (1–2 e-mails/mês) — receba guias gratuitos de implementação de VPN e IA (PDF)
- 💬 Junte-se à comunidade [r/selfhostedstack](https://www.reddit.com/r/selfhostedstack/) para discussões
- ⭐ Marque o repositório com uma estrela se o achar útil — isso ajuda outras pessoas a descobri-lo
## Requisitos
Um servidor na nuvem, servidor virtual privado (VPS) ou servidor dedicado, com uma instalação de:
- Ubuntu 26.04, 24.04 ou 22.04
- Debian 13, 12 ou 11
- CentOS Stream 10 ou 9
- Rocky Linux ou AlmaLinux
- Oracle Linux
<details>
<summary>
Outras distribuições Linux suportadas.
</summary>
- Raspberry Pi OS (Raspbian)
- Kali Linux
- Alpine Linux
- Red Hat Enterprise Linux (RHEL)
</details>
Isto também inclui VMs Linux em nuvens públicas, como [DigitalOcean](https://blog.ls20.com/digitalocean), [Vultr](https://blog.ls20.com/vultr), [Linode](https://blog.ls20.com/linode), [OVH](https://www.ovhcloud.com/en/vps/) e [Microsoft Azure](https://azure.microsoft.com). Utilizadores de nuvens públicas também podem implementar usando [user data](https://blog.ls20.com/ipsec-l2tp-vpn-auto-setup-for-ubuntu-12-04-on-amazon-ec2/#vpnsetup).
Implementação rápida em:
[](https://cloud.linode.com/stackscripts/37239) [](azure/README.md)
[**» Quero executar a minha própria VPN, mas não tenho um servidor para isso**](https://blog.ls20.com/ipsec-l2tp-vpn-auto-setup-for-ubuntu-12-04-on-amazon-ec2/#gettingavps)
Para servidores com firewall externo (ex.: [EC2](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-security-groups.html)/[GCE](https://cloud.google.com/vpc/docs/firewalls)), abra as portas UDP 500 e 4500 para a VPN.
Também está disponível uma [imagem Docker](https://github.com/hwdsl2/docker-ipsec-vpn-server) pré-criada. Utilizadores avançados podem instalar num [Raspberry Pi](https://www.raspberrypi.com). [[1]](https://elasticbyte.net/posts/setting-up-a-native-cisco-ipsec-vpn-server-using-a-raspberry-pi/) [[2]](https://www.stewright.me/2018/07/create-a-raspberry-pi-vpn-server-using-l2tpipsec/)
> [!WARNING]
> **NÃO** execute estes scripts no seu PC ou Mac! Devem ser usados apenas num servidor!
## Instalação
Primeiro, atualize o seu servidor com `sudo apt-get update && sudo apt-get dist-upgrade` (Ubuntu/Debian) ou `sudo yum update` e reinicie. Isto é opcional, mas recomendado.
Para instalar a VPN, escolha uma das seguintes opções:
**Opção 1:** Deixe o script gerar credenciais VPN aleatórias para si (serão apresentadas quando terminar).```bash
wget https://get.vpnsetup.net -O vpn.sh && sudo sh vpn.sh
Opção 2: Edite o script e forneça as suas próprias credenciais de VPN.```bash wget https://get.vpnsetup.net -O vpn.sh nano -w vpn.sh [Replace with your own values: YOUR_IPSEC_PSK, YOUR_USERNAME and YOUR_PASSWORD] sudo sh vpn.sh
> [!NOTE]
> Uma PSK IPsec segura deve consistir em pelo menos 20 caracteres aleatórios.