【问题标题】:encrypted tunnel between linux endpointslinux端点之间的加密隧道
【发布时间】:2016-02-22 02:49:50
【问题描述】:

我有 2 个 linux 服务器,其中一个应用程序通过简单的 telnet 协议(未加密)进行通信。

我想强制应用在某种形式的加密隧道/等上运行。有没有一种简单的方法来创建点对点加密隧道,并仅强制我的应用程序的流量通过该隧道(?(例如:创建一个加密流量的虚拟 NIC)我不想路由所有网络流量这条隧道。

【问题讨论】:

  • 也许我不明白你的问题,但如果你使用 telnet(加密)为什么不使用加密的 SSH?
  • 离题;属于 Super UserUnix & Linux
  • 我无法控制应用使用的协议 - 所以它使用纯文本 (telnet)。
  • @TSG 如果您无法控制应用程序使用的协议,那么您能否澄清这是一个与编程相关的问题?

标签: linux encryption tunnel


【解决方案1】:

使用 SSH 端口隧道。设置好隧道后,您只需更改客户端上的连接(IP 和端口)。

假设系统 1 侦听端口 AAAA 上的套接字,系统 2 连接到系统 1。使用 ssh 隧道从系统 2 上的任意端口(例如 PPPP)到系统 1 上的端口 AAAA。现在将“应用程序”定向到系统上2 连接到 127.0.0.1:PPPP 并且连接将通过隧道连接到系统 1。

如果系统同时侦听和接受连接,则还要在相反方向设置隧道。

为了完整起见,在两个系统上为您的 ssh 隧道设置一个自定义用户。将两个系统上的新用户登录 shell 设置为 /sbin/nologin,并且不要将他们放在自己以外的任何组中。现在使用“sudo - u”在系统 2 上启动 ssh。假设您不再需要它,还要阻止从外部接口到系统 1 上端口 AAAA 的流量。还要分别在你的 ssh 和 sshd 配置中设置 ServerAliveInterval 和 ClientAlivalInterval。

此配置的替代方法是在两个盒子之间设置 VPN。

【讨论】:

  • 连接是APP到APP(服务器到服务器)...没有用户客户端(它不在用户工作站上运行)
  • 您可能仍然有一个端点来监听特定端口上的连接,另一个端点连接到该端口。为了便于术语,我们将在端口上侦听的一侧称为服务器,而将连接客户端的一侧称为。使用从作为客户端运行的系统上的任意端口(例如 PPPP)到服务器上正在侦听的端口的 ssh 隧道。现在连接到客户端系统上的 127.0.0.1:PPPP,流量将通过隧道传输到服务器。
  • 您评论中的信息会更好地添加到您的答案中。祝大家好运。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-08-04
  • 2020-01-28
  • 2021-06-16
  • 2018-08-20
  • 2022-08-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多