zoukankan      html  css  js  c++  java
  • Ubuntu安装SFTP服务,及启动失败处理

    安装openssh-server

    sudo apt-get install openssh-server
    

    查看是否安装成功

    dpkg --get-selections | grep ssh
    

    新建用户组 sftp-users,并新建用户sftp

    为SFTP访问创建用户组,便于管理权限。并创建sftp用户:

    sudo addgroup sftp-users
    sudo adduser sftp
    

    给sftp赋权并新建用户组ssh-users
    将sftp从所有其他用户组中移除并加入到sftp-users组,并且关闭其Shell访问:

    sudo usermod -G sftp-users -s /bin/false sftp
    

    创建SSH用户组,并把管理员加入到该组(注意usermod中的-a参数的意思是不从其他用户组用移除)。

    sudo addgroup ssh-users
    sudo usermod -a -G ssh-users bbc2005
    

    创建并设置sftp用户目录

    准备“监狱”的根目录及共享目录,“监狱”的根目录必须满足以下要求:
    所有者为root,其他任何用户都不能拥有写入权限。
    因此,为了让sftp用户能够上传文件,还必须在“监狱”根目录下再创建一个普通用户能够写入的共享文件目录。
    为了便于管理员通过sftp管理上传的文件,把这个共享文件目录配置为:由bbc2005所有,允许sftp-users读写。这样,管理员和sftp用户组成员就都能读写这个目录了。

    sudo mkdir /home/sftp_root
    sudo mkdir /home/sftp_root/shared
    sudo chown bbc2005:sftp-users /home/sftp_root/shared
    sudo chmod 770 /home/sftp_root/shared
    

    修改SSH配置文件
    vi /etc/ssh/sshd_config
    在sshd_config文件的最后,添加以下内容:

    AllowGroups ssh-users sftp-users
    Match Group sftp-users
    ChrootDirectory /home/sftp_root
    AllowTcpForwarding no
    X11Forwarding no
    ForceCommand internal-sftp
    

    非常重要:

    sftp设置后 ssh 启动失败 原因分析

    大多数人 在 设置SFTP 使用时会报错,
    排除其他可能的原因,可以尝试如下:将

    Subsystem sftp internal-sftp
    Match Group sftp
    ChrootDirectory /data
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no
    

    放在

    UseDNS no
    

    之后就解决了。

    重启ssh

    service ssh restart
    

    这些内容的意思是:
    只允许ssh-uers及sftp-users通过SSH访问系统;
    针对sftp-users用户,额外增加一些设置:
    将“/home/sftp_root”设置为该组用户的系统根目录(因此它们将不能访问该目录之外的其他系统文件);
    禁止TCP Forwarding和X11 Forwarding;强制该组用户仅仅使用SFTP。
    如果需要进一步了解细节,可以使用“man sshd_config”命令。这样设置之后,SSH用户组可以访问SSH,并且不受其他限制;而SFTP用户组仅能使用SFTP进行访问,而且被关进监狱目录。

    参考:https://blog.csdn.net/bbc2005/article/details/80034065



    作者:我是非鱼
    链接:https://www.jianshu.com/p/ff3c53e46a82
    来源:简书
    简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
  • 相关阅读:
    JTree单击事件
    hibernate、easyui、struts2整合
    ubuntu中wifi显示被硬件禁用的解决方法
    idea导入svn项目
    Intellij IDEA常用配置详解
    HBase 写优化之 BulkLoad 实现数据快速入库
    Spark性能优化之道——解决Spark数据倾斜(Data Skew)的N种姿势
    avro序列化详细操作
    wordcount代码实现详解
    idea配置maven
  • 原文地址:https://www.cnblogs.com/idyllcheung/p/11424301.html
Copyright © 2011-2022 走看看