精华内容
下载资源
问答
  • sftp版本
    2021-05-10 06:40:00

    查看openssh的版本,使用ssh -V命令来查看openssh的版本,版本必须大于4.8p1,低于的这个版本需要升级。

    1、创建sftpusers组

    groupadd sftpusers

    2、创建sftpusers用户,设置用户不能用于登录系统

    useradd -g sftpusers -s /sbin/nologin sftpusers

    passwd sftpusers(设置密码)

    3、创建sftpusers家目录并指定

    mkdir –p /home/Sftp

    usermod –d /home/Sftp sftpusers

    给家目录更改属主并授权家目录属主必须是root,权限可以是755或者750

    chown root:root /home/Sftp

    chmod 755 /home/Sftp

    4、创建电信用户,指定家目录并授权

    mkdir –p /home/Sftp/dianxinFTP

    useradd -g sftpusers -s /sbin/nologin dianxin

    passwd dianxin(设置密码)

    usermod –d /home/Sftp/dianxinFTP dianxin

    chown root:root /home/Sftp/dianxinFTP

    chmod 755 /home/Sftp/dianxinFTP

    5、创建京东账户,指定家目录并授权

    mkdir –p /home/Sftp/jingdongFTP

    useradd -g sftpusers -s /sbin/nologin jingdong

    passwd jingdong(设置密码)

    usermod –d /home/Sftp/jingdongFTP jingdong

    chown root:root /home/Sftp/jingdongFTP

    chmod 755 /home/Sftp/jingdongFTP

    6、编辑配置文件/etc/ssh/sshd_config

    Subsystem sftp /usr/libexec/openssh/sftp-server#注释掉这行

    增加以下6行

    Subsystem sftp internal-sftp

    Match Group sftpusers

    ChrootDirectory %h

    ForceCommand internal-sftp

    X11Forwarding no

    AllowTcpForwarding no

    将以下注释去掉

    PermitRootLogin yes(防止后续root不可登陆系统)

    保存并关闭文件

    7、重启sshd服务

    service sshd restart

    8、创建各用户数据目录,并授权

    1.sftpusers用户

    mkdir –p /home/Sftp/data

    chown sftpusers:sftpusers /home/Sftp/data

    chmod 755 /home/Sftp/data

    2.dianxin用户

    mkdir –p /home/Sftp/dianxinFTP/dianxin

    chown dianxin:sftpusers /home/Sftp/dianxinFTP/dianxin

    chmod 777 /home/Sftp/dianxinFTP/dianxin

    3.jingdong用户

    mkdir –p /home/Sftp/jingdongFTP/jingdong

    chown jingdong:sftpusers /home/Sftp/jingdongFTP/jingdong

    chmod 777 /home/Sftp/jingdongFTP/jingdong

    9、验证

    sftpsftpusers@127.0.0.1输入密码,显示sftp>则sftp搭建成功。

    更多相关内容
  • windows版的sftp和ftp服务器,支持分账户权限管理,安装和使用操作简单易用
  • linux SFTP服务

    千次阅读 2017-08-25 16:17:26
    1、查看openssh的版本 ssh -V 使用ssh -V 命令来查看openssh的版本版本必须大于4.8p1,低于的这个版本需要升级。   2、创建sftp组 groupadd sftp   3、创建一个sftp用户 用户名为stevensftp,密码为...

    1、查看openssh的版本

    ssh -V

    使用ssh -V 命令来查看openssh的版本,版本必须大于4.8p1,低于的这个版本需要升级。

     

    2、创建sftp

    groupadd sftp

     

    3、创建一个sftp用户

    用户名为stevensftp,密码为123456

    useradd -g sftp -s /bin/false stevensftp

    passwd stevensftp

     

    4sftp目录

    sftp组的用户的home目录统一指定到/data/sftp下,按用户名区分,这里先新建一个stevensftp目录,然后指定stevensftp的home为/data/sftp/stevensftp

    mkdir -p /data/sftp/stevensftp

    usermod -d /data/sftp/stevensftp stevensftp

     

    5、配置sshd_config

    vim /etc/ssh/sshd_config

    找到如下这行,用#符号注释掉。

    # Subsystem      sftp   /usr/libexec/openssh/sftp-server

     

    在文件最后面添加如下几行内容,然后保存。

    Subsystem       sftp   internal-sftp   

    Match Group sftp   

    #ChrootDirectory /data/sftp/%u

    ChrootDirectory /data/sftp   

    ForceCommand    internal-sftp   

    AllowTcpForwarding no   

    X11Forwarding no 

     

    6、设定Chroot目录权限

    chown stevensftp:sftp /data/sftp/stevensftp

    chmod 755 /data/sftp/stevensftp

    照上面设置后,在重启sshd服务后,用户stevensftp已经可以登录

     

    7、修改/etc/selinux/config

    文本编辑器打开/etc/selinux/config

    SELINUX=disabled

    setenforce 0

     

    PS:

    目录权限设置上要遵循2点:

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

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

    如果不能遵循以上2点,即使是该目录仅属于某个用户,也可能会影响到所有的SFTP用户。

    展开全文
  • 项目中使用不同版本jsch包连接sftp,出现低版本连不上的问题,影响一些老项目,就看了一下原因Q:使用jsch 0.1.54连接apache-mina-sshd 2.8.0时报错验证失败 verify false深层思考Q:jsch 0.1.54 与0.1.55搭配apache...

    项目中使用不同版本jsch包连接sftp,出现低版本连不上的问题,影响一些老项目,就看了一下原因

    给出双方版本对比如下
    在这里插入图片描述

    问题

    Q:使用jsch 0.1.54连接apache-mina-sshd 2.8.0时报错验证失败 verify false

    深层思考

    Q:jsch 0.1.54 与0.1.55搭配apache-mina-sshd 2.8.0的区别

    JSCH

    使用Beyond Compare工具对0.1.54和0.1.55的jsch包进行了对比

    com.jcraft.jsch.JSch
    在这里插入图片描述
    发现如下结果

    0.1.54

    com.jcraft.jsch.jce.SignatureECDSA

    默认只有256一种长度

    0.1.55

    有256、384、521三种长度

    com.jcraft.jsch.jce.SignatureECDSAN

    com.jcraft.jsch.jce.SignatureECDSA256

    com.jcraft.jsch.jce.SignatureECDSA384

    com.jcraft.jsch.jce.SignatureECDSA521

    在这里插入图片描述

    0.1.55支持更多ECDSA椭圆曲线数字签名算法密钥长度

    在这里插入图片描述

    jsch连接到sshd

    客户端jsch连接到sftp服务器,对关键部位打断点,追溯到一处源码,看到默认长度为521

    org.apache.sshd.server.kex.DHGServer
    在这里插入图片描述
    在这里插入图片描述
    sshd中包含算法256、384、521三种长度,并且选中的长度为521,是jsch0.1.54没有521
    在这里插入图片描述

    org.apache.sshd.common.signature.SignatureECDSA

    jsch对比长度

    com.jcraft.jsch.KeyExchange
    在这里插入图片描述

    0.1.54

    获取ecdsa

    失败
    在这里插入图片描述

    0.1.55

    获取ecdsa521
    在这里插入图片描述

    成功

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IH6PguwQ-1655651739558)(C:\Users\81507\AppData\Roaming\Typora\typora-user-images\image-20220617221934198.png)]

    问题原因结论

    Q:使用jsch 0.1.54连接apache-mina-sshd 2.8.0时报错验证失败 verify false

    A:jsch 0.1.54中ecdsa算法只有256长度,0.1.55中支持256、384、521三种长度

    sshd 2.8.0中默认使用521长度

    在jsch比较时,0.1.54比较不相等

    深层思考

    Q:jsch 0.1.54 与0.1.55搭配apache-mina-sshd 2.8.0的区别

    A:jsch 0.1.55和sshd 2.8.0 都使用更长的521长度,应该是出于安全性考虑

    当然,也可以进一步降低加密算法等级,比如变成rsa,下一篇会说

    新问题

    Q:新老版本可以兼容吗

    sshd默认长度来源追溯

    根据shhd中得到521长度算法的地方反推

    反推的深度大概有几十层,参数传递过程中经过了包括各种抽象类、构造器、类方法转换等,不一一展开

    走到下面方法,可以看到

    ​ 当属性keySize为0,会选择ECCurves.SORTED_KEY_SIZE第三位

    ​ 当属性keySize不为0,使用keySize

    org.apache.sshd.server.keyprovider.AbstractGeneratorHostKeyProvider
    在这里插入图片描述

    而ECCurves则是包含了256、384、521三种长度,按大小排列

    org.apache.sshd.common.cipher.ECCurves
    在这里插入图片描述

    自定义算法长度

    能不能自定义长度呢,根据keySize反推

    AbstractGeneratorHostKeyProvider 有 setKeySize

    org.apache.sshd.server.keyprovider.AbstractGeneratorHostKeyProvider
    在这里插入图片描述

    ok,我们在sftp server配置类中指定
    在这里插入图片描述
    并不优雅,其他人看到会不懂,既然我们追过源码,就可以这样明示此值含义

    在这里插入图片描述

    经过验证,兼容jsch0.1.54

    更老的版本我没看,jsch能升级就升级,考虑稳定的话使用兼容方案

    解决结论

    Q:新老版本可以兼容吗

    A:可以通过设置key的长度,适配长度较短的低版本jsch

    展开全文
  • An easy-to-use utility that mounts remote file systems as Windows drives via SFTP. Once connected, you can browse and work with files as if they were stored on your local machine.
  • CentOs7 配置sftpsftp常用命令

    千次阅读 2020-08-16 00:22:35
    配置sftp 1.创建sftp服务用户组,创建sftp服务根目录: groupadd sftp 2.创建sftp服务用户: useradd -g sftp -s /sbin/nologin -d /ftpuser ftpuser -s /sbin/nologin禁止用户通过命令行登录dsy用户名-d...

    一、配置sftp

    1.创建sftp服务用户组,创建sftp服务根目录:

    groupadd sftp
    

    2.创建sftp服务用户:

    useradd -g sftp -s /sbin/nologin -d /ftpuser ftpuser
    

    -s /sbin/nologin 禁止用户通过命令行登录
    dsy 用户名
    -d 指定用户的登入目录 此处指定为/ftpuser是因为第六步中我们限制sftp登录用户的根目录为/home/sftp,所以实际用户登录后,最终指定目录为`/home/sftp/ftpuser

    3.为sftp账户添加密码

    passwd ftpuser
    

    输入密码时不会明文显示

    4.创建用户ftp文件目录

    mkdir /home/sftp/ftpuser
    

    5.修改文件夹拥有者

    chown -R ftpuser:sftp /home/sftp/ftpuser
    

    让ftpuser登录后对该目录有所有的权限,缺少这一步会出现sftp登录后无法写入文件的异常
    -R 递归修改子目录

    6.配置sshd_config:

    vim /etc/ssh/sshd_config
    

    注释掉Subsystem sftp /usr/libexec/openssh/sftp-server再加上一行

    #Subsystem  sftp    /usr/libexec/openssh/sftp-server
    Subsystem sftp internal-sftp
    

    也就是在前面加上 #

    在sshd_config最后加入下面这几行:

    # 匹配用户组,如果要匹配多个组,多个组之间用逗号分割
    Match Group sftp
    # 限制ftpuser用户的根目录
    ChrootDirectory /home/sftp
    # 指定 sftp 命令
    ForceCommand internal-sftp
    

    面这段代码务必放在最后,因为必须要“UseDNS no”后面
    不知道Vim编辑器如何使用的可以参考这篇博客:Linux目录结构及常用命令学习笔记

    7.重启sshd:

    systemctl restart sshd
    

    8.测试:

    sftp ftpuser@127.0.0.1
    

     ip地址我直接写的本机,实际过程中请写正确的ip地址

    目录的权限设定有两个需要注意的地方(默认情况下不需要去更改,除非你修改过/home或/home/sftp的权限)

    1.ChrootDirectory指定的目录开始一直往上到系统根目录为止的目录拥有者都只能是root

    2.由ChrootDirectory指定的目录开始一直往上到系统根目录为止都不可以具有群组写入权限

     二、涉及更改常用命令

    2.1 上传文件

    sftp -oPort=23 <username>@<remote> 
    put /path/filename(本地主机) /path/filename(远端主机)
    

    2.2 下载文件

    sftp -oPort=23 <username>@<remote> 
    get /path/filename(远端主机) /path/filename(本地主机)
    

    2.3 本地和远端操作命令区别

    在sftp的环境下的操作就和一般ftp的操作类似了,ls,rm,mkdir,dir,pwd,等指令都是对远端进行操作,如果要对本地操作,只需在上述的指令上加‘l’变为:lls,lcd, lpwd等

    cat /etc/passwd				查看所有用户
    userdel ftpuser 			删除用户ftpuser
    

    三、sftp常用命令

    cd 路径 					进入某路径
    lcd 						路径` 更改本地目录到某路径”
    chgrp group a.txt  			将文件a.txt的组更改为group
    chmod 777 a.txt  			将文件a.txt的权限更改为777
    chown owner a.txt  			将文件a.txt的属主更改为owner
    exit 						退出 sftp 
    quit 						退出 sftp 
    get 远程路径  				下载文件 
    ln existingpath linkpath  	符号链接远程文件 
    ls [参数] [路径] 			显示远程目录列表 
    lls [参数] [路径] 			显示本地目录列表 
    mkdir 路径 					创建远程目录 
    lmkdir 路径   				创建本地目录 
    mv oldpath newpath 			移动远程文件 
    put 本地路径   				上传文件 
    pwd 						显示远程工作目录 
    lpwd 						打印本地工作目录 
    rmdir 路径  				删除远程目录 
    lrmdir 路径   				移除删除目录 
    rm 路径  					删除远程文件 
    lrm 路径   					删除本地文件 
    展开全文
  • springboot 连接sftp服务器

    千次阅读 2019-10-22 16:48:21
    1.ftp和sftp主要区别 FTP是一种文件传输协议,一般是为了方便数据共享的。包括一个FTP服务器和多个FTP客户端。FTP客户端通过FTP协议在服务器上下载资源。而SFTP协议是在FTP的基础上对数据进行加密,使得传输的数据...
  • put(src,remotePath,options)==>字符串fastPut(localPath,remotePath,options)==>字符串append(input,remotePath,options)==>字符串mkdir(路径,递归)==>字符串rmdir(路径,递归)==>字符串delete...
  • CentOS7 SFTP服务安装和使用问题

    千次阅读 2020-12-07 12:21:31
    CentOS7 SFTP服务安装和使用SFTP简介FTP和SFTP的区别SFTP使用配置使用环境说明配置过程查看主机ssh服务创建SFTP根目录创建SFTP子目录创建用户组sftp创建用户组sftp用户用户 sftpPhotoUser 设置密码设置SFTP根目录和...
  • 查看ftp服务器版本

    千次阅读 2021-08-11 04:28:01
    查看ftp服务器版本 内容精选换一换查询云服务器信息列表。您可以在API Explorer中直接运行调试该接口。GET /v2.1/{project_id}/servers?changes-since={changes-since}&image={image}&flavor={flavor}&...
  • 必要条件: 你的openssh-server版本至少得失4.8p1, 因为配置权限需要版本添加的新配置项ChrootDirectory来完成。 如何查看自己服务器上的ssh版本?大家可以尝试以下命令: $ ssh -V 具体实施步骤: 1. 我们需要创建...
  • 最近项目要求数据传必须使用sftp,但sftp又不能直接使用22端口,不安全,网上查询的ssh和sftp分离相关的资料都是基于centos7的,于是经过研究尝试,完成了基于centos6版本的服务分离
  • 主要为大家详细介绍了C#利用SFTP实现上传下载的相关代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 本篇文档详细介绍了Centos下SFTP双机高可用环境部署过程,系本人生产环境部署手册,完全可用!有用到的朋友,请拿走!
  • Linux下Centos7.* 正确配置 sftp 服务

    千次阅读 2018-11-23 09:55:46
    sftp是Secure File Transfer Protocol的缩写,安全文件传送协议。可以为传输文件提供一种安全的加密方法。sftp与ftp 有着几乎一样的语法和功能。SFTP 为 SSH的一部分,是一种传输档案至Blogger伺服器的安全方式。 ...
  • vs code 配置sftp

    万次阅读 2018-08-20 10:32:22
    最近在做项目时,前端需要上传代码到测试环境,需要配置sftp上传。 webstorm 等ide很容易配置,...在Vscode的商店中搜索sftp扩展,当前版本是1.3.10 ,进行安装,安装完后重新加载就可以使用了。 配置: 一般...
  • 目录前言一、什么是SFTP?二、使用工具FileZilla(一)配置...安全文件传输协议SFTP(SSH File Transfer Protocol)是文件传输协议(FTP)的安全版本,也是SSH协议的一部分,可通过安全SHELL(SSH)数据流轻松进行数据传输
  • 最小化内部版本,文件名包含哈希值。 您的应用已准备好进行部署! 有关更多信息,请参见关于的部分。 npm run eject 注意:这是单向操作。 eject ,您将无法返回! 如果您对构建工具和配置选择不满意,则可以...
  • 基于 ssh 的 sftp 服务相比 ftp 有更好的安全性(非明文帐号密码传输)和方便的权限管理(限制用户的活动目录)。 1、开通 sftp 帐号,使用户只能 sftp 操作文件, 而不能 ssh 到服务器 2、限定用户的活动目录,使...
  • Centos配置SFTP用户

    2021-06-19 23:00:35
    Centos6以上版本通用,SFTP的用户上传,下载,查看的配置,每条命令都是案例和说明。
  • 一款PHP程序猿人见人爱的编辑器,附带的SFTP,代码格式化等功能可以大大加快代码的开发速度与美观!
  • Net :: SFTPSFTP协议(特别是SFTP协议的版本1到版本6)的纯Ruby实现。 请注意,这是“安全文件传输协议”,通常在SSH连接上运行,与FTP协议无关。 功能/问题: 通过SFTP将文件甚至整个目录树传输到远程主机或从...
  • 使用ssh协议版本1 -b 指定批处理文件 -C 使用压缩 -o 指定ssh选项 -F 指定ssh配置文件 -R 指定一次可以容忍多少请求数 -v 升高日志等级 参考实例 使用sftp命令链接到服务器: [root@li
  • SFTP Drive V2.0.7527.exe 官网最新版本,个人免费版本,可以把linux服务器变成Windows本地的Samba本地路径,非常好用。映射SSH到本地驱动器。
  • 相比传统的 ftp 服务,SFTP 显得更加方便、安全,一般系统安装了 ssh 后,默认就安装了这个服务,我们只要简单的配置一下就可以了。 但是 SFTP 账号是基于 SSH 账号的(也就是系统账户),默认情况下访问服务器的...
  • sftp服务搭建

    2019-02-12 17:03:25
    CentOS配置sftp服务器 1、查看openssh的版本 ssh -V 版本必须大于4.8p1,低于的这个版本需要升级。 2、创建sftp组 groupadd sftp
  • 主要介绍了linux命令scp和sftp详细介绍的相关资料,需要的朋友可以参考下
  • linux下sftp服务配置

    万次阅读 2018-02-11 18:08:43
    sftp是基于ssh协议的子协议,首先查看ssh版本,openssh -server版本至少得失4.8p1, 因为配置权限需要版本添加的新配置项ChrootDirectory来完成 [root@izys605x4c311swvscc1y0z ~]# ssh -V OpenSSH_6.6.1p1, ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 23,307
精华内容 9,322
关键字:

sftp版本