自托管 VPN 指南:如何设置免费的家庭 VPN 服务器

已发表: 2025-11-13

几乎每个网站、应用程序甚至网络都会跟踪您的在线行为。 VPN 会加密您的数据并隐藏您的活动。多年来,它一直是最可靠的方法,不仅可以维护隐私,还可以帮助您解锁任何网站、绕过地理限制等。

set up your own home vpn server

虽然有许多运行良好的免费 VPN 服务,但其中一些服务仍然可以记录您的数据、限制服务器位置,甚至限制您的速度并限制带宽。

为了避免所有这些限制,如果您仍然想免费访问它,那么设置自己的 VPN 服务器通常是最好的方法。目前,在家中设置VPN服务器的方法有很多种,包括基于软件的VPN服务器、基于路由器的VPN服务器、基于云的VPN服务器等。

然而,在所有这些方法中,使用基于软件的 VPN 服务器设置 VPN 服务器是最佳选择,因为它是免费的、易于安装和管理,无需复杂的设置和不同的服务器配置。

对于不想处理技术术语的非技术用户来说,它也是最可靠的选择。在本指南中,您将学习如何使用任何免费 VPN 软件在家中设置自己的 VPN 服务器。

目录

如何设置您自己的基于软件的 VPN 服务器

顾名思义,基于软件的 VPN 的工作方式与您期望的工作方式完全相同。您可以安装任何免费的服务器软件。安装该软件后,您的设备将创建一个虚拟网络接口,该接口会自动加密离开设备的流量。

设置完成后,您可以将其他设备(例如手机或笔记本电脑)作为客户端连接到安装了 VPN 服务器的设备。

就是这样。所有连接的设备都将通过 VPN 设备发送流量,从而加密您的所有流量。即使您出门在外,您也可以通过家庭网络连接设备并访问您自己的 VPN 隧道,从而加密您的流量。

有许多免费的开源软件选项,以及具有免费功能的付费软件。在本指南中,我们将使用 WireGuard。您很快就会了解为什么我选择 WireGuard 而不是其他产品。

然而,设置家庭服务器的最大缺点是,除了在需要时保持在线之外,它只提供一个位置,并且您无法从您的位置访问地理封锁的网站。但是,您的连接仍然是加密的,并且可以免费使用。

如果您希望建立一个免费的 VPN 替代方案(如 NordVPN),没有任何限制,具有多个服务器位置并使用 VPN 访问您所在位置的地理封锁网站,您可以使用任何免费云服务提​​供商设置自托管的免费 VPN。

在本指南中,您将了解这两种方法的工作原理。这是两种方法之间的比较表。

家庭 VPN 与外国 VPN 服务器

特征家庭 VPN (WireGuard)自托管外国 VPN
设置成本自由的免费/低成本
加密是的是的
地理封锁的网站是的
更改地点是的
访问家庭文件是的有限的
访问国外国家网站是的是的,但前提是服务器位于您所在的国家/地区
公共 Wi-Fi 安全是的是的
速度取决于你家的路由器一般较快
设置时间简单的也很容易
可靠性取决于家庭连接由于有专用服务器,所以时间很长。
设备在线它应该保持在它始终开启
IP可见家庭IP虚拟专用网
需要公网IP、路由器访问VPS 帐户、SSH
最适合加密您的流量并访问家庭文件VPN 服务的替代方案

如果您想要一个免费且简单的设置来加密您的流量,家庭 VPN 是最好的选择。但是,如果您想从多个位置访问网站并访问您所在位置的地理封锁网站,那么自托管的外国 VPN 是最佳选择。

设置您自己的 VPN 服务器的 2 种方法

方法一:设置家庭VPN服务器

您可以使用任何基于软件的 VPN 服务免费设置家庭 VPN 服务器。以下是每个设备的要求。

为不同设备设置家庭 VPN 服务器的先决条件

你需要什么视窗macOS Linux
WireGuard 应用程序官方应用程序应用商店/自制软件apt安装wireguard
互联网是的是的是的
路由器接入打开端口51820打开端口51820打开端口51820
公共IP / DDNS必需的必需的必需的
设备应处于开启状态总是总是总是

第 1 步:从 App Store 安装 WireGuard 应用程序

您可以使用此链接从 App Store 安装适用于 Mac 和 Windows 的 WireGuard 应用程序。或者,您可以使用此命令从终端安装它。确保您的 Mac 上安装了 Brew。

