sftp 订阅
在计算机领域,SSH文件传输协议(英语:SSH File Transfer Protocol,也称Secret File Transfer Protocol,中文:安全文件传送协议,英文:Secure FTP或字母缩写:SFTP)是一数据流连接,提供文件访问、传输和管理功能的网络传输协议。 展开全文
在计算机领域,SSH文件传输协议(英语:SSH File Transfer Protocol,也称Secret File Transfer Protocol,中文:安全文件传送协议,英文:Secure FTP或字母缩写:SFTP)是一数据流连接,提供文件访问、传输和管理功能的网络传输协议。
信息
外文名
SSH File Transfer Protocol
领    域
计算机领域
中文名
SSH文件传输协议
也    称
SFTP
SSH文件传输协议简介
在计算机领域,由互联网工程任务组 (IETF) 设计,透过SSH-2的扩充提供安全档案传输能力,但也能够被其它协定使用。 即使 IETF 在网络草案资料阶段时,这个协定是在SSH-2文件中描述,它能够使用在许多不同的应用程式,例如安全档案传输在传输层安全(TLS)和传输资讯管理于虚拟私人网络应用程式。 这个协定是假设执行在安全信道,例如SSH,服务器已经认证客户端,并且客户端使用者可利用协定。 [1] 
收起全文
精华内容
下载资源
问答
  • sftp

    2020-07-03 10:11:55
    ------------------sftp在xshell工具中使用------------------ 默认是用传输ssh协议,把它更改为sftp协议 (前题是这个目标IP装了sftp服务端) 1、建立连接 然后连接确定,根据提示输入保存账号即可。 2...

     

    1、常用命令

     lcd D:\work\Xshell\save\sftp   ------------------修改本地保存路径

    get pcs-core-0.0.1-SNAPSHOT.jar
     

     


    get 文件名 ------------------下载文件
    put 文件名 ------------------上传文件
    pwd  ------------------是看远端服务器的目录, 即sftp服务器默认的当前目录。 
     lpwd  ------------------是看linux本地目录。
    ls  ------------------是看sftp服务器下当前目录下的文件,
     lls  ------------------是看linux当前目录下的文件。
    lcd ------------------修改本地保存路径--巧记local+cd

     

    ------------------sftp在xshell工具中使用------------------

     

    默认是用传输ssh协议,把它更改为sftp协议

    (前题是这个目标IP装了sftp服务端)

    1、建立连接


    然后连接确定,根据提示输入保存账号即可。

    2、常用命令


    get 文件名 ------------------下载文件
    put 文件名 ------------------上传文件
    pwd  ------------------是看远端服务器的目录, 即sftp服务器默认的当前目录。 
     lpwd  ------------------是看linux本地目录。
    ls  ------------------是看sftp服务器下当前目录下的文件,
     lls  ------------------是看linux当前目录下的文件。
    lcd ------------------修改本地保存路径--巧记local+cd

    -------------------sftp和ssh协议的区别-------------------


    一 sftp 协议

    SFTP协议工作于OSI七层体系的应用层.sftp是一个加密传输协议
    SFTP协议能够进行“远程文件获取,文件内容传输,文件管理”等操作.它的控制信号和数据信号的传输通过安全数据通道进行。一般情况下,这个安全数据通道由SSH连接提供,即SSH连接隧道作为安全数据通道。

    SFTP协议分为两个端,分别是SFTP Client和SFTP Server。


    二 SSH协议

    传输层协议 ,Secure Shell 缩写,
    ssh的作用:可以替代Telnet,也可以为FTP,Pop,甚至PPP提供安全的通道。

    -------------------sftp基础-------------------

    sftp 是 Secure File Transfer Protocol 的缩写,安全文件传送协议

    一、sftp 搭建

    (1) 创建 sftp 组

    groupadd sftp
    # -g 用户组; -d 指定家目录; -s 不登陆; -M 不创建家目录 
    useradd -g sftp -d /data/sftp/sftpuser -s /sbin/nologin sftpuser
    echo 123456 | passwd --stdin sftpuser
    

    (2) 修改 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
    ForceCommand internal-sftp
    
    # 下面两项是与安全有关
    AllowTcpForwarding no
    X11Forwarding no
    
    • Match Group sftp 这一行是指定以下的子行配置是匹配 sftp 用户组的。Match user userA,userB 则是匹配用户。
    • ChrootDirectory /data/sftp/%u 设定属于用户组 sftp 的用户访问的根文件夹。%h 代表用户 home 目录,%u 代表用户名。
    • ForceCommand internal-sftp 该行强制执行内部 sftp,并忽略任何 ~/.ssh/rc 文件中的命令。
    • AllowTcpForwarding no 是否允许 TCP 转发,默认值为 "yes", 禁止 TCP 转发并不能增强安全性,除非禁止了用户对 shell 的访问,因为用户可以安装他们自己的转发器。
    • X11Forwarding no 是否允许进行 X11 转发。默认值是 "no",设为 "yes" 表示允许。如果允许 X11 转发并且 sshd(8)代理的显示区被配置为在含有通配符的地址(X11UseLocalhost)上监听。那么将可能有额外的信息被泄漏。由于使用 X11 转发的可能带来的风险,此指令默认值为"no"。需要注意的是,禁止 X11 转发并不能禁止用户转发 X11 通信,因为用户可以安装他们自己的转发器。

    (3) 权限设置

    要实现 Chroot 功能, 目录权限的设置非常重要 。否则无法登录,给出的错误提示也让人摸不着头脑,无从查起。我在这上面浪费了很多时间。

    ChrootDirectory:定义了用户通过认证以后的 chroot 目录,此目录及其所有子目录的属主必须是 root,且这些目录只有 root 帐号可以进行写操作,其他任何组和帐号都不可写。chroot 以后,sshd 会将用户的工作目录转到 chroot 目录中用户自己的主目录。如果 ChrootDirectory 定义的目录下没有相应的 /home/username 目录,则会直接转到 chroot 的 / 目录下。

    chown root:root /data/sftp/sftpuser
    chmod 755 /data/sftp/sftpuser
    

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

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

    (4) 建立 SFTP 用户可写目录

    由于 /data/sftp/sftpuser 的用户是 root,其它用户都没有写的权限,所有要有该目录下新建一个目录用于文件的上传下载。

    mkdir -p /data/sftp/sftpuser/upload
    chown sftpuser:sftp /data/sftp/sftpuser/upload
    chmod 755 /data/sftp/sftpuser/upload
    

    (5) 测试

    sftp -P2022 sftpuser@172.16.16.126
    sftp> pwd
    Remote working directory: /upload
    sftp> lls
    1  anaconda-ks.cfg  zookeeper.out
    sftp> put anaconda-ks.cfg 
    Uploading anaconda-ks.cfg to /upload/anaconda-ks.cfg
    anaconda-ks.cfg                                         100% 1839    39.4KB/s   00:00    
    

    二、SFTP 配置

    2.1 MaxStartups 1000:30:3000

    同时允许几个尚未登入的联机画面,所谓联机画面就是在你 ssh 登录的时候,没有输入密码的阶段

    MaxStartups 10:30:100    # start:rate:full
    
    • start:表示未完成认证的连接数
    • rate:当未完成认证的连接数超过 start 时,rate/100 表示新发起的连接有多大的概率被拒绝连接。
    • full:如果未完成认证的连接数达到 full,则新发起的连接全部拒绝。

    查看 sshd 配置参数:

    sshd -T | grep -i startup
    

    2.2 maxsessions 1000

    同一地址的最大连接数,也就是同一个 IP 地址最大可以保持多少个链接。

    如下以上两个参数配置不正确,可能出现如下错误:

    ssh_exchange_identification: Connection closed by remote host
    

    《SSH 服务的几个超时参数配置》: https://yq.aliyun.com/articles/57903?spm=5176.11156381.0.0.68684403ani1fa

    三、踩过的坑

    问题 1: Couldn't read packet: Connection reset by peer

    sftp 输入密码后报错:

    [root@sdw1 ~]# sftp sftpuser@sdw1
    sftpuser@sdw1's password: 
    packet_write_wait: Connection to 192.168.2.111 port 22: Broken pipe
    Couldn't read packet: Connection reset by peer
    [root@sdw1 ~]# sftp sftpuser@sdw1
    sftpuser@sdw1's password: 
    Connected to sdw1.
    

    原因:/data/sftp/sftpuser(ChrootDirectory) 的用户必须为 root,参考 sftp 安装 (3)

    chown root:sftp /data/sftp/sftpuser
    

    问题 2: remote readdir("/"): Permission denied

    sftp 登陆成功后,没有读的权限

    sftp> ls
    remote readdir("/"): Permission denied
    

    原因:/data/sftp/sftpuser(ChrootDirectory) 组 sftp 必须要有读的权限,参考 sftp 安装 (3)

    chmod 755 /data/sftp/sftpuser


     

    展开全文
  • SFTP

    2019-07-01 20:41:00
    sftp是 SSH FILE Transfer Protocol 的缩写。安全文件传送协议。可以为传输文件提供一种安全的网络的加密方法。sftp与ftp有着几乎一样的语法和功能。SFTP为SSH的其中一部分,是一种传输档案至Blogger伺服器的安全...

    sftp是 SSH FILE Transfer Protocol 的缩写。安全文件传送协议。可以为传输文件提供一种安全的网络的加密方法。sftp与ftp有着几乎一样的语法和功能。SFTP为SSH的其中一部分,是一种传输档案至Blogger伺服器的安全方式。其实在SSH软件包中,已经包含一个叫做SFTP(Secure File Transfer Protocol)的安全文件信息传输子系统,SFTP本身没有单独的守护进程,它必须使用sshd守护进程(端口号默认是22)来完成相应的连接和答复操作,所以从某种意义上来说,SFTP并不像一个服务器程序,而更像是一个客户端程序。SFTP同样是使用加密传输认证信息和传输的数据,所以,使用SFTP是非常安全的。但是,由于这种传输方式使用了加密/解密技术,所以传输效率比普通的FTP要低的多。

     

    在linux系统中,最长使用到的文件传输的方式莫过于ftp和sftp了,但是这两个传输方式有什么本质不同呢?本文通过centos系统,给大家浅谈SFTP、FTP的区别!

     

    FTP(File Transfer Protocol),即文件传输协议,用于Internet上控制文件的双向传输。

    FTP在linux系统中,传输默认的端口为21端口,通常以ASCII码和二进制的方式传输数据,支持主动模式和被动模式两种方式。

    主动模式传输过程:

     

    被动模式传输过程:

     

    SFTP(Secure File Transfer Protocol),即文件加密传输协议,

    SFTP在linux系统中,传输默认的端口为22端口,这种传输方式更为安全,传输双方既要进行密码安全验证,还要进行基于密钥的安全验证,有效的防止了“中间人”的威胁和攻击。

    在使用linux的centos服务器系统中,两个比较起来,ftp传输会比sftp传输速率快,毕竟sftp牺牲了一定的效率,以保证传输过程的安全。

     

     

    转载于:https://www.cnblogs.com/zuichuyouren/p/11116604.html

    展开全文
  • SFTPSFTP

    热门讨论 2012-12-13 21:07:23
    SFTP
  • sftp源码sftp源码sftp源码

    热门讨论 2011-03-07 01:41:08
    sftp源码sftp源码sftp源码sftp源码sftp源码sftp源码
  • SFTP服务器

    2018-12-26 16:39:52
    本机搭建SFTP服务器,可以测试SFTP,windows下使用,!
  • spark sftp

    2018-06-20 16:54:24
    spark 读取sftp文件 下面是用法 // Construct Spark dataframe using file in FTP server DataFrame df = spark.read(). format("com.springml.spark.sftp"). option("host", "SFTP_HOST"). option("username", ...
  • FreeSSHd sftp服务器

    2020-04-20 16:58:55
    FreeSSHd sftp服务器 sftp本地搭建
  • SFTP Support

    2021-01-12 05:49:17
    <div><p>I had an interesting use case for chisel where I needed to access SFTP. This is normally possible simply by tunneling an SSH connection through chisel. However since chisel already uses SSH ...
  • SFTP的用法

    万次阅读 2018-07-25 18:37:59
    SFTP的概念 sftp是Secure File Transfer Protocol的缩写,安全文件传送协议。可以为传输文件提供一种安全的网络的加密方法。sftp 与 ftp 有着几乎一样的语法和功能。SFTP 为 SSH的其中一部分,是一种传输档案至 ...

    SFTP的概念

    sftp是Secure File Transfer Protocol的缩写,安全文件传送协议。可以为传输文件提供一种安全的网络的加密方法。sftp 与 ftp 有着几乎一样的语法和功能。SFTP 为 SSH的其中一部分,是一种传输档案至 Blogger 伺服器的安全方式。其实在SSH软件包中,已经包含了一个叫作SFTP(Secure File Transfer Protocol)的安全文件信息传输子系统,SFTP本身没有单独的守护进程,它必须使用sshd守护进程(端口号默认是22)来完成相应的连接和答复操作,所以从某种意义上来说,SFTP并不像一个服务器程序,而更像是一个客户端程序。SFTP同样是使用加密传输认证信息和传输的数据,所以,使用SFTP是非常安全的。但是,由于这种传输方式使用了加密/解密技术,所以传输效率比普通的FTP要低得多,如果您对网络安全性要求更高时,可以使用SFTP代替FTP。(来自百度百科)

    这里我们用sftp来对远程服务器和本地电脑上文件进行上传,下载操作。

    用法:

    连接远程服务器:

    sftp username@ip

    回车之后输入服务器密码即可连接成功。

    将文件上传到服务器上:

    put [本地文件的地址] [服务器上文件存储的位置]

    将服务器上的文件下载到本地:

    get [服务器上文件存储的位置] [本地要存储的位置]

    最后分享一个Linux中返回上一层目录的命令:

    cd ..

     

    展开全文
  • sftp常用命令

    万次阅读 2019-04-15 15:46:14
    sftp -P 22 zhangsan@192.168.0.100 #秘钥登录 sftp -P 22 -i ~/.ssh/id_rsa zhangsan@192.168.0.100 更改远程工作目录 cd /abc 更改和/或打印本地工作目录 lcd /abc 列出远程目录的内容 ls 列出本地...
    1. 登录

      #密码登录
      sftp -P 22 zhangsan@192.168.0.100
      #秘钥登录
      sftp -P 22 -i ~/.ssh/id_rsa zhangsan@192.168.0.100
      
    2. 更改远程工作目录

      cd /abc
      
    3. 更改和/或打印本地工作目录

      lcd /abc
      
    4. 列出远程目录的内容

      ls
      
    5. 列出本地目录的内容

      lls
      
    6. 打印远程工作目录

      pwd
      
    7. 打印本地工作目录

      lpwd
      
    8. 浏览您的本地目录,即打开本地目录

      explore
      
    9. 将文件从服务器下载到本地计算机

      #把sftp服务器上test.txt文件下载到本地
      get /tmp/test.txt ~/
      #把sftp服务器上test文件下载到本地
      get -r /tmp/test/ ~/
      
    10. 将文件从本地计算机上载到服务器

      #把本地文件test.txt上传到ftp服务器/tmp目录下
      put ~/test.txt /tmp/
      #把本地文件test上传到sftp服务器/tmp目录下
      put -r ~/test /tmp/
      
    11. 在远程服务器上创建一个目录abc

      mkdir abc
      
    12. 移动或重命名远程服务器上的文件

      mv /test.txt /abc.txt
      
    13. 移动或重命名远程服务器上的文件

      rename /test.txt /abc.txt
      
    14. 删除远程服务器上的文件abc.txt

      rm abc.txt
      
    15. 删除远程服务器上的目录abc

      rmdir abc
      
    16. 给予帮助

      help
      
    17. 清晰的屏幕

      clear
      
    18. 完成您的SFTP会话,即断开连接

      bye、exit、quit、!
      
    展开全文

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 16,762
精华内容 6,704
关键字:

sftp