缩略词
本机:ssh命令发起方,即运行ssh命令的那台机器。也可简称客户端
远程机:ssh命令连接到的服务器,一般指运行ssh服务的那台机器。也可简称服务端
本地机群:能直接与本机通迅的主机集合,包含本机自身。
远程机群: 能直接与远程机通迅的主机集合,包含远程自身。
1. 描述一下目前的机器状况,梳理梳理:
机器 | IP | 用户名 | 备注 |
---|---|---|---|
A | 10.21.32.106 | gdut728 | 目标服务器,处于内网 |
B | 123.123.123.123 | root | 外网服务器,相当于桥梁的作用 |
ssh -fCNR [B机器IP或省略]:[B机器端口]:[A机器的IP]:[A机器端口] [登陆B机器的用户名@服务器IP]
参数 | 说明 |
---|---|
-o ServerAliveInterval=20 | 代表心跳包,ssh在一段时间没数据后会把连接给断开。 |
-g | 允许其他主机连接到本机端口进行转发。 如果无效,要设置本机**sshd_config文件:**gatewayports yes |
-N | 不执行远程命令。 仅做端口转发(仅适用于协议版本2)。 |
-f | 将ssh切换到后台 |
-D 6060 | 指定以本机哪个端口做为转发端口 |
proxy@outerserver | 以指定帐号连接远程机 |
[root@localhost ~]# ssh -fCNR 7290:localhost:22 root@www.wink.com
www.wink.com's password:
再B机器上可以看到7290已经启动
[root@woowink ~]# netstat -anp|grep tcp |grep LIST
tcp 0 0 0.0.0.0:9100 0.0.0.0:* LISTEN 27910/VirtualBoxVM
tcp 0 0 0.0.0.0:5901 0.0.0.0:* LISTEN 14389/Xvnc
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 27910/VirtualBoxVM
tcp 0 0 0.0.0.0:7280 0.0.0.0:* LISTEN 18753/sshd: root
tcp 0 0 0.0.0.0:6001 0.0.0.0:* LISTEN 14389/Xvnc
tcp 0 0 192.168.122.1:53 0.0.0.0:* LISTEN 4269/dnsmasq
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 12651/sshd
tcp 0 0 0.0.0.0:7290 0.0.0.0:* LISTEN 12719/sshd: root
在B机器上执行
[root@w ~]# ssh -fCNL *:1234:localhost:7290 localhost
The authenticity of host 'localhost (127.0.0.1)' can't be established.
ECDSA key fingerprint is SHA256:M3hxVKprCFRHotc1SzPShcwgemJv7y0T8tN08LyHFRU.
ECDSA key fingerprint is MD5:76:02:8d:95:43:f0:7e:84:fd:6e:75:ea:90:c8:95:fa.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'localhost' (ECDSA) to the list of known hosts.
root@localhost's password:
Permission denied, please try again.
root@localhost's password: