Linux ssh internal sftp配置说明

centos7 环境下已验证

首先建立两个用户,用于sftp访问使用。

eg:

useradd -d /opt/sftp -s /bin/nologin sftp

说明 -s /bin/nologin 禁止ssh登录服务器,其实如果将用户设置为用于sftp的话,不做此设置也是无法登录的会提示:This service allows sftp connections only.

修改ssh配置文件 /etc/ssh/sshd_config

#Subsystem sftp /usr/libexec/openssh/sftp-server //屏蔽默认行
Subsystem sftp internal-sftp //开启ssh的内置sftp
Match User sftp,xftp //指定登录的用户,中间用,分隔
ChrootDirectory %h //sftp登录后进入用户家目录
ForceCommand internal-sftp

重启或加载sshd服务

systemctl restart sshd.service 或者 systemctl reload sshd.service

注意地方

之前建立的用户家目录 /opt/sftp 。需要修改目录的用户权限,而且必须是所属用户是root ,最大权限755。

要不然连接失败.但这样做文件在根目录只能下载,不能上传.要想实现上传,在根目录下建立登录sftp用户权限的目录.这样就实现了上传和下载。

当然如果不考虑安全的问题,不需要做上前的过程.默认就可以使用sftp。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容