在服务器上实现SFTP设置的步骤

时间:2010-05-25 05:22:32

标签: php sftp

任何人都可以解释一下SFTP以及如何在我的服务器上进行设置以确保数据传输安全。如果你逐步解释会更好。

2 个答案:

答案 0 :(得分:2)

在Linux机器上,它就像这样(假设你有OpenSSH):

  • 编辑sshd_config(在redhat flavor和clone上的/ etc / ssh中),并取消注释启用SFTP子系统的行。每当我这样做时,它通常位于文件的底部。如果您没有看到该行(以“Subsystem sftp”开头),请执行以下操作:
    • 在你的文件系统中找到“sftp-server”程序(在我的CentOS盒子里,它在/ usr / libexec / openssh中)
    • echo "Subsystem sftp /path/to/sshd-server" >>/path/to/sshd_config(注意两个>的!将它们都放入,或者你将覆盖现有的SSH配置!)
  • 重启sshd然而你这样做了。在redhat风格的发行版上,service sshd restart应该这样做。

这足以启用SFTP。完成后,您需要为SFTP用户创建帐户并设置密码。请注意,每个用户通常也具有SSH访问权限 - 将shell设置为/ sbin / nologin或/ bin / false也将禁用SFTP。但是,如果你有cPanel,它的“无shell访问”shell似乎可以正常使用SFTP而不是SSH。 (看起来这个问题可能与cPanel的无shell事件的延迟有关,这会让SFTP子系统有时间启动。)

答案 1 :(得分:1)

您可能不想使用SFTP。对于使用PHP的安全文件传输,最简单的解决方案是TLS(HTTPS)。

具体步骤取决于您的网络服务器。