所有配备sftp的服务器都有scp吗?

所有配备sftp的服务器都有scp吗?

我想知道我是否可以假设我可以在任何服务器上使用 scp 获取文件,然后我可以使用 sftp 获取该文件。

答案1

大部分情况下是的。sftp 和 scp 都是通过 ssh 进行的文件传输协议,而 sftp 是比 scp 更新的功能,因此虽然有一些较旧的设置有 scp 但没有 sftp,但反过来则需要一些精心的配置。

但是,服务器可以允许 sftp 但不允许 scp。我能想到以这种方式配置服务器的一个原因是,如果你想要通过 ssh 允许单个服务,为了简单起见:sftp 和 scp 在安全方面提供相同级别的访问,但 sftp 更方便,因此 sftp 是首选。

换句话说,如果服务器可以执行 sftp,它就可以执行 scp;但它可能允许 sftp 并禁止 scp。

答案2

具有 OpenSSH 的服务器(包括大多数 *nix 服务器)将 SFTP 作为其下的单独子系统运行。可以仅禁用 SFTP 子系统,只保留 SSH 和 SCP 可用。sshd_config(5)有关详细信息,请参阅手册页。

答案3

scp附带ssh。我不确定sftp是否一定是其中的一部分。

答案4

不,你不能这么假设。

scp取决于是否可用,而与是否可用SSH无关。SFTP

~~编辑:更多细节~~

ssh让您可以做的不仅仅是复制文件。它还允许您运行命令。因此,很容易想象一个允许您使用 sftp 但不允许您使用 ssh 的服务器。

相关内容