今天使用Windows的命令行工具Windows Terminal的时候,找到一个方式,可以通过这个用ssh直接连接服务器,非常好用。

虽然windows从Win10 1809 和Windows Server 2019开始支持OpenSSH Server。

不过用自带的ssh连接非常的不方便,需要每次都输入密码。百度了一下,发现可以通过安装sshpass的方式,可以将登录命令合成一句命令行,从而避免每次都输入密码。

可是sshpass没有windows版本的,这就非常的难受。

通过wsl虚拟的一台ubuntu系统,在ubuntu上面安装sshpass,然后借用ubuntu当作跳板,就可以让Windows Terminal 直连服务器了。

首先

通过微软商店,搜索安装windows terminal和ubuntu。注意,在用微软商店安装的时候,不能开代理,不然很有可能打不开。安装完了之后打开windwos terminal的设置,可以看到自动帮我们配置了一个ubuntu的连接方式。
打开ubuntu连接

安装sshpass

apt-get install sshpass

测试连接

在ubuntu里面直接连接服务器试试

sshpass -p 密码 ssh 用户名@ip地址 -p 端口

如果没问题就开始下一步的配置了,有问题请自行百度

配置terminal

在terminal里面新增一个配置,名称的话自己取一个,重要的是命令行,在命令行填写框中填写

wsl.exe -d Ubuntu-20.04 sshpass -p 密码 ssh 用户名@ip地址 -p 端口

意思是借用ubuntu帮我们执行后面那句命令,配置完了,记得保存。

打开选项,成功连接

原生的窗口,没有任何多余的东西,简洁而不失优雅。

Q.E.D.