搭建前言:


 
主机系统:centos7
 
由于sftp基于ssh协议,所以我们无需安装多余的包,只需要进行相应的配置即可。

 

搭建过程:


 

1. 创建用户、用户组,设置目录权限等(本次只是测试,所以只建了一个用户/用户组)

	#家目录默认在/home/sftp_user
	sudo useradd -m sftp_user:sftp_user 
	#将家目录的属主改为root
	sudo chown root:root /home/sftp_user 
	#将家目录的权限改为755
	sudo chmod 755 /home/sftp_user 
	#建立上传目录 
	sudo mkdir -p /home/sftp_user/upload 
	#建立下载目录
	sudo mkdir -p /home/sftp_user/download 
	#切换上传、下载两个目录的属主为sftp_user
	sudo chown -R sftp_user:sftp_user /home/sftp_user/upload  
	sudo chown -R sftp_user:sftp_user /home/sftp_user/download 

 

2. 备份并修改/etc/ssh/sshd_config,在其中添加以下内容

 
文字版如下,可直接参考其中未注释内容

	# override default of no subsystems
	#Subsystem      sftp    /usr/libexec/openssh/sftp-server
	Subsystem sftp internal-sftp
	Match User sftp_user
	ForceCommand internal-sftp
	ChrootDirectory /home/sftp_user
	AllowAgentForwarding no
	AllowTcpForwarding no
	X11Forwarding no
	PasswordAuthentication yes
	# Example of overriding settings on a per-user basis
	#Match User anoncvs
	#       X11Forwarding no
	#       AllowTcpForwarding no
	#       PermitTTY no
	#       ForceCommand cvs server
	#UseDNS no
	#AddressFamily inet
	PermitRootLogin yes
	#SyslogFacility AUTHPRIV
	#PasswordAuthentication no

 

3. 重启服务,如果报错就继续查错,如果无错就检查上传下载功能

sysetmctl restart sshd

 

至此,sftp的搭建就完成了。
 

搭建后记:


当然,这其中有几个点需要格外注意:

 

1. 在重启sshd的时候,sshd很容器起不来,会导致客户端连不上去。所以,我们需要注意2点:

1.1 备份/etc/ssh/sshd_config文件,如果ssh真的挂了,就赶紧恢复到以前的状态。

1.2 多开几个console,总要保证有一个console连得到主机,可以保证机器有能力恢复到从前状态。

2. 搭建sftp服务器的时候,我们需要注意3点:

2.1 ChrootDirectory 设置的目录权限及其所有的上级文件夹权限,属主和属组必须是 root。

2.2 ChrootDirectory 设置的目录权限及其所有的上级文件夹权限,只有属主能拥有写权限,权限最大设置只能是 755。

2.3 ChrootDirectory 下面的目录的属主需要设置成sftp user,这样这个用户才可以拥有读/写/执行权限。

posted on   eryoung2  阅读(2021)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示