我们以前写过关于托管您自己的FTP服务器 ,但数据以明文传输,使其不适合机密文件传输。 在本指南中,我们将讨论FTP – SFTP的安全版本,以及为什么它是一种将文件传输到互联网上的其他人的绝佳方式。
为什么选择SFTP?
Geeks经常遇到这个问题:你有一个文件太大,无法通过电子邮件或即时通讯。 当然,你可以将它上传到Dropbox或其他云服务,但如果你没有/想要一个帐户,有足够的存储空间,或者如果你只是想绕过中间人,如果如果? 更不用说云服务的安全问题。
而不是经历那个麻烦,你可以通过使用SFTP传输文件(大和小)到你的朋友节省时间。 在传输之前不需要加密文件,因为它们通过非常安全的SSH协议进行隧道传输。 不仅如此,但现在你可以直接上传到你的朋友,而不是云,节省大量的时间。
但等等,还有更多! 如果你想与人分享更多的文件,你可以把它们放在一个指定的文件夹,你的朋友可以浏览你的电脑的那一部分,如果它是自己的一部分。 使用此方法,共享文件可以轻松很多,因为上传将由您的朋友而不是您发起。 所有你需要做的是拖放,让他们知道他们现在可以下载文件。
设置SFTP
在Windows中设置SFTP服务器将需要一些第三方软件。 大多数具有这种功能的软件将花费你,但我们将使用一个免费的freeFTPd 。 单击该链接下载并安装程序。 要预先警告,开发人员显然不是母语英语,并且它在很多文本中显示。 不要担心,这是一个合法的程序,我们已经测试,一切检查 – 你会很难找到一个更好的免费替代品。
正常进行安装,最后有两个提示,一个是询问是否应该创建私钥,另一个询问是否应该作为服务运行; 双击“是”。
安装完成后,通过桌面上的新快捷方式图标打开freeFTPd。 我们遇到了编写配置更改的问题,因此请确保右键单击该图标并以管理员身份运行程序。
要开始配置,请单击左侧的用户。
在此菜单中,单击添加并填写新用户帐户的信息以访问您的服务器。
在授权下,您可以选择使用“NT身份验证”或“密码存储为SHA1散列”。NT身份验证意味着它使用Windows用户名和密码,因此您需要在计算机上为访问的任何人创建一个新用户SFTP目录。 在大多数情况下,最好只是将密码存储为SHA1散列,并保持SFTP用户与Windows用户分离。
输入所需的用户名和密码后,取消选中底部的“FTP服务器”框,然后单击应用。 现在用户已设置,单击SFTP选项卡。
在这个选项卡上唯一值得改变的是SFTP根目录。 这指定您要共享的文件将驻留在哪里。 为了简单起见,我们只是将已经填充的目录更改为桌面上的文件夹。
准备好开始托管文件后,请点击此标签中的开始按钮。 Windows防火墙可能会弹出并询问您是否确定 – 单击允许访问。
现在您应该能够返回到状态选项卡,并看到您的SFTP服务器正在运行。
单击应用并保存以保留这些更改,然后关闭窗口。
freeFTPd将继续在后台运行。 要访问它,只需从通知区域打开它。
访问SFTP目录
在你的SFTP目录中放几个文件,这样我们可以做一些测试。 如果您将用户的主目录保留为其默认值(在我们的示例中为$ SERVERROOT \ geek),则需要在SFTP根目录中创建另一个目录。
从这个屏幕截图中可以看到,我们将两个测试文件放在SFTP服务器文件(SFTP根目录)文件夹内的geek目录中。 确保端口22转发到您的路由器上的PC,然后你准备好有人连接到您的电脑。 如果您需要有关端口转发的帮助,请参阅本指南 。
让你的伙伴下载一个能够访问SFTP服务器的FTP客户端 – 我们的建议是FileZilla 。 他们只需要输入您的IP地址,您之前配置的用户名和密码,并指定您的服务器正在运行的端口(如果您将其保留为默认值,它将是端口22)。
第一次连接到您的服务器时,将提示他们保存主机密钥。 他们只需要检查“始终信任”框,然后单击“确定”,再也不会再出现提示(除非由于某种原因更改主机密钥)。
您的朋友现在应该能够访问您放置在SFTP目录中的文件,并向其中添加他们想要与您共享的文件。