Come configurare Hailbytes VPN per il tuo ambiente AWS
Introduzione
In questo articolo esamineremo come configurare la VPN HailBytes sulla tua rete, una VPN e un firewall semplici e sicuri per la tua rete. Ulteriori dettagli e specifiche specifiche possono essere trovati nella nostra documentazione per sviluppatori collegata qui.
PREPARAZIONE
1. Requisiti delle risorse:
- Ti consigliamo di iniziare con 1 vCPU e 1 GB di RAM prima di aumentare la scalabilità.
- Per le distribuzioni basate su Omnibus su server con meno di 1 GB di memoria, è necessario attivare lo scambio per evitare che il kernel Linux interrompa inaspettatamente i processi Firezone.
- 1 vCPU dovrebbe essere sufficiente a saturare un collegamento da 1 Gbps per la VPN.
2. Crea record DNS: Firezone richiede un nome di dominio appropriato per l'uso in produzione, ad es. firezone.company.com. Sarà richiesta la creazione di un record DNS appropriato come il record A, CNAME o AAAA.
3. Configura SSL: avrai bisogno di un certificato SSL valido per utilizzare Firezone a livello di produzione. Firezone supporta ACME per il provisioning automatico di certificati SSL per installazioni basate su Docker e Omnibus.
4. Porte firewall aperte: Firezone utilizza le porte 51820/udp e 443/tcp rispettivamente per il traffico HTTPS e WireGuard. Potrai modificare queste porte successivamente nel file di configurazione.
Distribuisci su Docker (consigliato)
1. Prerequisiti:
- Assicurati di utilizzare una piattaforma supportata con docker-compose versione 2 o successiva installata.
- Assicurati che il port forwarding sia abilitato sul firewall. Per impostazione predefinita, è necessario che siano aperte le seguenti porte:
o 80/tcp (facoltativo): emissione automatica di certificati SSL
o 443/tcp: accesso all'interfaccia utente web
o 51820/udp: porta di ascolto del traffico VPN
2. Installa server Opzione I: installazione automatica (consigliata)
- Run installation script: bash <(curl -fsSL https://github.com/firezone/firezone/raw/master/scripts/install.sh) 1889d1a18e090c-0ec2bae288f1e2-26031d51-144000-1889d1a18e11c6c
- Ti verranno poste alcune domande relative alla configurazione iniziale prima di scaricare un file docker-compose.yml di esempio. Ti consigliamo di configurarlo con le tue risposte e stampare le istruzioni per accedere all'interfaccia utente Web.
- Indirizzo predefinito di Firezone: $HOME/.firezone.
2. Installa Server Opzione II: installazione manuale
- Scarica il modello di composizione della finestra mobile in una directory di lavoro locale
– Linux: curl -fsSL https://raw.githubusercontent.com/firezone/firezone/master/docker-compose.prod.yml -o docker-compose.yml
– macOS o Windows: curl -fsSL https://raw.githubusercontent.com/firezone/firezone/master/docker-compose.desktop.yml -o docker-compose.yml
- Genera i segreti richiesti: docker run –rm firezone/firezone bin/gen-env > .env
- Modificare le variabili DEFAULT_ADMIN_EMAIL e EXTERNAL_URL. Modificare altri segreti secondo necessità.
- Migrare il database: docker compose run –rm firezone bin/migrate
- Crea un account amministratore: docker compose run –rm firezone bin/create-or-reset-admin
- Attiva i servizi: la finestra mobile compone -d
- Dovresti essere in grado di accedere all'interfaccia utente di Firezome tramite la variabile EXTERNAL_URL definita sopra.
3. Abilita all'avvio (facoltativo):
- Assicurati che Docker sia abilitato all'avvio: sudo systemctl abilita docker
- I servizi Firezone dovrebbero avere l'opzione restart: sempre o restart: less-stopped specificata nel file docker-compose.yml.
4. Abilita la instradabilità pubblica IPv6 (facoltativo):
- Aggiungi quanto segue a /etc/docker/daemon.json per abilitare NAT IPv6 e configurare l'inoltro IPv6 per i contenitori Docker.
- Abilita le notifiche del router all'avvio per l'interfaccia di uscita predefinita: egress=`ip route show default 0.0.0.0/0 | grep -oP '(?> /etc/sysctl.conf”
- Riavvia ed esegui il test eseguendo il ping su Google dal contenitore docker: docker run –rm -t busybox ping6 -c 4 google.com
- Non è necessario aggiungere alcuna regola iptables per abilitare SNAT/masquerading IPv6 per il traffico in tunnel. Firezone se ne occuperà.
5. Installa le app client
Ora puoi aggiungere utenti alla tua rete e configurare le istruzioni per stabilire una sessione VPN.
Posta installazione
Congratulazioni, hai completato la configurazione! Potresti voler controllare la nostra documentazione per sviluppatori per ulteriori configurazioni, considerazioni sulla sicurezza e funzionalità avanzate: https://www.firezone.dev/docs/