Windows 7下 搭建 基于 ssh 的sftp 服务器
Windows xp 下 搭建 基于 ssh 的sftp 服务器,服务器端可以用 freesshd,F-secure server等,filezilla server不可用,之前傻乎乎的用filezilla 来做服务器,找不到任何有关sftp的配置选项,推荐用freesshd,免费、简单,直观,客户端可以用一般的支持sftp的都可以,filezilla,f-secure client 等,我用freesshd和filezillazilla 搭建sftp 服务,我在内网搭建的,如果在外网发布,防火墙上得做一个地址映射。关于ssh,sftp可以上网找介绍,反正是加密安全传输数据。
Freesshd:
各项配置非常简单直观,配好监听的ip地址和端口(端口默认为22,建议不用22端口,网上经常有人扫描22端口,ssh弱口令攻击),在users里建立用户账户,host restrictions 可以简单的对客户端可访问的ip地址做些限制,有白名单和黑名单两种模式,logging记录txt格式的日志,online users 显示当前在线的用户。Sftp选项下设置sftp的主目录。


重点讲一下认证吧,freesshd支持两种方式的认证,password和public key,你可以使用其中的任意一种,也可以要求客户端同时进行两种认证,也就是说,如果两个都设置为required,客户端要想连入服务器,得同时要有密码和public key。都设为allowed,任意一种认证都可以进入服务器。第一种认证简单,只要在客户端输入用户名和密码就可以,第二种就需要一对密钥了(公钥和私钥,私钥客户端持有,公钥要放到服务器上,图中的public key folder就是存放各个客户端私钥对应的公钥的).

产生密钥对的工具,推荐使用一款叫putty的工具软件,运行该软件下的puttygen.exe ,如下图,点击generate,按操作提示在空白处移动鼠标即可,保存公钥和私钥文件,注意:公钥和私钥的文件名要和用户名一致,比方用户名是jane,公钥和私钥文件名分别为jane,jane.ppk。公钥放到freesshd下的pulic key folder,私钥是客户端使用的。


关于客户端filezilla :打开站点管理器,填好要连接的站点信息及用户名和密码,如果要求公钥认证的(公钥认证时,用户名那一栏还是要填的,密码就不用填了),需要在sftp选项中添加putty产生的那个私钥文件(这里,我犯了一个错误,把私钥文件放在了一个中文目录下,一直都不起作用,后来放到一个英文文件夹下才可以,看来老外的软件还是对英文支持比较好)这样,整个sftp就搭建完成了,公钥认证的方式,服务器和客户端密钥的交换还可以使用putty下的pageant实现,把私钥加到pageant的key list中就可以了。



