📅  最后修改于: 2023-12-03 14:50:02.167000             🧑  作者: Mango
SFTP(Secure File Transfer Protocol)是一种安全的文件传输协议,但是默认情况下可能会被禁用。为了允许 SFTP 文件传输,我们需要进行一些配置。
首先,我们需要确保系统中已安装 OpenSSH。如果没有安装,可以通过以下命令安装:
sudo apt-get install openssh
接下来,我们需要编辑 SSH 配置文件来允许 SFTP 文件传输。打开 SSH 配置文件 /etc/ssh/sshd_config
:
sudo nano /etc/ssh/sshd_config
在 SSH 配置文件中找到 Subsystem
部分,并确保以下行被取消注释并设置为 sftp
:
#Subsystem sftp /usr/lib/openssh/sftp-server
Subsystem sftp internal-sftp
如果想要允许所有用户使用 SFTP,可以在 SSH 配置文件的末尾添加以下内容:
Match group sftponly
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
上述配置将限制用户只能使用 SFTP,并将其限制在主目录中。
保存文件并退出编辑器后,通过以下命令重启 SSH 服务,使配置生效:
sudo service ssh restart
现在,我们可以创建一个用户,并允许其使用 SFTP。使用以下命令创建一个用户(例如 sftpuser
):
sudo useradd sftpuser -m -s /sbin/nologin
将用户添加到 sftponly
用户组中,该组将在第4步中为 SFTP 进程设置限制:
sudo usermod -G sftponly sftpuser
设置用户密码,以使其能够通过 SFTP 进行认证:
sudo passwd sftpuser
现在,用户 sftpuser
将可以通过 SFTP 访问其主目录。
以上就是允许 SFTP 文件传输的步骤。通过按照上述配置进行设置,您可以为程序员提供一个安全的文件传输通道。