第 2 步:安装 Wireguard 工具

接下来,您需要安装 WireGuard 工具。请按照以下步骤操作:

install wireguard tools

  • 现在,打开终端并运行以下命令在您的设备上安装 WireGuard 工具。
  • 命令: brew安装wireguard-tools
  • 为了确保它成功安装在您的设备上,请使用以下命令: wg –version
  • 您应该能够看到版本号。

第 3 步:生成公钥和私钥

generate keys

  • 现在,打开终端并创建您的公钥和私钥。与往常一样,请确保您的设备上安装了 Home Brew。
  • 复制并粘贴这些代码到终端中:

光盘~
工作组 genkey | tee server_private.key | wg pubkey > server_public.key
工作组 genkey | tee client_private.key | wg pubkey > client_public.key

第4步:查看生成的密钥

check your keys

  • 单击 Enter 后,将生成密钥并隐藏在视图中。要检查密钥,请使用以下命令:

cat server_public.key
猫 client_private.key

第 5 步:创建服务器配置文件

create your server config

  • 现在,您需要使用您的详细信息创建一个服务器配置文件。为此,请打开终端并粘贴以下命令:

须藤纳米 /usr/local/etc/wireguard/wg0.conf

  • 输入您的密码以打开编辑器。

第6步:粘贴代码

server config

现在,将此配置文本粘贴到文件中。

[界面]
地址 = 10.66.66.1/24
监听端口 = 51820
私钥 = SERVER_PRIVATE_KEY

[同行]
公钥 = CLIENT_PUBLIC_KEY
允许的IP = 10.66.66.2/32

注意:将私钥和公钥替换为您在步骤 4 中生成的密钥

例子:

[接口]地址=10.66.66.1/24
监听端口 = 51820
私钥 = GtloBhNhOJUcI/esk1YRTJDjshddgftKSlV6yhtFBcoGvlMMYDg=>

[对等] 公钥 = yCjhu4e8Ln7hGSKhsjsedrVKa7lsC9aalUpnkaYgd+z9dGF28=>
允许的IP = 10.66.66.2/32

第7步:保存文件

save files

  • 现在使用Control + O ,然后点击 Enter,然后使用Control + X保存文件

步骤 8:启用 IP 转发

enable ip forwarding

  • 保存文件后,您可以退出,然后再次打开新终端并使用以下命令:

sudo sysctl -w net.inet.ip.forwarding=1

步骤 9:启动 WireGuard 服务器

start wireguard server

  • 现在使用命令启动 Wireguard 服务器:

命令: sudo wg-quick up wg0

第10步:现在您需要在路由器上设置端口转发

ip port forwading

  • 确保您已连接到 Wi-Fi 并转到 Wi-Fi 路由器的仪表板。打开任意浏览器并访问以下 URL:192.168.1.1 或 192.168.0.1
  • 找到端口转发选项。对于 TP-Link 路由器,导航至网络 > 高级,然后选择NAT 转发和虚拟服务器。如果您使用的是 D-Link 设备,则可以利用 Total Adapting Port Forwarding 功能。
  • 从这里,您需要创建一个新的转发规则。添加以下详细信息:服务名称、Wireguard 地址、UDP 协议以及外部端口 51820。此外,将内部端口设置为 51820 并使用 Mac 的 IP 地址作为内部 IP 地址。启用此端口。

第11步:创建客户端配置文件

client.conf

  • 现在,您需要为 WireGuard 应用程序创建客户端配置文件。为此,请打开任何文本编辑器并粘贴该文件。

[界面]
私钥 = <CLIENT_PRIVATE_KEY>
地址 = 10.66.66.2/24
DNS = 1.1.1.1

[同行]
公钥 = <SERVER_PUBLIC_KEY>
端点 = <YOUR_PUBLIC_IP_OR_DDNS>:51820
允许的IP = 0.0.0.0/0,::/0
持久保持活动 = 25

注意:现在将以下详细信息替换为您的详细信息

  • 将公钥和私钥替换为您在步骤 4 中生成的密钥。
  • 您可以通过访问 Whatismyipaddress.com 找到您的公共 IP 地址

例子:

[界面]
私钥 = aBcDeFgHijKlmNoPqRsTuVwXyZ1234567890abcdEFG=
地址 = 10.66.66.2/24
DNS = 1.1.1.1

