您的位置:首页 > 运维架构 > Linux

linux ssh 端口转发

2020-07-04 12:21 357 查看

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

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

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

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

主机A和B生成密钥

[code][root@localhost .ssh]# ssh-keygen

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

 

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

[code][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上输入如下命令

[code][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://www.geek-share.com/detail/2688543603.html

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: