如何为您的 AWS 环境设置 Hailbytes VPN

介绍

在本文中,我们将介绍如何在您的网络上设置 HailBytes VPN,这是一个适合您的网络的简单而安全的 VPN 和防火墙。 更多详细信息和具体规格可以在我们链接的开发人员文档中找到 相关信息.

考前准备

   1、资源要求:

  • 我们建议在扩展之前从 1 个 vCPU 和 1 GB RAM 开始。
  • 对于内存小于 1 GB 的服务器上基于 Omnibus 的部署,您应该打开交换以避免 Linux 内核意外终止 Firezone 进程。
  • 1 个 vCPU 应足以使 VPN 的 1 Gbps 链路饱和。
 

   2.  创建 DNS 记录:Firezone 需要一个适合生产使用的域名,例如 firezone.company.com。 需要创建适当的 DNS 记录,例如 A、CNAME 或 AAAA 记录。

   3.  设置 SSL:您需要有效的 SSL 证书才能在生产环境中使用 Firezone。 Firezone 支持 ACME 为基于 Docker 和 Omnibus 的安装自动配置 SSL 证书。

   4.  开放防火墙端口:Firezone 对 HTTPS 和 WireGuard 流量分别使用端口 51820/udp 和 443/tcp。 您可以稍后在配置文件中更改这些端口。

在 Docker 上部署(推荐)

   1.先决条件:

  • 确保您位于受支持的平台上并安装了 docker-compose 版本 2 或更高版本。

 

  • 确保防火墙上启用了端口转发。 默认情况下需要打开以下端口:

         o 80/tcp(可选):自动颁发SSL证书

         o 443/tcp:访问 Web UI

         o 51820/udp:VPN 流量监听端口

  2.  安装服务器选项一:自动安装(推荐)

  • Run installation script: bash <(curl -fsSL https://github.com/firezone/firezone/raw/master/scripts/install.sh) 1889d1a18e090c-0ec2bae288f1e2-26031d51-144000-1889d1a18e11c6c

 

  • 在下载示例 docker-compose.yml 文件之前,它会询问您一些有关初始配置的问题。 您将需要使用您的响应来配置它,并打印访问 Web UI 的说明。

 

  • Firezone默认地址:$HOME/.firezone。
 

  2.  安装服务器 选项二:手动安装

  • 将 docker compose 模板下载到本地工作目录

          – Linux:curl -fsSL https://raw.githubusercontent.com/firezone/firezone/master/docker-compose.prod.yml -o docker-compose.yml

          – macOS 或 Windows:curl -fsSL https://raw.githubusercontent.com/firezone/firezone/master/docker-compose.desktop.yml -o docker-compose.yml

  • 生成所需的机密: docker run –rm firezone/firezone bin/gen-env > .env

 

  • 更改 DEFAULT_ADMIN_EMAIL 和 EXTERNAL_URL 变量。 根据需要修改其他机密。

 

  • 迁移数据库: docker compose run –rm firezone bin/migrate

 

  • 创建管理员帐户: docker compose run –rm firezone bin/create-or-reset-admin

 

  • 启动服务: docker compose up -d

 

  • 您应该能够通过上面定义的 EXTERNAL_URL 变量访问 Firezome UI。
 

   3. 启动时启用(可选):

  • 确保 Docker 在启动时启用: sudo systemctl enable docker

 

  • Firezone 服务应在 docker-compose.yml 文件中指定 restart:always 或 restart:unless-stopped 选项。

   4. 启用 IPv6 公共可路由性(可选):

  • 将以下内容添加到 /etc/docker/daemon.json 以启用 IPv6 NAT 并为 Docker 容器配置 IPv6 转发。

 

  • 在启动时为默认出口接口启用路由器通知: egress=`ip route show default 0.0.0.0/0 | grep -oP '(?<=dev ).*' | grep -oP '(?<=dev ).*' | 切 -f1 -d' ' | tr -d '\n'` sudo bash -c “echo net.ipv6.conf.${egress}.accept_ra=2 >> /etc/sysctl.conf”

 

  • 通过从 docker 容器内 ping 到 Google 来重新启动并进行测试: docker run –rm -t busybox ping6 -c 4 google.com

 

  • 无需添加任何 iptables 规则即可为隧道流量启用 IPv6 SNAT/伪装。 Firezone 会处理这个问题。
 

   5. 安装客户端应用程序

        您现在可以将用户添加到您的网络并配置建立 VPN 会话的说明。

后期设置

恭喜您,您已完成设置! 您可能需要查看我们的开发人员文档以了解其他配置、安全注意事项和高级功能:https://www.firezone.dev/docs/