在 Ubuntu 上将 vsftpd 设置为 sftp 服务器

在 Ubuntu 上将 vsftpd 设置为 sftp 服务器

我正在尝试设置 vsftpd (或其他应用程序)作为 Ubuntu 服务器上的 sftp 服务。我想为一个(或少数)系统用户公开 sftp,理想情况下他们应该有一个 chroot 监狱,其位置不同于他们的主目录。这似乎是我应该能够使用 vsftpd 处理的事情,但是我不明白发生了什么,并且怀疑“某些其他服务”实际上正在响应我的 sftp 请求。这就是我所做的:

  1. 据我所知,apt 安装 vsftpd 并进行配置。
  2. 我可以 sftp 到服务器并放置和获取文件,但是 chroot 不起作用。
  3. 消除vsftpd 与apt purge vsftpd
  4. 我可以仍然使用 sftp 连接到服务器并放置和获取文件?

所以 - 看来我需要理解/解决的第一个问题是谁实际上在回复我的 sftp 请求 - 因为它似乎不是 vsftpd 安装?

这是 Ubuntu 20.04 的原生安装

答案1

SFTP事实上,SSH 文件传输协议又名安全文件传输协议。它是一个 SSH 应用程序,与文件传输协议(因此与vsftpd)。正如您所说,它是由套餐openssh-server、服务提供的sshd

您可能正在寻找FTPSFTP 安全又名FTP-SSL)是 FTP 的扩展,因此可以由vsftpd其他 FTP 服务器提供;它使用 TLS 来保证 FTP 的安全。

让事情变得更加复杂的是,曾经有一个SFTP简单文件传输协议),FTP 的一个不安全的简化版本,从未成为标准,现在仅具有历史地位。现在使用的一种简化的、轻量级的、免登录的 FTP 是TFTP简单文件传输协议)。

您可以使用 SFTP 或 FTPS 来替代不安全的纯文本 FTP。我想说 SFTP 可能更标准、更健壮。

答案2

好的 - 正如@steeldriver 所指出的,我的主要困惑来自于我使用的是 openssh 的 sftp 服务,而不是我安装的 vsftpd 软件。

相关内容