=======================
注意:
在客户端登陆过程中为了避免频繁的要求输入用户名和密码,故使用密钥验证。在使用密钥验证的过程中最容易出现public key验证错误的情况
在密钥验证失败时最直接的原因就是pubic key的内容不能被freessh识别,所以没法认证私钥,故refuse connnect
putty生成密钥对的过程中必须要手动保存产生的public key内容到与登录用户名相同的公钥文件中,只有手动保存的内容 freessh才能识别这种类型的公钥,并且所有公钥内容必须在一行上,不能出现换行符,最好用txt保存,不能存在文档格式符号。
private key后缀名必须是.ppk文件名为登录的用户名,私钥内容格式不受限制,只要本地客户端能识别即可。添加私钥到sftp client完成密钥认证。
Windows 7下 搭建 基于 ssh 的sftp 服务器的更多相关文章
- Windows下搭建基于SSH的Git服务器
Git客户端安装 客户端要同时安装在远程服务器和自己的电脑上,下载地址:http://msysgit.github.io/ 选择安装组件 :也可以默认选择; 图标组件(Addition icons) ...
- 在window系统下搭建基于ssh的git服务器
以下是基于window server 2012搭建的,学习搭建过程需要很多问题,找了许多文章做了一下总结. 1.所需的软件 Git for Windows: MsysGit(Git-1.7.4-pre ...
- windows下搭建基于nginx的rtmp服务器
https://blog.csdn.net/fireroll/article/details/51985688 Windows机器配置:Windows7旗舰版 64位Intel(R) Core(TM) ...
- freeSSHD在windows环境下搭建SFTP服务器
freeSSHD在windows环境下搭建SFTP服务器 0 建议现在windows环境下安装cygwin,否则在windows环境下cmd模式使用不了sftp去连接,可以利用win scp去测试连接 ...
- Windows平台下搭建Git服务器的图文教程
Git没有客户端服务器端的概念,但是要共享Git仓库,就需要用到SSH协议(FTP , HTTPS , SFTP等协议也能实现Git共享,此文档不讨论),但是SSH有客户端服务器端,所以在window ...
- Windows平台下搭建Git服务器的图文教程(转发)
Git没有客户端服务器端的概念,但是要共享Git仓库,就需要用到SSH协议(FTP , HTTPS , SFTP等协议也能实现Git共享,此文档不讨论),但是SSH有客户端服务器端,所以在window ...
- Windows操作系统下搭建Git服务器和客户端。
本文将介绍如何在Windows操作系统下搭建Git服务器和客户端.服务器端采用的是Bonobo Git Server,一款用ASP.NET MVC开发的Git源代码管理工具,界面简洁,基于Web方式配 ...
- Windows 7下搭建Jmeter测试环境
jmeter配置.安装 一. 工具描述 apache jmeter是100%的java桌面应用程序,它被设计用来加载被测试软件功能特性.度量被测试软件的性能.设计jmeter的初衷是测试web应用,后 ...
- 【大数据系列】windows环境下搭建hadoop开发环境使用api进行基本操作
前言 搭建完hadoop集群之后在windows环境下搭建java项目进行测试 操作hdfs中的文件 版本一 package com.slp.hadoop274.hdfs; import java.i ...
随机推荐
- UVA11806Cheerleaders(容斥)
转载请注明出处: http://www.cnblogs.com/fraud/ ——by fraud 题目意思:在m行n列的矩形网格中放k个相同的石子,问有多少中方法?每个格子最多放一 ...
- ORACLE11G常用函数
1 单值函数 1.1 日期函数 1.1.1 Round [舍入到最接近的日期](day:舍入到最接近的星期日) select sysdate S1, round(sysdate) S2 , round ...
- 手机扫描二维码下载APP,根据操作系统不同自动下载
Android和IOS手机扫描二维码下载APP,根据OS不同,自动处理相应下载操作.IOS自动跳转至AppStore应用下载页,Android自动下载应用的apk包. <script type= ...
- [C++程序设计]全局,局部变量
在函数声明中出现的参数名,其作用范围只在 本行的括号内.实际上,编译系统对函数声明中的 变量名是忽略的,即使在调用函数时也没有为它们 分配存储单元.例如 int max(int a,int b); ┆ ...
- php的一些小笔记--字符串
字符串: 转换ASCII函数: ord($tring) 返回ASCII,chr($ASCII)返回相应的字符 把字符串切割成数据的函数: chunk_split($string,$len) chunk ...
- GTW likes math(BC 1001)
GTW likes math Accepts: 472 Submissions: 2140 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 1 ...
- socket浅谈
1什么是socket? socket的英文原义是“孔”或“插座”.作为进程通信机制,取后一种意思. 通常也称作“套接字”,用于描述IP地址和端口,是一个通信链的句柄. (其实就是两个程序通信用的.)是 ...
- Apache监控
Apache性能监控 http://www.cnblogs.com/fnng/archive/2012/11/11/2765463.html 要监控apache的性能,我们需要修改配置文件,允许查看a ...
- 数据的加密传输——单片机上实现TEA加密解密算法
各位大侠在做数据传输时,有没有考虑过把数据加密起来进行传输,若在串口或者无线中把所要传的数据加密起来,岂不是增加了通信的安全性.常用的加密解密算法比如DES.RSA等,受限于单片机的内存和运算速度,实 ...
- 百度地图LV1.5实践项目开发工具类bmap.util.jsV1.0
/** * 百度地图使用工具类-v1.5 * * @author boonya * @date 2013-7-7 * @address Chengdu,Sichuan,China * @email b ...