tutorial/how-to-setup-an-sftp-server-on-centos/" style="-webkit-font-smoothing: antialiased; margin: 0px; padding: 0px; color: rgb(66, 133, 244); text-decoration-line: none;"> https://www.howtoforge.com/tutorial/how-to-setup-an-sftp-server-on-centos/
本教程主要是关于如何在CentOS上设置和使用SFTP服务器。使用FTP传输数据,很容易被匿名入侵者入侵(如果不使用TLS),因为它的端口对任何人都是开放的。可以使用SFTP作为更安全的替代方案。
SFTP使用SSH文件传输协议来提供安全的连接。
教程将展示如何为客户端提供对SFTP服务器的访问权限,但无法通过SSH登录到服务器本身。
1.查看是否有SSH环境
只要服务器存在SSH环境皆可以使用SFTP服务,不需要安装其他程序,运行以下代码进行检测
出现以下结果说明已经安装了ssh软件包,可以使用SFTP
2.配置SFTP
我们需要创建一个组和用户,方便管理所有的SFTP账户。先创建一个目录,作为SFTP服务的主目录。 SFTP用户目录对应该目录下的子目录。
添加用户组
创建用户username,并添加到sftpusers用户组
为该用户添加密码
现在我们有了一个用户名为username的用户,该用户在sftpusers用户组中。
-d /upload 命令制定了该用户的SFTP根目录位于服务器/data/sftp/upload
限制了用户通过shell进行SSH登录,只能通过SFTP进行访问
为用户设置了密码
创建用户使用目录并配置权限
验证目录/data下的文件夹是否存在,以及配置是否正确。
创建用户使用的upload目录
编辑/ etc/ssh/sshd_config配置文件,配置SSH协议创建SFTP进程。
文件末尾添加下面的配置
或者对单用户指定配置
查看sshd状态
重启服务
我们先来创建一个文件
启动SFTP
在SFTP环境中运行命令试试
现在已经可以愉快的玩耍了,远程访问试一下吧
注意:如果出现Broken pipe的错误 一般都是ChrootDirectory指定的目录权限配置错误
ChrootDirectory指定Group匹配:所指向的文件夹 /data/sftp拥有者必须是root,所属用户组必须是username所属的sftpusers用户组。
ChrootDirectory指定用户匹配:所指向的文件夹 /data/sftp/upload拥有者必须是username,所属用户组必须是username所属的sftpusers用户组。
ChrootDirectory所指向的文件夹到系统根路径上的所有途径文件夹,owner必须是root,且不允许群组和用户的写入权限(即权限为7xx,其中x小于7)
如果出现Failed to start OpenSSH Server daemon错误 一般是配置文件错误或者目录权限错误 可以通过ssht -t来进行检查
通过SSH key访问SFTP可以参考这篇文章:
https://tufora.com/tutorials/linux/general/setup-an-sftp-server-on-centos
推荐本站淘宝优惠价购买喜欢的宝贝:
本文链接:https://hqyman.cn/post/8261.html 非本站原创文章欢迎转载,原创文章需保留本站地址!
休息一下~~