我目前正在使用 VPNBook 和 OpenVPN。我最近才了解到 DNS 泄漏。有办法扫描它吗?
答案1
如果您从终端运行 OpenVPN,它不会分配服务器的 DNS 解析器。这是一种已知行为,在 OpenVPN 开发人员修复它之前,您必须运行外部脚本来在隧道连接后分配 DNS 解析器,并在断开连接时恢复。这应该适用于 Ubuntu、Debian 和任何基于 Debian 的发行版。
步骤1
首先,您必须更新
.ovpn
配置文件以运行脚本,该脚本将分配 DNS 解析器并在 VPN 连接关闭时恢复原始解析器。将以下几行添加到文件.ovpn
:script-security 2 up updatedns.sh down updatedns.sh
请注意,如果您从当前文件夹运行 openvpn [server profile.ovpn],则适用此规定,而不是例如。
openvpn /home/myself/Downloads/openvpn-profiles/server-location.ovpn
如果您从不同的文件夹运行,则必须相应地包含完整路径(也包括下面的批量更新命令)
要批量更新
.ovpn
文件夹中的所有配置文件,请解压缩服务器配置文件,然后从同一文件夹运行:for filename in *.ovpn; do echo -e "script-security 2\nup updatedns.sh\ndown updatedns.sh" >> $filename; done
第2步
获取updatens.sh脚本:
wget https://vpn.ac/configs/misc/updatedns.sh
运行
chmod +x updatedns.sh to make it executable
步骤 3通过运行进行连接:
openvpn ./[location-profile].ovpn
连接后,检查dnsleak 测试。它应该报告我们的 DNS 解析器。
断开连接后,原始文件
resolv.conf
将被恢复。如果发生任何问题,无法正确恢复(即 openvpn 进程被终止),请通过运行以下命令手动恢复:cp -a /etc/resolv.conf.orig /etc/resolv.conf
来源:VPN交流