英语好的请移步:https://www.ssh.com/ssh/tunneling/example
相信很多大公司为了安全和权限管理都在使用堡垒机,这里介绍一个方便快速开发,安全直连服务器的方法。
什么是SSH端口转发,SSH tunnel?
SSH端口转发是SSH的一种机制,用于从客户端到服务器的隧穿应用端口,反之亦然。它可以用于向应用程序加密通过防火墙,一些系统管理员和It专业人员使用它来从家里的机器中打开后门进入内部网络。它还可以被黑客和恶意软件滥用,以开放从内部网络的访问。
本地转发
本地转发用于将一个端口从客户端转发到服务器。通常的做法是:SSH客户机配置链接用的监听端口,当它接收到连接时,它将转发连接到SSH服务器。服务器连接到一个配置好的目标端口,可能在不同的机器上而不是SSH服务器。
本地端口转发的典型用途包括:
- 通过跳转服务器进行隧道会话和文件传输。
- 从外部网络连接到内部网络上的服务器。
- 连接到Internet上的远程文件共享。
相当多的组织通过某个跳转服务器来访问内部SSH。服务器可能是一个标准的Linux/Unix box,通常带有一些额外的硬化、入侵检测和/或日志记录,或者它可能是一个商业跳转服务器解决方案。例如,CryptoAuditor可以充当跳转服务器,记录所有会话,并将会话内容传递给分析,以获得可疑活动的早期预警。
许多跳转服务器允许传入端口转发只要连接验证通过,这样的端口转发是很方便的,因为它允许精通技术的用户非常透明地使用内部资源。例如,他们会他们的本地机器上一个端口转发到公司内部网web服务器,内部邮件服务器的IMAP端口,一个本地文件服务器的445和139端口,一台打印机,版本控制存储库,或任何其他系统内部网络。通常,端口被隧道到内部机器上的SSH端口上。
在OpenSSh中,本地端口转发需要使用-L参数进行配置:
ssh -L 80:intra.example.com:80 gw.example.com