SFTP简介sftp(Secure File Transfer Protocol)是一种安全的文件传送协议,是ssh内含协议,也就是说只要sshd服务器启动了,sftp就可使用,不需要额外安装,它的默认端口和SSH一样为22。sftp通过使用加密...
SFTP简介
sftp(Secure File Transfer Protocol)是一种安全的文件传送协议,是ssh内含协议,也就是说只要sshd服务器启动了,sftp就可使用,不需要额外安装,它的默认端口和SSH一样为22。
sftp通过使用加密/解密技术来保障传输文件的安全性,因此sftp的传输效率比普通的FTP要低,但sftp的安全性要比ftp高,因此sftp通常用于报表、对账单等对安全性要求较高的场景。
系统环境:CentOS 7.4
IP地址:192.168.31.55
一、创建sftp组:
[root@localhost ~]# groupadd sftp
二、创建一个用户sftpuser:
[root@localhost ~]# useradd -g sftp -s /sbin/nologin sftpuser
三、设置sftpuser用户的密码
[root@localhost ~]# echo "123456" | passwd --stdin sftpuser
四、创建一个sftp的上传目录:
[root@localhost ~]# mkdir -p /home/sftp/sftpuser
五、修改用户sftpuser所在的目录:
[root@localhost ~]# chown -R sftpuser.sftp /home/sftp/sftpuser
六、配置sshd_config:
[root@localhost ~]# vim /etc/ssh/sshd_config
找到Subsystem sftp /usr/libexec/openssh/sftp-server,注释掉这行,并添加以下内容
#这行指定使用sftp服务使用系统自带的internal-sftp
Subsystem sftp internal-sftp
#这行用来匹配用户
Match User sftpuser
#用chroot将用户的根目录指定到/home/sftp,这样用户就只能在/home/sftp下活动
ChrootDirectory /home/sftp
AllowTcpForwarding no
#指定sftp命令
ForceCommand internal-sftp
#保存退出
PS:注意ChrootDirectory设置的目录/data_share/dingli/的所有者必须是root,并且该目录的上级目录data_share的所有者也必须是root.
为什么用 internal-sftp 而不用默认的 sftp-server,这是因为: 这是一个进程内的 sftp 服务,当用户 ChrootDirectory 的时候,将不请求任何文件;更好的性能,不用为 sftp 再开一个进程。
七、重启SSHD服务
[root@localhost ~]# systemctl restart sshd.service
八、访问测试(这里采用xftp工具),效果如下图
CentOS 7.4安装SFTP_重启
CentOS 7.4安装SFTP_文件传送协议_02
-----------------------------------
©著作权归作者所有:来自51CTO博客作者小柒博客2023的原创作品,请联系作者获取转载授权,否则将追究法律责任
CentOS 7.4安装SFTP
https://blog.51cto.com/yangxingzhen/5980353
来源:本文内容搜集或转自各大网络平台,并已注明来源、出处,如果转载侵犯您的版权或非授权发布,请联系小编,我们会及时审核处理。
声明:江苏教育黄页对文中观点保持中立,对所包含内容的准确性、可靠性或者完整性不提供任何明示或暗示的保证,不对文章观点负责,仅作分享之用,文章版权及插图属于原作者。
Copyright©2013-2024 JSedu114 All Rights Reserved. 江苏教育信息综合发布查询平台保留所有权利
苏公网安备32010402000125 苏ICP备14051488号-3技术支持:南京博盛蓝睿网络科技有限公司
南京思必达教育科技有限公司版权所有 百度统计