在 Oracle® Solaris 11.2 中管理安全 Shell 访问

退出打印视图

更新时间: 2014 年 9 月
 
 

如何在安全 Shell 中使用端口转发

可以指定将本地端口转发到远程主机。实际上,分配了一个套接字用于侦听本地端的端口。从此端口到远程主机的连接通过安全通道实现。例如,可以指定端口 143 以通过 IMAP4 远程获取电子邮件。同样,也可以在远程端指定端口。

开始之前

使用端口转发之前,管理员必须先在远程安全 Shell 服务器上启用端口转发。有关详细信息,请参见如何在安全 Shell 中配置端口转发

  • 设置从远程端口到本地端口或者从本地端口到远程端口的安全端口转发。
    • 要将本地端口设置为接收来自远程端口的安全通信,请同时指定这两个端口。

      指定用于侦听远程通信的本地端口。此外,指定用于转发通信的远程主机和远程端口。

      mySystem% ssh -L localPort:remoteHost:remotePort 
    • 要将远程端口设置为接收来自本地端口的安全通信,请同时指定这两个端口。

      指定用于侦听远程通信的远程端口。此外,指定用于转发通信的本地主机和本地端口。

      mySystem% ssh -R remotePort:localhost:localPort
示例 1-4  使用本地端口转发接收邮件

以下示例说明如何使用本地端口转发来安全地接收来自远程服务器的邮件。

myLocalHost% ssh -L 9143:myRemoteHost:143 myRemoteHost 

此命令可将连接从 myLocalHost 上端口 9143 转发到端口 143。端口 143myRemoteHost 上的 IMAP v2 服务器端口。用户启动邮件应用程序时,可指定 IMAP 服务器的本地端口号码,如 localhost:9143

示例 1-5  使用远程端口转发在防火墙外部进行通信

本示例说明企业环境中的用户如何将连接从外部网络中的主机转发到公司防火墙内的主机。

myLocalHost% ssh -R 9022:myLocalHost:22myOutsideHost

此命令将连接从 myOutsideHost 上的端口 9022 转发到本地主机上的端口 22sshd 服务器)。

myOutsideHost% ssh -p 9022 localhost
myLocalHost%