要自定义 CentOS 的 SFTP 配置,您需要编辑 OpenSSH 服务器的配置文件。以下是详细步骤:
打开终端。
使用文本编辑器(如 vi、nano 或其他您喜欢的编辑器)打开 /etc/ssh/sshd_config
文件。例如,使用 vi 编辑器,输入以下命令:
sudo vi /etc/ssh/sshd_config
sshd_config
文件中找到以下行:#Subsystem sftp /usr/libexec/openssh/sftp-server
取消注释(删除行首的 # 符号),以启用 SFTP 子系统:
Subsystem sftp /usr/libexec/openssh/sftp-server
# 限制用户访问自己的主目录
Match Group sftpusers
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
这里,我们创建了一个名为 sftpusers
的用户组,并将所有属于该组的用户的 chroot 目录设置为其主目录。同时,禁止这些用户进行 TCP 和 X11 转发。
保存并关闭 sshd_config
文件。
创建一个名为 sftpusers
的新用户组(如果尚未存在):
sudo groupadd sftpusers
sftpusers
组:sudo usermod -aG sftpusers your_username
将 your_username
替换为您要为其配置 SFTP 的用户名。
sudo chown root:root /home/your_username
sudo chmod 755 /home/your_username
将 your_username
替换为您要为其配置 SFTP 的用户名。
sudo systemctl restart sshd
现在,您已经成功自定义了 CentOS 的 SFTP 配置。属于 sftpusers
组的用户将只能访问其主目录,并受到其他限制。