记忆角落

  • {{ item.name }}
  • Centos或者RedHat创建SFTP上传账号
  • 1.创建sftp用户组
  • 2.创建用户并限制用户登录SSH
  • 3.设置用户密码
  • 4.创建用户上传目录,并且修改成用户的home目录,修改目录权限
  • sftp上传文件夹
  • 5.设置 sshd_config
  • 5.1 找到Subsystem sftp /user/libexec/openssh/sftp-server 前面加#注释掉
  • 5.2 添加在配置文件末尾
  • 6.重启sshd服务
  • 7.遇到问题
  • 1.Write failed: Broken pipe Couldn't read packet: Connection reset by peer 的错误(sftp连不是上或者马上断掉的问题)
  • 首页
  • 关于
  • 归档
  • 邻居
  • 捐赠

Centos或者RedHat创建SFTP上传账号

  • 郭良俊只狗
  • 2021-09-26
  • 0

Centos或者RedHat创建SFTP上传账号

1.创建sftp用户组

groupadd sftp

2.创建用户并限制用户登录SSH

useradd -g sftp -s /bin/false hnsftp

3.设置用户密码

passwd hnsftp

4.创建用户上传目录,并且修改成用户的home目录,修改目录权限

sftp上传文件夹

mkdir -p /u03/sftp_file

创建hnsftp用户独立的文件夹

mkdir /u03/sftp_file/hnsftp

修改用户home 目录

usermod -d /u03/sftp_file/hnsftp hnsftp

修改用户home目录权限

chown -R hnsftp:sftp /u03/sftp_file/hnsftp

5.设置 sshd_config

vi /etc/ssh/sshd_config

5.1 找到Subsystem sftp /user/libexec/openssh/sftp-server 前面加#注释掉
#注释掉这行
#Subsystem      sftp    /usr/libexec/openssh/sftp-server
5.2 添加在配置文件末尾
#添加在配置文件末尾
Subsystem sftp internal-sftp #指定使用sftp服务使用系统自带的internal-sftp
Match user hnsftp #匹配用户,如果要匹配多个组,多个组之间用逗号分割
ForceCommand internal-sftp #指定sftp命令
ChrootDirectory /u03/sftp_file #用chroot将指定用户的根目录,chroot的含义
#下面这两行,如果不希望该用户能使用端口转发的话就加上,否则删掉
X11Forwarding no                
AllowTcpForwarding no

6.重启sshd服务

service sshd restart

7.遇到问题

1.Write failed: Broken pipe Couldn't read packet: Connection reset by peer 的错误(sftp连不是上或者马上断掉的问题)

解决:

这个问题的原因是ChrootDirectory的权限问题,你设定的目录必须是root用户所有,否则就会出现问题。所以请确保sftp用户根目录的所有人是root, 权限是 750 或者 755

© 2012 - 2023 记忆角落 网站统计
Theme by Wing
粤ICP备14056850号-1 又拍云CDN赞助