DD-WRT是适用于各种路由器的开源固件。许多路由器具有很多功能,因此供应商无法通过路由器的管理界面访问这些功能。 DD-WRT固件可解锁路由器的所有功能,包括成为OpenVPN客户端和/或OpenVPN服务器.
也可以看看: DD-WRT路由器的最佳VPN.
在哪里可以买到DD-WRT路由器?
Linksys生产了原始的WRT路由器。当今的DD-WRT开源固件基于为其WRT54G系列路由器开发的Linksys WRT固件。 DD-WRT项目的主要维护者所在的德国德累斯顿市DD-WRT的“ DD”部分是车牌代码的帽子提示.
今天,可以从Linksys和其他路由器制造商那里购买已经运行DD-WRT的路由器。也可以在安装了专有固件的许多其他品牌路由器上安装DD-WRT。例如,我的路由器是TP-Link固件附带的TP-Link c1900 ArcherC9。我用适当的DD-WRT固件对其进行了刷新,现在它是DD-WRT路由器.
为什么要在路由器上安装OpenVPN?
您的路由器作为OpenVPN客户端
鉴于市场上几乎所有的计算机,平板电脑和电话都有一个OpenVPN客户端应用程序,因此并不总是很清楚为什么在路由器上安装OpenVPN会是一个优势.
将路由器直接连接到VPN提供商意味着您不必一定在任何设备上运行VPN软件。希望您在内部网络上使用WPA2或同等级别的加密,因此可以合理地假设流量受到保护,以防被窥探。但是,一旦您的流量到达路由器,它就会通过ISP的网络到达目的地。将路由器配置为VPN客户端可确保离开路由器的流量在通过ISP时一直被加密,直到到达VPN出口点并进入公共互联网为止.
在路由器上运行VPN客户端的优势包括:
- 仅需要与VPN服务器的一个连接。这可以帮助避免某些VPN提供商设置的连接限制.
- Apple TV等许多设备没有安装VPN软件的简便方法。通过在路由器上运行VPN软件,网络中的所有流量都可以无缝地通过VPN.
- VPN始终处于打开状态,因此您无需记住就可以启动它.
您的路由器作为OpenVPN服务器
将路由器变成OpenVPN服务器意味着您将能够从外部访问家庭网络。如果您在旅途中但需要访问内部网络上的文档或其他计算机,则可以启动OpenVPN客户端,连接到路由器的OpenVPN服务器,然后进入.
如何将DD-WRT路由器变成OpenVPN客户端?
DD-WRT固件非常容易,因为它支持OpenVPN和PPTP样式的VPN。 PPTP是一种非常不安全的VPN协议,因此我们建议使用基于PPTP的OpenVPN.
也可以看看: 我们的VPN协议备忘单.
登录到您的路由器。 DD-WRT管理界面的登录地址通常为192.168.0.1,但您可能已对网络进行了不同的设置。进入后,导航至 服务 标签,然后转到 虚拟专用网 标签.
我们将配置路由器的OpenVPN客户端功能。您需要首先连接的是OpenVPN服务器。您可能已经构建了自己的OpenVPN服务器,或者您正在使用支持OpenVPN的VPN提供程序。我将在本文中使用ProtonVPN,但除了从Proton获取OpenVPN配置之外,在设置其他提供商方面应该没有太大的区别.
启用OpenVPN客户端设置
点击 启用 单选按钮以扩展客户端设置.
使用OpenVPN的大多数VPN提供商都会提供配置文件供您使用。在某些情况下,您还需要用户名和密码。任何给定的OpenVPN配置文件的内容都可以不同。如果DD-WRT接口具有导入功能,那将很方便,但是由于它不具有导入功能,因此我们不得不尝试确定配置文件的哪些部分需要进入每个字段.
我的ProtonVPN配置文件在开始时有一些设置,在结尾处有一些证书文件。在此屏幕截图中,我已经指出了一些需要在DD-WRT路由器上手动配置的设置:
对于ProtonVPN,我还需要在适当的字段中输入用户名和密码.
其余设置应复制并粘贴到DD-WRT路由器的“其他配置”字段中.
此时,我们要通过单击 保存 页面底部的按钮。具有安全意识的人们将希望在激活VPN之前对路由器的DNS设置做进一步的工作,这就是为什么我不选择单击 套用设定 按钮呢.
配置您的DNS
当VPN处于活动状态时,您的所有流量都将经过加密的传输,经过本地网络和ISP的窥探。但是,为了使互联网上的任何地方都无法访问,您的计算机需要执行DNS查找。 DNS查找将站点域名(例如example.com)解析为计算机可以使用的IP地址。虽然这些DNS查找不包含有关您在任何给定站点上所做的操作的任何实际信息,但它们可以为观察者提供计算机已查找并且很可能访问过的每个站点的完整列表。.
某些VPN除了提供VPN功能外,还提供DNS服务,但您也可以通过快速配置更改将路由器设置为使用更多匿名DNS服务器.
导航到 设定 -> 基本设定 标签,然后在“静态DNS”字段中输入您希望使用的DNS服务器。此示例显示了DNS.WATCH服务器.
点击 套用设定 按钮。现在您可以启动VPN。回到 服务 -> 虚拟专用网 标签,然后点击 套用设定 按钮。导航到 状态 -> 开放VPN 标签,您应该会在顶部看到令人鼓舞的消息“客户端:连接成功”。请注意,在启用OpenVPN服务之前,OpenVPN状态选项卡不存在.
您的路由器现在正在通过VPN从其连接的设备发送所有流量.
您可以使用我们的DNS泄漏测试来确认DNS设置是否有效.
要禁用VPN,请导航回OpenVPN选项卡,单击 禁用 单选按钮,然后单击 套用设定 底部的按钮。禁用它时,OpenVPN设置窗格将折叠,但是下次启用时,设置将保留在原位。.
如何将DD-WRT路由器转换为OpenVPN服务器?
第一步是生成一些证书和密钥供OpenVPN服务器使用。最简单的方法是在计算机上安装OpenVPN并使用其实用程序生成必要的文件。在OpenVPN站点上找到有关如何针对Windows系统执行此操作的说明。 Linux用户可以使用以下命令。如果您有兴趣了解完整设置的更多背景知识,请参阅此处的更完整的Linux OpenVPN设置文章。请注意,尽管这次我们实际上并未安装OpenVPN服务器(路由器将成为服务器),但我们仍然需要做一些相同的工作来生成证书.
对于Ubuntu和其他基于Debian的用户,请安装openvpn和easy-rsa软件包:
须藤apt-get intstall openvpn easy-rsa
您需要对基于RedHat的发行版使用yum或类似的软件包管理器。程序包名称应该相同或非常相似.
创建一个工作目录,我叫我的openvpn
mkdir openvpn;光盘openvpn
现在运行证书生成命令。粘贴以下内容,包括点:
/ usr / bin / make-cadir CA
光盘CA
源./vars
./全部清除
./build-ca
./build-key-server服务器
./build-dh
./build-key客户端
cd键; openvpn –genkey –secret pfs.key
请注意,某些命令将提示将位置信息合并到证书中。可以保留默认值,甚至可以保留默认值,因为任何人都可以读取该信息。如果您出于某些原因要对其进行自定义,则可以使用您希望使用的位置信息将第64行更新到69 CA / vars文件。默认值为:
汇出KEY_COUNTRY ="我们"
导出KEY_PROVINCE ="认证机构"
导出KEY_CITY ="旧金山"
导出KEY_ORG ="丰斯顿堡"
导出KEY_EMAIL ="[email protected]"
导出KEY_OU ="MyOrganizationalUnit"
在两个密钥生成序列的末尾,将要求您提供挑战密码。不要为服务器密钥提供此功能,因为它将阻止OpenVPN在无人值守的情况下启动。您可能还希望保留没有密码的客户端密钥,因为某些OpenVPN客户端无法在连接时提供该密钥。要在不提供密码的情况下跳过这些提示,只需按Enter键.
请注意,最后一个命令是可选的,但可取。这是使您的路由器提供完美前向保密性(PFS)的关键。 PFS允许您的VPN连接在会话期间定期协商新的静态密钥。如果您的私钥遭到破坏,则可以提供更高的安全性。没有PFS,任何人都可以使用您的私钥解密您过去的所有VPN连接。使用PFS,这是不可能的,因为密钥会定期更改并且被取代的密钥会消失在烟雾中.
此时,您现在应该在CA / keys目录中有一堆密钥和证书文件:
$ ls -1 CA /密钥/
01.pem
02.pem
cart
密钥
client.crt
client.csr
客户密钥
dh2048.pem
index.txt
index.txt.attr
index.txt.attr.old
index.txt.old
连载
串行的
server.crt
server.csr
服务器密钥
pfs.key
我们只需要其中一些。在文本编辑器(例如记事本或vi)中打开以下文件. 不要使用任何类型的文字处理器. 复制这些值并将其粘贴到DD-WRT OpenVPN Server / Daemon页面的相应字段中。在路由器管理员界面上,导航至 服务 -> 虚拟专用网 然后单击OpenVPN Server / Daemon部分中的Enable单选按钮.
- 将ca.crt粘贴到“ CA Cert”字段中
- 将server.crt粘贴到“公共服务器证书”字段中
- 将server.key粘贴到“专用服务器密钥”字段中
- 将dh2048.pem粘贴到DH PEM字段中
- 将pfs.key粘贴到TLS身份验证密钥中(假设您创建了此密钥)
如果您特别偏执,可以指定证书吊销列表。这将告诉OpenVPN服务器在从连接的客户端接受任何证书之前检查吊销列表。本文的设置和使用CRL有点高级.
点击 套用设定 按钮,您的VPN服务器应启动。您可以访问 状态-> 开放VPN 页以查看连接状态。请注意,这次,消息显示的是服务器:已连接成功,而不是您在客户端运行时看到的客户端:已连接成功.
下一步是生成一个客户端配置文件,您可以在设备上使用它来连接到新的OpenVPN服务器。双方(客户端/服务器)的某些设置必须相互补充,这一点很重要。我最终得到了如下客户端配置:
客户
开发屯
原始udp
远程YOUR_IP_ADDRESS 1194
密码AES-256-CBC
tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA
身份验证sha256
康宝
链接mtu 1570
—–开始私钥—–
复制client.key文件的内容并将其粘贴到此处。
—–结束私钥—–
—– BEGIN证书—–
复制client.crt文件的内容并将其粘贴到此处。
—–结束证书—–
—– BEGIN证书—–
复制ca.crt文件的内容并将其粘贴到此处。
—–结束证书—–
按键方向1
复制pfs.key文件的内容并将其粘贴到此处
然后,我启动了openvpn客户端,并连接了它:
$ sudo openvpn –config客户端配置.ovpn
2023年9月23日星期六16:05:05 OpenVPN 2.3.10 x86_64-pc-linux-gnu [SSL OpenSSL)] [LZO] [EPOLL] [PKCS11] [MH] [IPv6]建于2023年6月22日
2023年9月23日星期六16:05:05库版本:OpenSSL 1.0.2g 2016年3月1日,LZO 2.08
2023年9月23日星期六16:05:05控制通道身份验证:使用INLINE静态密钥文件进行tls-auth
2023年9月23日星期六16:05:05 UDPv4本地链接(绑定):[undef]
2023年9月23日星期六16:05:05 UDPv4链接远程:[AF_INET] 192.168.0.1:1194
2023年9月23日星期六16:05:09 [服务器]通过[AF_INET] 192.168.0.1:1194启动对等连接
2023年9月23日星期六16:05:12 TUN / TAP设备tun0打开
2023年9月23日星期六16:05:12 do_ifconfig,tt->ipv6 = 0,tt->did_ifconfig_ipv6_setup = 0
2023年9月23日星期六16:05:12 / sbin / ip链接设置dev tun0 up mtu 1497
2023年9月23日星期六16:05:12 / sbin / ip addr add dev tun0 10.10.10.2/24广播10.10.10.255
2023年9月23日星期六16:05:12初始化序列完成
我正在使用Linux命令行OpenVPN客户端,但是该conf文件应该可以在任何平台上的任何OpenVPN客户端上使用,我在我的Android手机上使用OpenVPN Connect进行了尝试,并且也能够进行连接.
注意我的客户端配置的远程线路。您可以使用外部IP地址,但是如果您的ISP不时旋转您的外部IP地址,则您可能希望使用动态主机名。动态DNS是一个过程,通过该过程,您可以将静态域名与路由器的IP相关联,并且即使更改主机名仍指向正确的IP地址。造访 设定 -> 域名解析 DD-WRT路由器的标签,以查看其支持的动态DNS提供程序的列表.
OpenVPN是值得信赖且强大的VPN解决方案。它被广泛使用,特别是在非常注重隐私的VPN提供商中。运行DD-WRT的路由器使通过OpenVPN客户端配置来保护您的传出流量以及通过OpenVPN服务器配置来的传入流量变得特别容易.
也可以看看: 最佳Linux VPN提供商.
Webmhamster的“ Linksys WRT54-G路由器”由CC BY 2.0许可
DD-WRT is an open-source firmware that can be used on various routers. Many routers have a lot of features that vendors cannot access through the routers management interface. DD-WRT firmware can unlock all the features of the router, including becoming an OpenVPN client and/or OpenVPN server. You can also check out the best VPN for DD-WRT routers.
Where can you buy DD-WRT routers? Linksys produced the original WRT router. Todays DD-WRT open-source firmware is based on the Linksys WRT firmware developed for its WRT54G series routers. DD-WRTs “DD” part is a hat tip to the license plate code of the city of Dresden, Germany, where the projects main maintainers are located. Today, routers that already run DD-WRT can be purchased from Linksys and other router manufacturers. DD-WRT can also be installed on many other brands of routers that come with proprietary firmware. For example, my router is the TP-Link c1900 ArcherC9 that came with TP-Link firmware. I refreshed it with the appropriate DD-WRT firmware, and now it is a DD-WRT router.
Why install OpenVPN on your router?
Your router as an OpenVPN client: Given that almost all computers, tablets, and phones on the market have an OpenVPN client application, it is not always clear why installing OpenVPN on a router would be an advantage. Connecting the router directly to the VPN provider means that you do not necessarily have to run VPN software on any device. You may want to use WPA2 or equivalent encryption on your internal network, so it is reasonable to assume that traffic is protected against snooping. However, once your traffic reaches the router, it travels through the ISPs network to its destination. Configuring the router as a VPN client can ensure that traffic leaving the router is always encrypted as it passes through the ISP until it reaches the VPN exit point and enters the public internet.
The advantages of running a VPN client on the router include:
– Only one connection is needed to the VPN server. This can help avoid connection restrictions set by some VPN providers.
– Many devices, such as Apple TV, do not have an easy way to install VPN software. By running VPN software on the router, all traffic in the network can seamlessly pass through the VPN.
– The VPN is always on, so you do not have to remember to start it.