CentOS安装SFTP
1、创建专用用户组
sudo groupadd sftpgroup # 创建组用于统一管理SFTP用户[1,6](@ref)
2、添加用户并限制Shell
sudo useradd -m -d /data/sftpusr/sftpdata01 -G sftpgroup -s /sbin/nologin sftpdata01 # 指定家目录并禁止SSH登录[8](@ref)
sudo passwd sftpdata01 # 设置用户密码
3、初始化目录权限
sudo chown root:root /data/sftpusr/ # Chroot主目录必须归属root[3,6](@ref)
sudo chmod 755 /data/sftpusr/ # 权限需为755以保证安全性
4、修改SSH服务限制
(1)修改sshd_config文件
# 原SFTP配置已注释
#Subsystem sftp /usr/libexec/openssh/sftp-server
Subsystem sftp internal-sftp
# 其他原有配置...
# 用户sftpdata01的隔离配置
Match User sftpdata01
ChrootDirectory /data/sftpusr/
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
PermitTTY no
5、创建用户可写子目录
sudo mkdir /data/sftpusr/sftpdata01
sudo chown sftpdata01:sftpgroup /data/sftpusr/sftpdata01 # 允许用户上传文件[1,7](@ref)
sudo chmod 770 /data/sftpusr/sftpdata01 # 组内用户可读写
6、调整SELinux策略
sudo chcon -t sshd_chroot_t /data/sftpusr/sftpdata01 # 修改目录安全上下文[6](@ref)
sudo setsebool -P ssh_chroot_rw_homedirs on # 允许Chroot目录读写
7、放行SFTP端口
sudo firewall-cmd --permanent --add-service=ssh # 开放22端口(默认SFTP端口)
sudo firewall-cmd --reload
8、重启SSH服务
sudo systemctl restart sshd # 应用配置[2,6](@ref)
你所拥抱的并不总是拥抱你

浙公网安备 33010602011771号