当前位置: 首页 > 工具软件 > Autossh > 使用案例 >

windows使用Autossh和开机自启动脚本

施令雪
2023-12-01

前言

Linux使用autossh比较简单,centos/ubuntu只需要yum/apt-get install autossh即可。

目前windows使用autossh都必须安装cygwin软件。我也是在安装好这个软件的前提下,再使用autossh服务,配置开机自启动脚本的。(目前我只知道这种方法,如果有小伙伴知道windows如何不使用cygwin软件,也能使用autossh,欢迎在下方留言告知,本人也是小菜鸡一枚)

本篇博客不讲述如何安装cygwin软件。

cygwin官网:https://www.cygwin.com/

安装参考博客:http://tutorialspots.com/how-to-create-ssh-tunnel-on-windows-by-using-autossh-2984.html


如何设置开机自启动

1.添加开机启动脚本

在C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp路径下创建后缀名为vbs的文件,名字自拟。该路径下的文件会跟随系统开机自动运行。文件内容如下:

Dim objShell	
Set objShell = WScript.CreateObject ("WScript.shell")	
objShell.Run "C:\autostart.sh /start",0	
Set objShell=Nothing	

第一行:定义objShell变量

第二行:创建WScript.shell对象,赋值给objShell变量

第三行:执行run命令。C:\autostart.sh指存放autossh命令的sh脚本文件(这里我创建的是autostart.sh)。参数0指窗口隐藏运行。

第四行:释放变量。

文件保存后,如果电脑出现警告提示有程序正在加入开机启动项,要选择允许。

2. 添加autossh命令脚本

在电脑任意位置创建后缀名为sh的脚本,名字自拟。绝对路径添加到第一步创建的vbs文件中,让开机运行vbs文件,从而执行该脚本。脚本内容如下(以我的autossh反向代理为例:)

autossh -fCNR 3700:localhost:22 user@ip

        autossh命令成功运行的前提是ssh免密登录。由于autossh服务是基于cygwin的,所以公钥文件要使用xxx/cygwin64/home/用户名/.ssh路径下的id_rsa文件。

3. 更改sh脚本默认打开方式

        前两步执行完成后,重启电脑后,会弹出窗口让你选择运行这个sh文件的程序。因为该vbs文件代码没有指定程序来运行sh脚本,所以我们需要设定默认打开方式。右键sh文件,选择属性,选择更改打开方式,在这台电脑上查找其他应用,选择cygwin64/bin路径下的sh.exe。

设置完毕。重启后autossh保持后台运行,没有弹窗。再也不用担心服务器重启ssh连接断开了。

 类似资料: