首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在"SSH端口转发“中,端口转发意味着什么?

在"SSH端口转发“中,端口转发意味着什么?
EN

Unix & Linux用户
提问于 2015-10-22 13:00:25
回答 1查看 3.3K关注 0票数 5
  1. 维基百科说,在计算机网络中,端口转发或端口映射是网络地址转换(NAT)的一个应用程序,它将通信请求从一个地址和端口号组合重定向到另一个地址,而数据包正在穿越网络网关,例如路由器或防火墙。端口转发的定义是否适用于"SSH端口转发“?在SSH本地和远程端口转发中,“端口转发”意味着什么?
  2. 特别是什么是被什么转发到什么?例如。在https://askubuntu.com/a/50075/1471中,将端口80从本地计算机(localhost)转发到端口8000上的远程主机的命令是ssh -R 8000:localhost:80 oli@ remote机器。您是说同样的话,还是说“将远程主机上的端口8000转发到本地计算机上的端口80”?
EN

回答 1

Unix & Linux用户

发布于 2015-10-22 13:11:31

1 -一般情况

假设公司网络中有两台服务器。

从本地服务器"L1“,您可以通过端口22上的ssh访问远程服务器"R1”。

  1. 服务器R1承载一个web服务,但是防火墙/NAT/任何东西阻止了对端口80的直接访问。
  2. 由于NAT问题,"R1“无法直接访问"L1”。

使用L1连接(在两台主机上相同的用户)

代码语言:javascript
复制
ssh -L 10080:localhost:80 -R 10022:localhost:22 R1

现在,

  • 10080上的-L 10080:localhost:80本地浏览将转发到端口80上的远程主机(R1)、本地主机(例如远程127.0.0.1),从而可以在防火墙/NAT阻止下浏览远程主机(R1)。
  • -R 10022:localhost:22远程使用端口10022将转发到本地主机(L1)端口22,您可以启动scp/ssh从远程到本地主机。(使用scp -P 10022 file localhost: (注上-P ))

这实际上是我从Ubuntu (14.04)笔记本电脑上使用的一个命令行,可以转到生产服务器(我可以使用firefox到localhost:10080,使用scp从服务器到本地主机:10022带回文件)

现在你的IP

代码语言:javascript
复制
192.168.1.1 L1
172.17.17.1 R1

您可以使用

代码语言:javascript
复制
ssh -L 10080:172.17.17.3:80 -R 10022:192.168.1.5:22 \
     -L 192.168.1.9:8888:172.17.17.9:9999 R1

现在

  • 远程访问端口10022 (任何IP)将被转发到本地192.168.1.5ssh/scp。
  • 本地对端口10080 (任何IP)的访问将被转发到远程主机172.17.17.3端口80。
  • 从192.168.1.9到端口8888的本地访问将在172.17.17.9上转发到端口9999 (192.168.1.9是L1中的本地地址,使用别名mecanism,这不是防火墙规则)。

这些设置可用于putty/putty客户端。

问Ubuntu问题

那该怎么办

代码语言:javascript
复制
 -R 8000:localhost:80

这读成

  • -R远程
  • 8000端口8000 (远程端口8000 .)
  • localhost (远程端口8000到本地主机。)
  • 80 (远程端口8000转到本地主机端口80 )
票数 13
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/237904

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档