基于freeSSHd软件构建SFTP服务器(用于开发测试SFTP服务器文件上传下载服务)

一、背景:

最近一个老系统生产环境出现了问题,这个系统的其中之一功能是:每天定时任务,从数据库采集数据,按照指定口径,生成报文,然后定时进行上传到远端SFTP服务器上,再另外的固定时间点,再下载今日上传报文的解析结果文件。

二、问题:

报送环节,上传到远端SFTP服务器的文件出现编码错误,本地文件是UTF-8格式,但是偶然会出现报送文件为:UTF-8-BOM

三、排查:

排查了java代码后,未能发现其中的问题,所以想到是否是建立SFTP通道时,将文件读取成流,然后上传过程中出现了问题,但测试环境没有SFTP服务器,只能自己搭建一个进行测试了。

四、搭建使用软件:经过网络搜索,确定使用freeSSHd免费软件进行搭建,不过网上太多的博客都是互相抄袭,而且很多博客的软件配置都不能使用,多方入坑,最后自己搞定了,这里记录一下,希望可以帮到看到的读者。

五、下载地址:http://www.freesshd.com/?ctt=download 当前最新版本是1.3.1,我也是使用这个版本

六、安装过程:

全部下一步,不用任何特殊设置,但是注意!!!安装完成后,会弹出两个窗口:

1,询问是不是要现在生成私钥private key,选择是

2,询问是否要把freeSSHd当作系统的一个服务自启动,这里我选择了否,推荐选择否,啥时候用啥时候启动呗。

3,安装完成后,双击桌面图标,会出现下图提示,点击ok后窗口就消失了

4,此时不要去再点击桌面上的图标了,去右下角任务栏隐藏展开,就能看到软件已经启动了

七、软件配置

1,打开软件后,如图所示:四个红框位置是需要我们配置的

2,ssh的配置:Listen address,这里我选的是本机的ip,port端口号,我为了防止冲突,自己随意选了一个

3,Authentication这里,默认就好,如图:

4,SFTP这里,设置的是远端SFTP的目录,自己找个目录定义即可,如果默认值的话,一般是系统用户下目录:

5,接下来是Users设置:如图add,选择密码验证方式,勾选SFTP

6,以上操作完成后,回到Server status,点击红框位置,可以看到 SSH server is running

到这里,sftp服务器就配置完成了

八、测试连接,打开cmd窗口,输入命令 sftp -P 1119 test@192.168.163.101 此处P要大写

连接成功。

注意:如果测试连接时,一直提示密码输入错误,可以试着关闭freeSSHd软件进程,然后以管理员身份重新运行这个软件,不过要注意检查自己的Users配置,SSH配置,Authentication配置。我写本文测试时依然遇到了一直输入密码提示错误的问题,然后重启了后发现,自己的Users配置没了,估计是管理员与默认启动方式的配置文件不同,重配一下就登陆成功了。

 

 

 

 

 

 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值