主页 回到教程 在线帮助

设置Xlight FTP服务器使用SSH2/SFTP协议

Xlight FTP服务器现在支持基于SSH2的安全文件传输协议(SFTP). SFTP不是基于SSH2的FTP协议, 而是一个由IETF SECSH工作组设计的和FTP协议完全没有关系的新协议. SFTP本身不提供认证和安全性, 它依赖下层的SSH2协议提供安全的连接. 注意: SSH2/SFTP是Xlight FTP服务器标准版或专业版的可选功能. 在30-天试用期后, SSH2/SFTP是可选的附加功能,你需要一个单独的SSH2/SFTP升级License. 只有标准版本或专业版本的Xlight FTP 服务器用户可以升级到SSH2/SFTP附加功能.

创建SSH2/SFTP虚拟服务器的步骤很直接. 当你创建一个新的虚拟服务器时, 选择SSH2作为协议, 象下图显示的那样: (注意: 如果服务器没有SSH2/SFTP license, 你将不能在协议的选项里看到SSH2.)


就像FTP的默认端口是21, SSH2/SFTP的默认端口是22. 当你创建了SSh2/SFTP虚拟服务器后, 你能在其中添加用户并象管理FTP虚拟服务器那样管理它.

管理SSH2服务器主机密钥

SSH2主机密钥是一个独特的密钥用于标示服务器. 当你创建了一个新的SSh2/SFTP虚拟服务器后, SSH2主机密钥将会自动产生. 然而如果你希望导入已经有的SSH2主机密钥,或者备份现有的SSH2主机密钥, 你可以管理它从 [虚拟服务器设置] -> [通用] -> [SSH2主机密钥] , 如下图所示:


导入pkcs12格式的SSH2主机密钥

当你创建一个SFTP的虚拟服务器,Xlight FTP服务器将会自动创建SSH2主机密钥. 你不需要做任何事情. 如果你想要使用不同的SSH2主机密钥, 你可以参考下面的例子.

这个例子使用openssl创建自签名证书文件和包含RSA公共和私有密钥的文件, 并用它们生成pkcs12格式的文件(myKey.p12). 这个文件可以被导入Xlight FTP 服务器作为SSH2主机密钥.

创建RSA密钥和自签名证书

openssl req -x509 -newkey rsa:4096 -keyout myKey.pem -out cert.pem -days 365

从上面创建的创建RSA密钥和自签名证书,生成pkcs12格式的文件

openssl pkcs12 -export -out myKey.p12 -inkey myKey.pem -in cert.pem


SSH公共密钥认证

本地SFTP用户可以使用公共密钥认证替代默认的密码认证. 公共密钥认证是基于用户的. 从用户设置, 你需要为这个用户启用公共密钥认证并选择公共密钥文件, 如下图所示:


选择公共密钥文件

你可以选择一个用于公共密钥认证的公共密钥文件. SSH2/SFTP客户端需要使用相关的私钥密钥对服务器进行用户认证. 根据FIPS 186-2,DSA算法密钥长度需要一直是1024比特. RSA算法的密钥长度不限于1024比特.


选择其他公共密钥文件

从版本3.8.1开始, Xlight FTP 服务器可以支持多个公共密钥文件认证. 为了使用其他公共密钥文件, 你可以选择一个包含其他公共密钥文件位置的文件,如下图所示: