搭建前言:


 

主机系统: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,这样这个用户才可以拥有读/写/执行权限。

sftp服务器的搭建的更多相关文章

  1. sftp服务器的搭建与连接

    在个人租用的vps上搭建sftp服务器并通过本机连接上去 本实验所需:Xshell(xshell中包含xftp).一台vps(windows系统) sftp是一种协议,即SSH File Transf ...

  2. linux搭建sftp服务器

    转自:http://blog.csdn.net/superswordsman/article/details/49331539 最近工作需要用到sftp服务器,被网上各种方法尤其是权限设置问题搞得晕头 ...

  3. Linux Centos 6.6搭建SFTP服务器

    Linux Centos 6.6搭建SFTP服务器 在Centos 6.6环境使用系统自带的internal-sftp搭建SFTP服务器. 打开命令终端窗口,按以下步骤操作. 0.查看openssh的 ...

  4. Windows 7下 搭建 基于 ssh 的sftp 服务器

    Windows  xp 下 搭建 基于  ssh 的sftp 服务器,服务器端可以用 freesshd,F-secure server等,filezilla server不可用,之前傻乎乎的用file ...

  5. freeSSHD在windows环境下搭建SFTP服务器

    freeSSHD在windows环境下搭建SFTP服务器 0 建议现在windows环境下安装cygwin,否则在windows环境下cmd模式使用不了sftp去连接,可以利用win scp去测试连接 ...

  6. Linux系统下搭建FTP/SFTP服务器

    传输文件经常使用ftp和sftp服务器.Windows下有多种可视化工具,使用快捷.Linux经常需要自行搭建这两种服务器,当然搭建熟练的话,会更加快捷. 1.检查Linux系统是否安装了vsftp和 ...

  7. Windows搭建SFTP服务器

    1.项目需要搭建一个SFTP服务器,网上搜了一下,用的是freeSSHd软件,网上查一下我用的是1.3.1版本https://freesshd.updatestar.com/网址自己下载即可. 2.安 ...

  8. 搭建SFTP服务器,允许一个或多个用户拥有一个或多个目录的rwx权限

    1.引言 sftp可以为传输文件提供一种安全的网络的加密方法.sftp 与 ftp 有着几乎一样的语法和功能.SFTP 为 SSH的其中一部分,是一种传输档案至 Blogger 伺服器的安全方式.其实 ...

  9. Linux ---搭建SFTP服务器

    在Centos 6.6环境使用系统自带的internal-sftp搭建SFTP服务器. 打开命令终端窗口,按以下步骤操作. 0.查看openssh的版本 ssh -V 使用ssh -V 命令来查看op ...

随机推荐

  1. postgres主从基于流复制

    环境: CentOS Linux release 7.6.1810 (Core) 内核版本:3.10.0-957.10.1.el7.x86_64 node1:192.168.216.130 node2 ...

  2. MySQL之自连接

    自连接就是说,在同一个表中,看做是两个表,下表表示 找每个人的领导,如果没有领导,显示无领导,eid 对应 leaderid,请看员工表 mysql> select * from emp; +- ...

  3. Vue --- 组件练习

    一 ad_data = { tv: [ {img: 'img/tv/001.png', title: 'tv1'}, {img: 'img/tv/002.png', title: 'tv2'}, {i ...

  4. Partition HDU - 4602 (不知道为什么被放在了FFT的题单里)

    题目链接:Vjudge 传送门 相当于把nnn个点分隔为若干块,求所有方案中大小为kkk的块数量 我们把大小为kkk的块,即使在同一种分隔方案中的块 单独考虑,它可能出现的位置是在nnn个点的首.尾. ...

  5. 洛谷 P5506 封锁

    目录 题目 思路 \(Code\) 题目 P5506 封锁 思路 模拟 \(\large\text{读题一定要细心}\) 解释都在代码里. \(Code\) #include<bits/stdc ...

  6. Python 企业面试题集锦之Python基础

    △字符串.列表.元组.字典每个常用的5个方法? 字符串: 字符串用单引号(')或双引号(")括起来,不可变. s.strip(c):去除空格或指定的字符c:lstrip/rstrip: s. ...

  7. git dev分支合并线上master

    1.本地dev新建/切换本地master 新建 git checkout -b master 切换 git checkout  master 2.本地dev与本地master合并 git merge ...

  8. spring boot validation参数校验

    对于任何一个应用而言在客户端做的数据有效性验证都不是安全有效的,这时候就要求我们在开发的时候在服务端也对数据的有效性进行验证. Spring Boot自身对数据在服务端的校验有一个比较好的支持,它能将 ...

  9. 【大数据作业十】分布式文件系统HDFS 练习

    作业要求来自: https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/3292 利用Shell命令与HDFS进行交互 以”./bin/dfs ...

  10. 如何解决“HttpException (0x80004005): 超过了最大请求长度”问题

    .net mvc项目在做上传文件时,出现这个问题,上传文件的是通过表单提交,后台是通过请求里面获取文件信息的 1.问题截图: 堆栈信息 “/”应用程序中的服务器错误.超过了最大请求长度.说明: 执行当 ...