centos

如何自定义centos的sftp配置

小樊
41
2025-07-04 15:31:17
栏目: 智能运维

要自定义 CentOS 的 SFTP 配置,您需要编辑 OpenSSH 服务器的配置文件。以下是详细步骤:

  1. 打开终端。

  2. 使用文本编辑器(如 vi、nano 或其他您喜欢的编辑器)打开 /etc/ssh/sshd_config 文件。例如,使用 vi 编辑器,输入以下命令:

sudo vi /etc/ssh/sshd_config
  1. sshd_config 文件中找到以下行:
#Subsystem sftp /usr/libexec/openssh/sftp-server

取消注释(删除行首的 # 符号),以启用 SFTP 子系统:

Subsystem sftp /usr/libexec/openssh/sftp-server
  1. 在文件末尾添加以下内容,以自定义 SFTP 配置:
# 限制用户访问自己的主目录
Match Group sftpusers
    ChrootDirectory %h
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no

这里,我们创建了一个名为 sftpusers 的用户组,并将所有属于该组的用户的 chroot 目录设置为其主目录。同时,禁止这些用户进行 TCP 和 X11 转发。

  1. 保存并关闭 sshd_config 文件。

  2. 创建一个名为 sftpusers 的新用户组(如果尚未存在):

sudo groupadd sftpusers
  1. 将需要使用 SFTP 的用户添加到 sftpusers 组:
sudo usermod -aG sftpusers your_username

your_username 替换为您要为其配置 SFTP 的用户名。

  1. 更改用户的主目录权限,以允许 chroot:
sudo chown root:root /home/your_username
sudo chmod 755 /home/your_username

your_username 替换为您要为其配置 SFTP 的用户名。

  1. 重启 SSH 服务以应用更改:
sudo systemctl restart sshd

现在,您已经成功自定义了 CentOS 的 SFTP 配置。属于 sftpusers 组的用户将只能访问其主目录,并受到其他限制。

0
看了该问题的人还看了