sftp服务

添加用户组

groupadd sftp

查看用户组

cat /etc/group

添加用户

useradd -G sftp -d /home/sftpu -s /sbin/nologin sftpu
  • -G:指定用户组为sftp

  • -d:指定工作目录

  • -s:禁止ssh登录

  • 用户为:sftpu

注:

/bin/false是最严格的禁止login选项,一切服务都不能用,   

/sbin/nologin只是不允许系统login,可以使用其他ftp等服务

修改用户密码

passwd sftpu
输入密码:
sftp112233

进入工作目录

cd /home

设置编辑权限

chomod +755 sftpu

设置目录权限

#chown 所属用户:所属用户组 目录
chown sftpu:sftp sftpu

修改配置

vim /etc/ssh/sshd_config

一般在文件末尾:

# Subsystem      sftp    /usr/libexec/openssh/sftp-server
#指定使用sftp服务使用系统自带的internal-sftp
Subsystem  sftp internal-sftp 
#设定属于用户组sftp的用户访问的根文件夹  
Match Group sftp  
#此目录需要属于root用户权限
ChrootDirectory /home/sftpu
#指定sftp命令,强制执行内部sftp,并忽略任何~/.ssh/rc文件中的命令    
ForceCommand internal-sftp  
#这两行,设置该用户可以不使用端口转发  
AllowTcpForwarding no   
X11Forwarding no  

重启sshd

systemctl restart sshd.service

测试

sftp [email protected]
#get 命令
#put命令

Last updated

Was this helpful?