如果您准备好设置SFTP服务器,请在JSCAPE在线查看我们的分步指南!本指南适用于准备使用我们的MFT服务器的人。
概述
这篇文章适用于那些想要深入了解设置SFTP服务器的步骤的人。我敢肯定,你们中的一些人已经足智多谋地浏览了文档并筛选了其中的所有相关页面。但对于那些只想要一个地方的人来说,这篇文章适合你。
在本教程中,我将使用JSCAPEMFT服务器,这是我们的托管FTP服务器,它支持SSHFTP以及许多其他安全文件传输协议。由于此托管文件传输服务器是由Java构建的,因此它可以在不同平台上运行,包括MicrosoftWindows(32位和64位)、Linux/UNIX、Solaris、AIX、IBMz/OS和MacOSX,并支持SSL和TSL。
如果您想一步一步地学习本教程,您可以通过单击下面的按钮下载JSCAPEMFTServer的免费评估版。不要忘记选择与您的操作系统相对应的安装程序。
安装托管文件传输服务器
下载安装文件后,请按照本文档中的相应说明进行操作。转到安装部分并查找与您的操作系统相对应的说明。
如果您使用的是Linux,还可以观看以下任何视频教程:
对于基于Debian的Linux
对于基于RPM的Linux
您也可以按照这个由三部分组成的系列中的说明进行操作(仍然适用于Linux安装)。该特定教程包括有关激活文件传输服务和创建FTP/SFTP用户帐户的说明。两者都是SFTP服务器的基本元素,将在本文后面再次讨论。
准备服务器和客户端密钥
SFTP连接通过各种安全机制保护文件传输,包括动态数据加密、2因素客户端身份验证和数据完整性检查。动态数据加密使文件在传输过程中不可读,从而保护数据免受窃听。另一方面,强身份验证可防止冒名顶替者访问存储在服务器上的文件。最后,数据完整性检查确保可以检测到传输过程中对数据的任何更改。
这些安全机制是通过使用服务器密钥、客户端密钥和各种算法来实现的。有关服务器和客户端密钥的详细讨论,请阅读文章:服务器和客户端密钥在安全文件传输中的作用。在SFTP服务器上设置SFTP算法一文中介绍了SFTP算法。
设置服务器密钥
SSH文件传输协议(SFTP)用于创建安全连接和SSH密钥以访问和管理SSH服务器。要开始设置服务器密钥,请登录JSCAPEMFT服务器管理器并转到控制面板顶部的密钥菜单。
接下来,导航到ServerKeys选项卡,然后单击Generate>Generatekey。
填写“生成服务器密钥”对话框中的字段。您需要输入以下信息:
密钥别名-密钥别名只是用于在JSCAPEMFT服务器管理器环境中引用此特定密钥的名称,例如your_server_key。
密钥算法-在RSA或DSA之间进行选择。单击该链接可对这两种关键算法进行有启发性的讨论。
密钥长度-在1024和2048之间进行选择。如果您需要有关该主题的更多信息,请阅读文章“选择加密文件传输的密钥长度”。另一篇有用的文章是“我们应该开始使用4096位RSA密钥吗?”
有效期-指定您希望此密钥保持有效的天数。
通用名称(CN)-这将是密钥的名称。通常,您会使用服务器的域名,例如“sftp.yourdomain.com”。
组织单位(OU)-指示组织中将使用此密钥的特定单位,例如会计。
组织(O)-您的组织的名称。
地区(L)-您所在城市的名称。
州/省(ST)-您所在的州或省的名称。
Country(C)-您的两个字符的国家代码,例如“US”
完成后,单击“确定”按钮。
您现在应该能够在服务器密钥列表中看到新创建的服务器密钥。
设置客户端密钥
客户端密钥用于在客户端登录期间建立更强大的身份验证过程。基本上,常规SFTP登录只需要用户名和密码。但这些登录凭据有时可以被网络犯罪分子通过暴力攻击或社会工程方法获得。
客户端密钥允许您添加另一层保护,因为随后将要求用户提交他们拥有的东西,即他们各自的客户端密钥私钥。换句话说,每个客户端密钥应该对应一个用户。
当两种不同的身份验证方法结合在一起时——在这种情况下是密码身份验证和公钥身份验证(主机密钥身份验证)——你就有了双因素身份验证。这导致了一种更强大的身份验证方法。在什么是SFTP密钥?
要设置客户端密钥,请转到“客户端密钥”选项卡并单击“生成”按钮。
然后,您将看到一个类似于前面显示的对话框。大多数字段的定义与服务器密钥对话框中的字段完全相同,但以下两个除外:
密钥别名-我们建议您使用此密钥将绑定到的用户帐户的用户名。
公用名(CN)-这应该是用户的全名。
完成后单击确定按钮。
然后将要求您指定将保存此密钥的文件的名称。确保文件以PEM格式保存。否则,您将无法将其用于SFTP公钥身份验证。
完成后单击确定按钮。
因为用户需要在登录时提交此文件,所以您必须在创建此文件后将其发送给用户。它只是一个文件,因此您可以通过电子邮件发送、将其刻录到CD或将其复制到U盘。作为附加的保护层,您还可以为此文件指定密码(通常称为“密码短语”)。
注意:确保用户将文件保存在秘密位置。
您应该能够在客户端密钥证书列表中看到新创建的客户端密钥。
此时,您已经成功地准备了服务器和客户端密钥。单击“确定”继续。
激活SFTP服务
要启用SFTP服务,请返回JSCAPEMFT服务器管理器主屏幕,导航到“域”菜单,选择要启用其SFTP服务的服务器的域名,然后单击“编辑”按钮。
接下来,转到服务模块,然后单击添加按钮。
服务协议对话框出现后,从下拉列表中选择SFTP/SCP,然后单击确定。
在随后的屏幕中,导航到主机下拉列表并选择服务器的主机或IP地址。
保持端口号不变。它可能会设置为22。
在Privatekey下拉列表中,选择您之前创建的服务器密钥的别名。
最后,从身份验证方法列表中选择密码和公钥。这将启用SFTP双重身份验证。这意味着,尝试登录您的SFTP服务器的用户必须输入他的用户名和密码并加载他的私钥文件(您之前下载并发送给用户的文件)。
单击确定按钮继续。
您新激活的SFTP服务现在应该添加到您的服务列表中。
添加用户
最后一步是添加新用户。转到用户模块,然后单击添加按钮。
一旦出现用户模板对话框,只需单击确定按钮以选择默认模板。
在“添加用户”对话框中,输入要创建其帐户的用户的全名。
指定登录用户名和初始密码。
如果需要,您还可以输入其他信息(例如电子邮件、公司名称、电话号码等)。
如果您之前创建了客户端密钥,您将希望将该密钥与该用户相关联(当然假设该密钥是为该用户准备的)。为此,请向下滚动到底部,然后勾选要与此用户关联/绑定的客户端密钥名称旁边的复选框。
完成后单击确定。
而已!除非出现任何故障,您现在应该可以启动并运行功能齐全的SFTP服务器。如果您想了解如何使用SSHFTP客户端连接到此服务并与它实际交换文件,请阅读文章如何使用SFTP客户端。或者,如果您喜欢使用终端,请阅读文章在命令行上使用SFTP以了解如何通过基于终端的客户端进行连接。