如何为 sftp 服务器提供 Web 界面

如何为 sftp 服务器提供 Web 界面

我们需要安全地向客户提供文件。我们希望传输过程加密,用户需要输入用户名/密码,并且他们应该能够通过 Web、ftp/sftp 和 curl 访问他们的文件。

显而易见的想法是使用 openssh 及其 sftp 服务器。但是,我不知道如何为 sftp 服务器提供 Web 界面。

换句话说,虽然大多数客户端会使用自动脚本来获取文件,但他们可能偶尔需要从网页手动获取文件(这意味着他们需要手动输入用户名/密码)

有任何想法吗?

编辑:抱歉,忘了说我们打算通过 Linux 服务器提供这些文件

答案1

拥有“sftp://”链接确实需要您有一个注册的支持 sftp 的客户端来处理 sftp UNC,并且还需要重新登录,除非您在 unc 中提供用户名/密码...即 sftp://user:[电子邮件保护]/path/file。这实际上违背了将 sftp 服务器与 http 服务器分开的目的。

为什么不简单地使用您选择使用的任何身份验证方法建立 HTTPS 会话,然后让 http 服务器分发文件?如果您使用的是 apache,则可以允许目录浏览,它将自动从特定目录生成目录列表……并且您可以从同一目录中进行 sftp 提取。(如果您希望同时使用两者)

如果您坚持使用 sftp...请不要忘记限制使用 ssh 的用户登录以仅允许 sftp 和/或 scp...否则您将面临一个巨大的安全漏洞。

答案2

您是否考虑过文件管理器里面用户分钟? 您可以通过 HTTPS 提供 Usermin,而且这种方式是安全的,虽然您没有提到您使用的是什么操作系统,但 Webmin/Usermin 适用于各种各样的系统。

答案3

为什么需要 sftp?您是否考虑过只设置 webdav?使用 webdav,用户将能够直接通过 HTTP(S) 上传和获取文件。

答案4

看看如何使用 AnyClient。这是一项免费的基于 Web 的服务,允许用户从网页连接到 FTP/S、SFTP、WebDAV 和 Amazon S3 服务,而无需安装任何客户端软件。

http://www.jscape.com/products/file-transfer-clients/anyclient/

相关内容