[同行]
公钥 = zYxWvUtSrQpOnMlKjIhGfEdCbA9876543210qwertYUI=
Endpoint = myhomevpn.duckdns.org:51820 (我在这里使用了 Duckdns;相反,您也可以在这里放置您的 Mac IP 地址)
允许的IP = 0.0.0.0/0,::/0
持久保持活动 = 25

  • 创建后,保存文件。确保将其保存为纯文本,而不是 RTF 格式。

如何使用终端创建客户端配置文件:

您还可以使用命令提示符创建文件;使用以下步骤

  • 在终端中使用以下命令: nano ~/Desktop/client.conf

粘贴此文件:

[界面]
私钥 = <CLIENT_PRIVATE_KEY>
地址 = 10.66.66.2/24
DNS = 1.1.1.1

[同行]
公钥 = <SERVER_PUBLIC_KEY>
端点 = <YOUR_PUBLIC_IP_OR_DDNS>:51820
允许的IP = 0.0.0.0/0,::/0
持久保持活动 = 25

确保替换如上例所示的值。然后,使用 Control + O,按 Enter,然后使用 Control + X 保存文件。

步骤 12:将 client.conf 导入 WireGuard 应用程序

wireguard app

  • 现在,打开设备上的 WireGuard 应用程序
  • 单击“通过隧道导入文件”选项。
  • 并选择您刚刚使用文本编辑器创建的 client.conf
  • 现在,最后单击“激活”。
  • 就是这样,现在您的 Mac 就是一个免费的 VPN 服务器。

如何将其他设备连接到您的家庭 VPN 服务?

find your ip

步骤 1:在另一台设备上安装 WireGuard 应用程序。

  • 现在您需要在另一台设备上安装 WireGuard 应用程序。在本例中,我将其安装在我的 Android 手机上。

步骤 2:在另一台设备上设置 WireGuard 应用程序

  • 打开应用程序,然后断开与 Wi-Fi 的连接,并确保您正在使用移动数据来测试 VPN 连接。
  • 现在,单击文件并选择要导入的文件。您可以将文件 client.conf 复制到您在 Mac 上创建的设备。

connect to your home vpn

在 Android 设备上,打开 WireGuard 应用程序,单击加号图标,选择“导入文件或存档”选项,然后选择从 Mac 复制的 Client.conf 文件,就这样。现在您可以启用clinet,并且您将成功连接到您的家庭VPN。

如何创建自托管国外地点 VPN

接下来,如果您想在其他位置创建 VPN,您可以使用免费的云服务器,该服务器提供 WireGuard 应用程序进行安装并创建 VPN。方法如下。为此,我们使用 Oracle,它要求您提交卡详细信息。

第 1 步:创建免费的 Oracle 帐户

如果您想在您家以外的其他位置创建自己的 VPN 服务器,您可以注册任何免费云服务提​​供商并将该服务器用作您的 VPN 服务器。

在所有方法中,Oracle 提供免费的 A-Team 服务。您可以注册一个免费的 Oracle 帐户并选择您想要连接的任何服务器。目前,它支持美国、新加坡、德国、印度和其他几个国家。以下是设置方法。

第 2 步:注册 Oracle

  • 访问 https://signup.cloud.oracle.com/ 并创建您的免费帐户。
  • 输入您的帐户详细信息、名字、姓氏和您的电子邮件地址。输入后,单击“验证电子邮件地址”。
  • 单击您收到的电子邮件上的验证按钮。
  • 输入您的密码并填写所有必要的详细信息。
  • 从那里,您可以添加新服务器并记下服务器的公共 IP 地址,该地址可以在服务器详细信息中找到。

第 3 步:添加新服务器

  • 在仪表板上,单击“创建新实例”。
  • 输入名称并选择任何免费标准服务器,选择 Ubuntu 作为映像,输入任何域,然后单击“添加 SSH 密钥”。
  • 添加后,您需要下载私钥。单击“生成 SSH 密钥对”,下载私钥,然后单击 crate。有时它会显示一个公共IP地址,记下它,你的服务器就会被创建。

第 4 步:连接到您的服务器

  • 接下来,创建服务器后,您需要使用以下命令从 Mac 连接到服务器。

命令: chmod 600 ~/Downloads/your-key.pem

  • 现在使用此命令通过 SSH 连接到服务器

ssh -i ~/Downloads/your-key.pem ubuntu@<your_public_ip>

确保将公共 IP 地址替换为从 Oracle 服务器生成的地址。它看起来是这样的:

示例: ssh -i ~/Downloads/vpnkey.pem [email protected]

步骤 5:在服务器上安装 WireGuard

  • 成功连接到服务器后,您需要卸载服务器上的 WireGuard。使用命令来做到这一点

sudo apt update && sudo apt install -ywireguard

第 6 步:生成公钥和私钥

  • 安装成功后,需要生成公钥和私钥。为此,您可以在 Mac 或 Windows 上使用以下命令

光盘~
工作组 genkey | tee server_private.key | wg pubkey > server_public.key
工作组 genkey | tee client_private.key | wg pubkey > client_public.key

  • 就是这样,生成后,你可以使用这个命令来查看生成的密钥:命令: ls

你会看到所有的钥匙。使用以下命令:

cat server_private.key
cat server_public.key
猫 client_private.key
猫 client_public.key

第 7 步:在 Mac 上创建配置文件

  • 接下来,您需要在 Mac 上编辑 congi 文件。使用以下命令

须藤纳米 /etc/wireguard/wg0.conf

  • 接下来,粘贴此代码:

[界面]
地址 = 10.10.0.1/24
监听端口 = 51820
私钥 = <SERVER_PRIVATE_KEY>
PostUp = iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

[同行]
公钥 = <CLIENT_PUBLIC_KEY>
允许的IP = 10.10.0.2/32

  • 确保将这些密钥替换为您在前面的步骤中生成的自己的密钥。

步骤8:启用IP转发

  • 创建配置文件后,您需要启用 IP 转发。为此,请使用以下命令:

sudo sysctl -w net.ipv4.ip_forward=1

  • 接下来,使用此命令使其永久化

回显“net.ipv4.ip_forward = 1”| sudo tee -a /etc/sysctl.conf

第 9 步:现在创建 VPN 配置文件

  • 打开任何文本编辑器并粘贴此代码

[界面]
私钥 = <CLIENT_PRIVATE_KEY>
地址 = 10.10.0.2/24
DNS = 1.1.1.1

[同行]
公钥 = <SERVER_PUBLIC_KEY>
端点 = <SERVER_PUBLIC_IP>:51820
允许的IP = 0.0.0.0/0,::/0
持久保持活动 = 25

将值替换为您的键。在服务器公共 IP 中,粘贴您在前面的步骤中创建的 Oracle 服务器公共 IP。

第10步:连接到服务器

  • 下载 WireGuard 应用程序并将其安装在您要用于连接 VPN 服务器的设备上。
  • 打开 Wireguard 应用程序并从文件菜单中单击“导入隧道”,然后选择您创建的 VPN 文件。
  • 现在,允许 VPN 连接并启用客户端。
  • 您可以通过此方法手动创建多个服务器并设置 VPN。

最后的想法

您可以使用这两种方法来构建自己的 VPN 服务器。您可能会发现这些步骤很复杂;然而,我确保每个步骤都简单易懂,即使对于初学者也是如此。如果您在设置自己的 VPN 服务时遇到任何问题或错误,请在下面发表评论告知我们。我很高兴为您提供帮助。您可以在下面找到用户最常见的问题。请访问 参考资料 部分以了解有关这些 VPN 设置的更多信息。

构建您自己的 VPN 服务器的常见问题解答

1. 如果我的 IP 地址经常变化,如何使我的家庭 VPN 正常工作?

如果您的互联网服务提供商使用动态 IP,则每次连接到 VPN 时都包含新的 IP 地址会很困难。最好的解决方案是使用免费的动态 DNS 服务,例如 duckdns.org,它将动态 IP 地址链接到固定主机名。这样,您就可以保持与家庭互联网的连接。 '

2. 我可以同时将多个设备连接到我的家庭 VPN 吗?

是的,您可以同时将多个设备连接到您的家庭 VPN。

3. 我可以使用 VPN 流式传输 Netflix 或其他受地理限制的服务吗?

是的,您可以流式传输 Netflix,但要解锁地理限制服务,您需要使用位于未受地理限制的其他区域的 VPN。在这种情况下,设置国外VPN服务器是最好的选择。

4. 我可以在与 VPN 相同的设备上运行其他应用程序或服务吗?

可以,但请确保它们不与您的 VPN 服务冲突。

5. WireGuard和OpenVPN有什么区别?

WireGuard 是 OpenVPN 更新且更轻的版本。对于那些希望设置简单版本的家庭 VPN 而又​​不消耗太多资源的人来说,这是最好的部分。