linux ssh 端口转发

2020年注定是个不平凡的一年,北京疫情最近又闹的挺严重,希望能在以后的时间里,老百姓的日子能快点好起来,美国也能好起来。

最近看到公司是使用跳板机来登录远程服务器主机的,可能服务器主机只是授权跳板机可以远程访问ssh端口。以前没有接触过,今天做了个实验试了一下。

假设主机A,主机B,想通过访问主机A的8899端口连接到主机B的22端口。

  1. 首先主机A和B需要开启免密连接即 ssh-keygen,然后把主机A的公钥拷贝到主机B

主机A和B生成密钥

[root@localhost .ssh]# ssh-keygen 

生成的密钥存在于root/.ssh文件夹下,自己可以看下是否生成成功

 

2.把主机A的公钥拷贝到主机B

[root@localhost .ssh]# ssh-copy-id root@192.168.73.130
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@192.168.73.130's password: 

3.主机A端口映射到主机B

在主机A上输入如下命令

[root@localhost .ssh]# ssh -C -f -N -g -L 8899:192.168.73.130:22  root@192.168.73.130

-C:压缩数据传输。

-f :后台认证用户/密码,通常和-N连用,不用登录到远程主机。

-N :不执行脚本或命令,通常与-f连用。

-g :在-L/-R/-D参数中,允许远程主机连接到建立的转发的端口,如果不加这个参数,只允许本地主机建立连接。

-L 本地端口:目标IP:目标端口

将本地机(客户机)的某个端口转发到远端指定机器的指定端口. 工作原理是这样的, 本地机器上分配了一个 socket 侦听 port 端口, 一旦这个端口上有了连接, 该连接就经过安全通道转发出去, 同时远程主机和 host 的 hostport 端口建立连接. 可以在配置文件中指定端口的转发. 只有 root 才能转发特权端口. IPv6 地址用另一种格式说明: port/host/hostport

-R本地端口:目标IP:目标端口
参考

------------------------------------------

https://blog.csdn.net/isoleo/article/details/52944763

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值