ubuntu 开启 sftp 服务

1. 下载安装 openssh-server

sudo apt-get install openssh-server

2. 创建 sftp 用户组 sftp-group

sudo addgroup sftp-group

3. 创建 sftp 用户 sftp-user

sudo adduser sftp-user
// 将 sftp-user 添加到 sftp-group 用户组,并从其他用户组移除
sudo usermod -G sftp-group -s /bin/false sftp-user
// 将 root 添加到 sftp 用户组
usermod -a -G sftp-group root

4. 创建共享目录配置权限

// 创建 sftp 共享目录
sudo mkdir /data/shared
// 先将目录分配给 root
chown root /data/shared
chmod 755 /data/shared
// 再将目录转让给 sftp-group 用户组
chgrp -R sftp-group /data/shared
// 将目录分配给 sftp-user 用户
chown -R sftp-user:sftp-group /data/shared
chmod 755 /data/shared

5. 配置 ssh , /etc/ssh/sshd_config

# AllowGroups sftp-group 只允许 sftp-group 用户组访问系统
# 允许 sftp-group 用户组访问
Match Group sftp-group 
Match User sftp-user
    # 为 sftp-group 用户组设置访问根目录,为方便可以直接设置为 shared 目录
    ChrootDirectory /data/shared
     # 密码认证
    PasswordAuthentication yes
    # 禁止 TCP Forwarding
    AllowTcpForwarding no 
    # 禁止 X11 Forwarding
    X11Forwarding no
    # 强制该组用户仅仅使用SFTP
    ForceCommand internal-sftp 

6. 重启服务,重启系统以生效

/etc/init.d/ssh restart
sudo reboot now

7. 基础 sftp 命令

// 连接
sftp -p sftp-user@192.168.1.1
// 上传文件
put 本地文件的路径 将文件版保存到远程主机的路径
// 下载文件
get 远程主机下文件的路径 将文件保存到本地电脑的路径 

如果你链接服务器的时候出现下面的提示:

Write failed: Broken pipe
Couldn't read packet: Connection reset by peer
这个问题的原因是ChrootDirectory的权限问题,你设定的目录必须是root用户所有,否则就会出现问题。所以请确保sftp用户根目录的所有人是root, 权限是 750 或者 755。注意以下两点原则:

目录开始一直往上到系统根目录为止的目录拥有者都只能是 root,用户组可以不是 root。

目录开始一直往上到系统根目录为止都不可以具有群组写入权限

上面2点一定注意,仔细检查。我就是因为这个问题,导致一直有这个问题。仔细检查配置后,解决问题。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • sshd_config配置详解 重启SSH服务 service sshd restart 名称 sshd_conf...
    一指弹风阅读 23,285评论 0 4
  • 一、SFTP简述 二、SFTP服务配置(基于CentOS 7) 三、SFTP常用命令 四、Java代码实现SFTP...
    rm杠rf阅读 3,041评论 0 6
  • 原文链接 之前两篇文章利用SSH代理访问内网资源和使用SSH代理在本地开发环境调试各种回调两篇文章,介绍了ssh的...
    冯宇Ops阅读 13,027评论 1 3
  • 想当初人能上天(航天技术)没有人能相信;收音机能看到人(电脑技术)没有人能相信;营养素能治愈百病(人体生命...
    时代强梦阅读 721评论 0 0
  • 自从今年开学一直没去教室看孩子,今天一早给班主任于老师发了一个申请说去教室看看孩子晨读。看到老师回复的微信很高兴,...
    文皓文文妈妈阅读 141评论 2 3