有些系统SSH服务不是默认开启的,如docker或者vm安装ubuntu系统,就需要手动安装和打开。

安装和连接

安装服务

apt update && apt install openssh-server

运行服务

/etc/init.d/ssh start

加入自启动

systemctl enable ssh

在其他电脑上登录ssh

ssh root@192.169.123.1

通过ssh开启隧道代理

远程端口代理到本地

如访问远程服务器的80端口

# ssh -L [bind_addr][:local_port]:[remotehost][:remote_port] name:remotehost
ssh -L localhost:80:remote:80 root@192.169.123.1

bind_addr(可选):默认为localhost,即只在本地计算机上监听连接。你也可以指定其他本地地址,例如127.0.0.1或0.0.0.0。

local_port:指定本地计算机上要监听的端口。当有连接到该端口的请求时,SSH将其转发到远程服务器。

remotehost:指定要连接的远程服务器的地址或主机名。

remote_port:指定远程服务器上要连接的端口。

本地端口代理到远程

如访问远程服务器的80端口,实际访问的是本地的8080端口

# ssh -R [remotehost][:remote_port]:[bind_addr][:local_port] name:remotehost
ssh -R remote:80:localhost:8080 root@192.168.123.1

和代理到本地的差别是使用 -R ,远程地址放前面,本地地址放后面。