【转】用cygwin构建本地ssh服务器
首先去http://www.cygwin.com/下载setup.exe用于安装了更新,
然后设置安装的路径了下载的包的路径,然后选择一个服务器就可以下载了。
因为要构建本地ssh,所以默认的设置是不够的,需要另外选择两个命令:
1 Admin → cygrunsrv
2 Net → openssh
然后让它慢慢下载去,下载完毕之后点击安装即可。(如果提示下载未完成则点击重新下载即可)
安装完毕之后,打开 C:\cygwincygwin.bat,增加代码:set CYGWIN=binmode tty ntsec
然后运行cygwin。
试试看运行:cygrunsrv -S sshd,如果得到结果是:service does not exist(恭喜你,还是正常的)
但是如果得到command cygrunsrv not found,那么你还没有安装cygrunsrv,返回安装。
然后运行 ssh-host-config -y 即可(前提条件是你现在使用的window帐户有密码,如果没有密码必须设置一下)
然后这个ssh server就已经建立,你可以使用 open ssh 或者secureCRT来链接。
至于路径方面,可以通过修改 HKEY_LOCAL_MACHINE/SOFTWARE/Cynus Solutions/mounts v2/home下的native的值
原先是c:\cygwin\home\ipis 可以修改为你指定的路径,如:F:\ipis ,则到时候的home将指向该位置。
(如果运行ssh-host-config时提示command cygrunsrv not found,估计是没有下载了open ssh;
如果运行的时候提示无法识别程序,因为找不到cygwin1.dll文件,估计是安装了多个程序,致使cygwin无法定位该文件,可以把其它cygwin1.dll文件更名或者删除。我的机器装了好些都有这个文件,最后根据提示是open ssh的cygwin1.dll有冲突,修改了文件名之后就可以运行了)
不过还是有点问题,我运行 tail 命令的时候竟然出现
Can't open perl script "c:\Program": No such file or directory
的提示!不知道哪里出了错,google一下也没有找到什么好的解决方案。
只能继续钻钻看看 :)
(今天重新下载,重新安装了openssh,然后再次运行ssh-host-config,没有问题了。呵呵。)
启动ssh server的命令:
cygrunsrv -S sshd 或者 cygrunsrv --start sshd
关闭ssh server命令:
cygrunsrv -E sshd 或者 cygrunsrv --stop sshd
如果重启的话可以使用:
cygrunsrv --stop sshd && cygrunsrv --start sshd (从以上应该可以推测还有其它写法的)
-----------
参考资料:
http://ncyoung.com/entry/389
--------------------
如果使用老版本的cygwin,可能引发安装的时候出现
QueryServiceStatus: win32 error 的结果
主要的解决方案是:
------------ 重新安装sshd
cygrunsrv -R sshd
ssh-host-config
------------
或者把cygwin的目录设置成系统权限
相关推荐
projava 2020-11-14
WanKaShing 2020-11-12
airfish000 2020-09-11
tryfind 2020-09-14
yegen00 2020-09-10
kkaazz 2020-09-03
风语者 2020-09-02
BraveWangDev 2020-08-19
lichuanlong00 2020-08-15
gsl 2020-08-15
pandaphinex 2020-08-09
yhuihon 2020-08-09
CheNorton 2020-08-02
xiangqiao 2020-07-28
hpujsj 2020-07-26
hpujsj 2020-07-26
sshong 2020-07-19
BraveWangDev 2020-07-19
annan 2020-07-18