我已经设法使用 tap0 为完整的 IPv4 连接设置了 OpenVPN。现在我想对 IPv6 做同样的事情。
地址和网络设置(注意我的真实前缀被 2001:db8 替换):
2001:db8::100:0:0/96 my assigned IPv6 range
2001:db8::100:abc:0/112 OpenVPN IPv6 range
2001:db8::100:abc:1 tap0 (on server) (set as gateway on client)
2001:db8::100:abc:2 tap0 (on client)
2001:db8::1:2:3:4 gateway for server
Home laptop (tap0: 2001:db8::100:abc:2/112 gateway 2001:db8::100:abc:1/112)
| | | (running Kubuntu 10.10; OpenVPN 2.1.0-3ubuntu1)
| wifi | |
router |
| OpenVPN
INTERNET |
eth0 | /tap0
VPS (eth0:2001:db8::1:2:3:4/64 gateway 2001:db8::1)
(tap0: 2001:db8::100:abc:1/112)
(running Debian 6; OpenVPN 2.1.3-2)
Run Code Online (Sandbox Code Playgroud)
服务器具有本机 IPv4 和 IPv6 连接,客户端只有 …
是否可以在客户端设置client.conf文件以将特定主机/域解析为给定 IP。
例如,domain.tld 通常从 Internet NS 解析为 1.2.3.4
host domain.tld => 1.2.3.4
Run Code Online (Sandbox Code Playgroud)
我想在使用 openvpn client.conf 时强制 domain.tld 解析为 10.11.12.13
openvpn client.conf
host domain.tld => 10.11.12.13
Run Code Online (Sandbox Code Playgroud) 从性能和安全的角度来看,openvpn 应该使用哪种密码?
根据http://openvpn.net/index.php/open-source/documentation/howto.html#security,默认为 Blowfish,建议/示例是使用 AES-256-CBC,因为它的密钥大小较大. 256 位 AES 是最佳实践吗?
我正在尝试设置 OpenVPN 以侦听端口 443,然后使用该port-share选项将所有 HTTPS 流量传递给 Apache 。相关的配置片段是:
开放式VPN
local ${PUBLIC_IP}
port 443
port-share localhost 443
Run Code Online (Sandbox Code Playgroud)
带有 SSL 的 Apache
Listen localhost:443
Run Code Online (Sandbox Code Playgroud)
我的 OpenVPN 客户端连接正常,但打开启用 HTTPS 的页面时,出现错误。火狐说:
SSL 收到超过最大允许长度的记录。
(错误代码:ssl_error_rx_record_too_long)
卷曲 说
curl:(35) 错误:140770FC:SSL 例程:SSL23_GET_SERVER_HELLO:未知协议
该请求最终在 Apache 上,因为我在错误日志中看到以下消息:
[Wed Oct 06 01:10:20 2010] [error] [client 127.0.0.1] Invalid method in request \x16\x03\x01
[Wed Oct 06 01:11:04 2010] [error] [client 127.0.0.1] Invalid method in request \x16\x03\x01
[Wed Oct 06 01:11:51 2010] [error] [client 127.0.0.1] Invalid method in request \x16\x03\x01
Run Code Online (Sandbox Code Playgroud)
HTTPS …
我目前生活在一个封锁了许多网站并且与外界的网络连接不可靠的国家。我在 Linux 服务器上有两个 OpenVPN 端点(例如:vpn1 和 vpn2),用于绕过防火墙。我可以完全访问这些服务器。这很有效,除了我的 VPN 连接上的高包丢失。这种丢包率随时间的变化在 1% 到 30% 之间变化,并且似乎具有低相关性,大部分时间似乎是随机的。
我正在考虑设置一个家用路由器(也在 Linux 上),它维护与两个端点的 OpenVPN 连接,并将所有数据包发送到两个端点两次。vpn2 会将所有数据包从家庭发送到 vpn1。返回流量将直接从 vpn1 发送到家,也可以通过 vpn2 发送。
+------------+
| home |
+------------+
| |
| OpenVPN |
| links |
| |
~~~~~~~~~~~~~~~~~~ unreliable connection
| |
+----------+ +----------+
| vpn1 |---| vpn2 |
+----------+ +----------+
|
+------------+
| HTTP proxy |
+------------+
|
(internet)
Run Code Online (Sandbox Code Playgroud)
为清楚起见:家庭和 HTTP 代理之间的所有数据包都将被复制并通过不同路径发送,以增加其中之一到达的机会。如果两者都到达,则可以静默丢弃第一个第二个。
带宽使用不是问题,无论是在家庭端还是端点端。vpn1 和 vpn2 彼此靠近(3ms ping)并且具有可靠的连接。
关于如何使用 Linux 中可用的高级路由策略来实现这一点的任何指示?
当openvpn客户端配置为调试级别verb 5或更高时,人们会在他们的 OpenVPN 日志中找到类似于“rWrWRwRwRwRwrWrWrWRw”的文本,当数据包通过 VPN 接口时出现。
很明显,消息与通过隧道接口的读取和写入相关联,但是 case 的变化表明了什么?例如:rvsR和wvs W?
我已经搜索过,man openvpn但到目前为止运气不佳。
我有一个运行 openVZ 和 CentOs 6 的 VPS 服务器,我想在上面安装 openVPN。我遵循了本教程:https : //www.digitalocean.com/community/tutorials/how-to-setup-and-configure-an-openvpn-server-on-centos-6 但我无法启动 openVPN服务:
Starting openvpn: [FAILED]
Run Code Online (Sandbox Code Playgroud)
这就是我的/var/log/messages/文件中的内容:
Mar 9 10:50:50 s18194633 openvpn[19715]: event_wait : Interrupted system call (code=4)
Mar 9 10:50:50 s18194633 openvpn[19715]: /sbin/ip route del 10.8.0.0/24
Mar 9 10:50:50 s18194633 openvpn[19715]: ERROR: Linux route delete command failed: external program exited with error status: 2
Mar 9 10:50:50 s18194633 openvpn[19715]: Closing TUN/TAP interface
Mar 9 10:50:50 s18194633 openvpn[19715]: /sbin/ip addr del dev tun0 local 10.8.0.1 peer 10.8.0.2 …Run Code Online (Sandbox Code Playgroud) 我想从我的家庭服务器接收系统电子邮件。所以我试图通过我的公共服务器配置 postfix 来做到这一点。我的公共服务器有一个固定的 IP,而我的家庭服务器在一个私有网络中,由于我的路由器的主机名被包含在主机名中,导致一个完整的主机名“homeserver.blablabla_crappyrouter”。
我的家庭服务器通过具有固定 IP 的 OpenVPN 隧道连接到我的公共服务器,其中我的家庭服务器是客户端。从我的家庭服务器到我的公共服务器(反之亦然),有一个固定的 IP,因此它们可以通过固定地址毫无问题地相互访问。这是一条隧道,可以让我从任何地方访问我的家庭服务器,而不会出现安全问题。
我的公共服务器上的 postfix 配置包括以下内容:
smtpd_recipient_restrictions = reject_invalid_hostname,
reject_unknown_recipient_domain,
reject_unauth_destination,
reject_rbl_client sbl.spamhaus.org,
permit
smtpd_helo_restrictions = reject_invalid_helo_hostname,
reject_non_fqdn_helo_hostname,
reject_unknown_helo_hostname
smtpd_client_restrictions = reject_rbl_client dnsbl.sorbs.net
Run Code Online (Sandbox Code Playgroud)
在我的家庭服务器上,我添加了 OpenVPN 的公共服务器的 IP 使用
relayhost = [<public server IP through OpenVPN>]
Run Code Online (Sandbox Code Playgroud)
现在这个配置不发送电子邮件并给我错误:
Helo 命令被拒绝:找不到主机
我对此进行了研究,发现 postfix 会搜索主机名,但显然由于主机名混乱而找不到它。
我的问题:如何告诉我的公共服务器的 postfix 盲目地允许来自我的家庭服务器的所有内容?
谢谢。
更新:
我确实在 main.cf 中设置了选项
smtpd_helo_required = no
Run Code Online (Sandbox Code Playgroud)
但这没有帮助。以下是我发送测试电子邮件后的 /var/log/mail.log 条目:
Sep 2 15:53:53 HomeServer sm-mta[6677]: t82Drr6w006677: from=sys@mydomain.com, size=69, class=0, nrcpts=1, msgid=<201509021353.t82Drr6w006677@HomeServer.blablabla_crappyRouter>, proto=ESMTP, daemon=MTA-v4, relay=localhost [127.0.0.1]
Sep 2 …Run Code Online (Sandbox Code Playgroud) 如何使用通过带有 systemd-resolved 的 openvpn 服务器推送的 dns ?
在我决定“升级”到 systemd-networkd 之前。我可以使用openvpn-resolv-conf脚本的一些变体来调用 resolvconf 来管理 /etc/resolv.conf 中成功建立 vpn 隧道的条目。
这将允许我在 vpn 隧道的远程端解析名称。
现在 systemd-resolved 管理 /run/systemd/resolved/resolv.conf 是否可以自动将通过 openvpn 连接推送的 DNS 添加到用于解析的名称服务器列表中?
我在远程服务器上有 openvpn,它是 Arch Linux。我能够连接到它,但连接后没有互联网,这意味着,当我打开浏览器并尝试加载网站时,它会在“查找...”中获取库存
两边都没有错误。服务器不在 NAT 后面,据我所知,我是 - 客户端 - 是。
服务器上没有防火墙。
路由相关的东西,转发我图?
openvpn ×10
linux ×2
networking ×2
ssl ×2
apache-2.2 ×1
arch-linux ×1
email ×1
email-server ×1
host ×1
ip ×1
ip-routing ×1
ipv6 ×1
log-files ×1
openssl ×1
openvz ×1
postfix ×1
resolution ×1
resolv.conf ×1
routing ×1
systemd ×1
tap ×1
tunnel ×1
vpn ×1
vps ×1