我正在寻找一种“应用程序隧道”解决scheme,其行为类似于ssl或ssh隧道,但通过UDP。 一个客户端,OpenVPN提供了一个networking接口。 我希望客户端只听一个本地端口,并通过它build立的隧道转发所有的stream量。
注意:我使用术语应用程序隧道来描述如何ssh隧道行为与OpenVPN行为如何。 使用ssh隧道,networking应用程序连接到localhost:12345。 使用OpenVPN,networking应用程序会与通过tun接口连接的远程IP进行通信。 OpenVPN需要在内核中为tun / tap接口提供支持,而应用程序隧道模型则不需要。 如果有人知道这个正确的名词,请在评论中告诉我。
我想你正在寻找数据报传输层安全 。 它本质上是SSL / TLS,但略有修改,以便它可以通过UDP工作。 这与OpenVPN用于encryption的情况大致相同,只不过OpenVPN早于DTLS,所以实现细节可能有所不同,但并不是如此。
幸运的是,像OpenSSL这样的更新版本的产品已经支持DTLS,所以我们已经为你做了很多努力。
OpenVPN可以用于站点到站点的VPNconfiguration。 pfSense是我所见过的最简单的实现。 一端的pfSense盒充当“服务器”,另一端configuration为“客户端”,但我把它们放在“qoutes”中,因为每个networking上的其他主机到哪个端口并不重要结束。
除非另有configuration,OpenVPN默认为UDP端口(1194)。
如果你正在寻找没有端口转发,中间服务器,欺骗或DNS黑客的2路NAT穿越,你可以看看基于udptunnel的pwnat。 我还没有搞砸,但看起来很有趣。