windows 上搭建 sftp 服务器 -freesshd全过程( 在linux上部署逐浪CMS的必读教程)


文章标题: windows 上搭建 sftp 服务器 - freesshd全过程
关键字 : freesshd
文章分类: 教程
创建时间: 2020年3月23日

缘由

Zoomla!逐浪CMS v8全面基于.net Core,需要支持linux,sftp显然是一个不错的选择。
linux 下 sftp 默认都会安装的, Windows 就没有了。网上搜的资料发现比较好用的是 freesshd,免费版中最好用的。

1,下载:http://www.freesshd.com/?ctt=download , 只下载 freeSSHd.exe 就可以了

2,安装:一路默认就可以了

3,设置:(网上资料不全,遇到的问题搜了好久也没个详细的信息,所以写篇博客记录)

特别说明一下,这里设置为密码登陆方式,而不用密匙方式,因为最近工作中在做 sftp 密码非交互式登陆

最近在使用vscode,其中FTP管理,要么是暗网式的管理,要么vscode-sftp工具则默认是sftp协议,于是只能动手部署了!

有朋友想知道sftp、ftp、ftp有什么区别,这里有一篇深度文章可以浏览,来自逐浪CMS发哥呕心之作:站长管理服务器必读:Ftp、Ftps与Sftp三兄弟的不同与区别以及部署全指引
https://www.z01.com/help/Cloud/3553.shtm

动手

SFTP 服务端工具CSDN下载:https://download.csdn.net/download/chang_chao_123/11175571

官方地址:http://www.freesshd.com/index.php?ctt=download

windows 上搭建 sftp 服务器 -freesshd全过程( 在linux上部署逐浪CMS的必读教程)

第一步:添加用户

windows 上搭建 sftp 服务器 -freesshd全过程( 在linux上部署逐浪CMS的必读教程)

第二步:设定ssh地址,选择本地IP地址

windows 上搭建 sftp 服务器 -freesshd全过程( 在linux上部署逐浪CMS的必读教程)

第三步:在SFTP选项卡中,选择SSH服务器默认路径

windows 上搭建 sftp 服务器 -freesshd全过程( 在linux上部署逐浪CMS的必读教程)

第四步:Authentication 中 Password authentication 一栏 要选择 Required ,否则客户端连接时输入密码总是错误

windows 上搭建 sftp 服务器 -freesshd全过程( 在linux上部署逐浪CMS的必读教程)

server status 中 run ssh servers

这里会遇到几个问题

1,提示私有秘钥没安装
安装时如果安装路径不是 C 盘的话 或 安装过程提示产生私有秘钥你却没做,请看以下安装目录freeSSHd下是不是只有 FreeSSHD,unins 4个文件

如果安装在C盘的话,当安装私有秘钥会多出这几个文件:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RKsiz91P-1584955609088)(http://www.z01.com/UploadFiles/Anony/content/md/OIe5aSsX4J…png)]
2,还会有遇到下面的问题,即ssh服务无法跑起来
请到进程中杀掉 FreeSSHDService.exe,然后到安装目录下 使用管理员权限运行 FreeSSHDService
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MHOHcd3g-1584955609088)(http://www.z01.com/UploadFiles/Anony/content/md/Vjwq2IANbr…png)]

OK,终于可以起来了
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-B8ZEvuWo-1584955609089)(http://www.z01.com/UploadFiles/Anony/content/md/uZzHm18vJB…png)]

补充:

sftp [email protected]
[email protected]’s password:
Permission denied, please try again.
[email protected]’s password:
Permission denied, please try again.
密码明明输入正确的,可能还会遇到上面的情况, rm -rf ~/.ssh 也不行的话, 就是因为 windons 上运行 freesshd 没以管理员权限运行了哦!!!

补充:Permission denied, please try again. , 有时候上面情况试过了,还会出现这样的话,看一下管理员权限默认起来的 ssh ip 是不是对的?如果不对,然后自己改动后点击应用是没有什么卵用的,还是连不上(奇葩bug真多)。这个时候呢,改到你需要的ip后,点击ok最小化界面,然后 unload freesshd, 再重新管理员权限启动,注意起来后默认的ssh ip 一定要是你需要的。

推荐管理工具

Windows最强ssh客户端推荐 —— Bitvise SSH Client

据说这是一个高富帅的SFTP管理工具:bitvise 。http://www.bitvise.com/ssh-server-users-guide

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wRIWPYot-1584955609089)(http://www.z01.com/UploadFiles/Anony/content/md/ZDXe1rx8OO…png)]

原名Tunnelier,解除它是因为为了sshFQ,没想到它既有SSH Terminal,又集成SFTP,还能FQ,功能一应区全。

还支持pem证书,回想最初使用putty,还要把pem证书进行转换才能使用。

另外,它的安装目录下还带有ssh命令行工具:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-HX4laZlM-1584955609090)(http://www.z01.com/UploadFiles/Anony/content/md/ANuULwVqMs…png)]

sftpc.exe是SFTP命令行
sexec.exe是远程执行指令
stermc.exe是ssh客户端
使用这些命令进行远程的SSH维护,避免了老是切换到Linux下进行的麻烦

提示

注意:设置的 sftp 根路径不要出现中文,会出错。
sftp端口默认是22
在windows 8以上操作系统中,请赋予程序管理员权限。