sftp搭建指南

1.查看是否需要更新openssh版本

ssh -V // 如果版本过低,可以使用 yun update 进行更新

2.创建用户和用户组

// 创建sftp组
groupadd sftpgroup
// -M 表示创建用户时不生成对应home目录,-s /sbin/nologin 表示sftp用户不能登录系统
useradd -g sftpgroup -M -s /sbin/nologin sftpuser
// 修改sftp用户密码
passwd sftpuser

3.修改配置文件sshd_config

vi /etc/ssh/sshd_config

将下面这行注释掉
#Subsystem sftp /usr/libexec/openssh/sftp-server

## 在文件末尾添加如下几行
Subsystem sftp internal-sftp
Match Group sftpgroup
X11Forwarding no
AllowTcpForwarding no
ChrootDirectory %h
ForceCommand internal-sftp

4.使用root用户新建用户目录/sftp/sftpfile,并指定相应的目录权限

mkdir -p /sftp/sftpfile //-p 表示parents,即递归创建目录
usermod -d /sftp/sftfile sftpuser // -d 表示修改用户home目录

// 设置目录权限,设置成其他权限会报错
chown root:sftpgroup /sftp/sftfile
chmod 755 /sftp/sftpfile

// 设置sftp用户可以操作的目录
mkdir /sftp/sftpuser/deb
mkdir /sftp/sftpuser/rpm
mkdir /sftp/sftpuser/tar_gz
chown sftpuser:sftpgroup /sftp/sftpuser/deb
chmod 755 /sftp/sftpuser/deb   
chown sftpuser:sftpgroup /sftp/sftpuser/rpm
chmod 755 /sftp/sftpuser/rpm 
chown sftpuser:sftpgroup /sftp/sftpuser/tar_gz
chmod 755 /sftp/sftpuser/tar_gz

5.重启ssh

systemctl restart sshd.service

6.验证安装是否成功

sftp [email protected]

你可能感兴趣的:(Linux的世界)