ssh 转发

  • C表示压缩数据传输
  • f表示后台用户验证,这个选项很有用,没有shell的不可登陆账号也能使用.
  • N表示不执行脚本或命令
  • g表示允许远程主机连接转发端口

  • -L 本地转发

  • -R 远程转发

  • -D port 指定一个本地机器 “动态的'’ 应用程序端口转发. 工作原理是这样的, 本地机器上分配了一个 socket 侦听 port 端口, 一旦这个端口上有了连接, 该连接就经过安全通道转发出去, 根据应用程序的协议可以判断出远程主机将和哪里连接. 目前支持 SOCKS4 协议, 将充当 SOCKS4 服务器. 只有 root 才能转发特权端口. 可以在配置文件中指定动态端口的转发.

1、将本机6300端口转发到远端1521端口

本机(运行这条命令的主机)打开6300端口, 通过加密隧道映射到远程主机172.16.1.164的1521端口(使用远程主机oracle用户). 在本机上用netstat -an|grep 6300可看到. 简单说,本机的6300端口就是远程主机172.16.1.164的1521端口.

ssh -CfNg -L 6300:127.0.0.1:1521 oracle@172.16.1.164
2、将本机81端口转发到远端4443端口

例:(192.168.21.31执行)使用192.168.21.31的81端口,转发到192.168.21.33的4443端口

ssh -CfNg -L 81:127.0.0.1:4443 root@192.168.21.33
3、将远端的1521端口转发到本机的6300端口

作用同上, 只是在远程主机172.16.1.164上打开1521端口, 来映射本机的6300端口.

ssh -CfNg -R 1521:127.0.0.1:6300 oracle@172.16.1.164
4、将远端的81端口转发带本机4443端口

例:(192.168.21.33执行)让远程(192.168.21.31)的81端口,转发到(192.168.21.33)4443端口

ssh -CfNg -R 81:127.0.0.1:4443 root@192.168.21.31
5、指定一个本地机器 “动态的'’ 应用程序端口转发
ssh -C -f -N -g -D listen_port user@Tunnel_Host

https://www.zfl9.com/ssh-port-forwarding.html

results matching ""

    No results matching ""