`
dongzhaowu
  • 浏览: 6821 次
社区版块
存档分类
最新评论

Linux中的ftp、sftp、ssh、scp

阅读更多

 

FTP(File Transfer Protocol):是TCP/IP网络上两台计算机传送文件的协议,FTP是在TCP/IP网络和INTERNET上最早使用的协议之一,它属于网络协议组的应用层。FTP客户机可以给服务器发出命令来下载文件,上载文件,创建或改变服务器上的目录。相比于HTTP,FTP协议要复杂得多。复杂的原因,是因为FTP协议要用到两个TCP连接,一个是命令链路,用来在FTP客户端与服务器之间传递命令;另一个是数据链路,用来上传或下载数据。FTP是基于TCP协议的,因此iptables防火墙设置中只需要放开指定端口(21 + PASV端口范围)的TCP协议即可。 

ftp工作模式: 

  • PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用PORT命令告诉服务器:“我打开了一个1024+的随机端口,你过来连接我”。于是服务器从20端口向客户端的1024+随机端口发送连接请求,建立一条数据链路来传送数据。
  • PASV(Passive被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。当需要传送数据时,服务器在命令链路上用PASV命令告诉客户端:“我打开了一个1024+的随机端口,你过来连接我”。于是客户端向服务器的指定端口发送连接请求,建立一条数据链路来传送数据。
  • PORT方式,服务器会主动连接客户端的指定端口,那么如果客户端通过代理服务器链接到internet上的网络的话,服务器端可能会连接不到客户端本机指定的端口,或者被客户端、代理服务器防火墙阻塞了连接,导致连接失败
  • PASV方式,服务器端防火墙除了要放开21端口外,还要放开PASV配置指定的端口范围


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

SCP(Secure Copy):scp就是secure copy,是用来进行远程文件复制的,并且整个复制过程是加密的。数据传输使用ssh,并且和使用和ssh相同的认证方式,提供相同的安全保证。 

ftp & scp/sftp比较: 

  • 和ftp不同的是sftp/scp传输协议是采用加密方式来传输数据的。而ftp一般来说允许明文传输,当然现在也有带SSL的加密ftp,有些服务器软件也可以设置成“只允许加密连接”,但是毕竟不是默认设置需要我们手工调整,而且很多用户都会忽略这个设置。
  • 普通ftp仅使用端口21作为命令传输。由服务器和客户端协商另外一个随机端口来进行数据传送。在pasv模式下,服务器端需要侦听另一个端口。假如服务器在路由器或者防火墙后面,端口映射会比较麻烦,因为无法提前知道数据端口编号,无法映射。(现在的ftp服务器大都支持限制数据端口随机取值范围,一定程度上解决这个问题,但仍然要映射21号以及一个数据端口范围,还有些服务器通过UPnP协议与路由器协商动态映射,但比较少见)
  • 当你的网络中还有一些unix系统的机器时,在它们上面自带了scp/sftp等客户端,不用再安装其它软件来实现传输目的。
  • scp/sftp属于开源协议,我们可以免费使用不像FTP那样使用上存在安全或版权问题。所有scp/sftp传输软件(服务器端和客户端)均免费并开源,方便我们开发各种扩展插件和应用组件。
  • 小提示:当然在提供安全传输的前提下sftp还是存在一些不足的,例如他的帐号访问权限是严格遵照系统用户实现的,只有将该帐户添加为操作系统某用户才能够保证其可以正常登录sftp服务器


SSH(Secure Shell):,由 IETF 的网络工作小组(Network Working Group)所制定;SSH 为建立在应用层和传输层基础上的安全协议。SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题。 

  • SSH是由客户端和服务端的软件组成的:服务端是一个守护进程(daemon),他在后台运行并响应来自客户端的连接请求。服务端一般是sshd进程,提供了对远程连接的处理,一般包括公共密钥认证、密钥交换、对称密钥加密和非安全连接; 客户端包含ssh程序以及像scp(远程拷贝)、slogin(远程登陆)、sftp(安全文件传输)等其他的应用程序。
  • 从客户端来看,SSH提供两种级别的安全验证:第一种级别(基于口令的安全验证); 第二种级别(基于密匙的安全验证)。
  • SSH 主要有三部分组成: 传输层协议 [SSH-TRANS] ;用户认证协议 [SSH-USERAUTH] ;连接协议 [SSH-CONNECT]


OpenSSH:是SSH(Secure SHell)协议的免费开源实现。SSH协议族可以用来进行远程控制,或在计算机之间传送文件。而实现此功能的传统方式,如telnet(终端仿真协议)、 rcp ftp、 rlogin、rsh都是极为不安全的,并且会使用明文传送密码。OpenSSH提供了服务端后台程序和客户端工具,用来加密远程控件和文件传输过程的中的数据,并由此来代替原来的类似服务。 OpenSSH是使用SSH透过计算机网络加密通讯的实现。它是取代由SSH Communications Security所提供的商用版本的开放源代码方案。目前OpenSSH是OpenBSD的子计划。OpenSSH常常被误认以为与OpenSSL有关联,但实际上这两个计划的有不同的目的,不同的发展团队,名称相近只是因为两者有同样的软件发展目标──提供开放源代码的加密通讯软件。 

ssh -V:查看当前服务器的ssh版本信息

分享到:
评论

相关推荐

    WINSCP-SFTP SSH免密码登录

    WINSCP 可创建密钥交互SSH免密码登录

    winscp Free SFTP SCP and FTP client for Windows

    WinSCP 是一个 Windows 环境下使用的 SSH 的开源图形化 SFTP 客户端。同时支持 SCP 协议。它的主要功能是在本地与远程计算机间安全地复制文件,并且可以直接编辑文件

    WinSCP-SFTP客户端

    Windows环境下使用SSH的开源图形化SFTP客户端。同时支持SCP协议。它的主要功能就是在本地与远程计算机间安全的复制传输...WinSCP传输模式可以选择FTP、SFTP、SCP、WebDAV 4种模式,默认为SFTP模式,我们一般用前两种。

    SSH工具SFTP 客户端 WinSCP 5.13.4

    WinSCP是一个Windows环境下使用SSH的开源图形化SFTP客户端。同时支持SCP协议。它的主要功能就是在本地与远程计算机间安全的复制文件。.winscp也可以链接其他系统,比如linux系统

    python实现ssh及sftp功能(实例代码)

    1.在Linux上我们通过scp命令实现主机间的文件传送,通过ssh实现远程登录 ,比如 我们经常使用的xshell远程登录工具,就是基础ssh协议实现window主机远程登录Linux主机  下面简单的在python实现这几个功能 下面使用...

    WinSCP Portable 4.2.6 Build 721 绿色多语便携版_使用SSH的开源图形化SFTP客户端

    支持基于SSH-1、SSH-2的SFTP和SCP协议 支持批处理脚本和命令行方式 多种半自动、自动的目录同步方式 内置文本编辑器 支持SSH密码、键盘交互、公钥和Kerberos(GSS) 验证 通过与Pageant(PuTTY Agent)集成支持...

    linux连接工具,3种,亲测都可以使用,各有特色优点

    linux连接工具,3种,亲测都可以使用,各有特色优点, linux连接工具 SSH SecureShell:SSH是一个用来替代TELNET、FTP以及R命令的工具包. vnc viewer:是一种远程控制的软件,远端的机器开启vnc的server之后,本地就可以...

    WinSCP (Windows Secure Copy) 免费开源的广泛用于与Unix和Linux服务器系统的文件交互

    WinSCP (Windows Secure Copy) 是一个免费、开源的Windows应用程序,主要用于通过SFTP (SSH File Transfer Protocol)、SCP (Secure Copy Protocol)、FTP (File Transfer Protocol) 和WebDAV协议在本地计算机和远程...

    winscp FTP工具

    免费实用的FTP工具,支持SFTP,SCP,FTP协议

    SecureCRT+SecureFX 7.1.0.244整合版 - SSH和SFTP客户端

    而 SecureFX 则是一款专业而灵活、支持安全文件传输的 SFTP 客户端,也支持 SCP、SSL 等安全协议、以及传统的 FTP 协议。另外 SecureFX 比 FlashFXP 提供的 SFTP 功能更为全面健壮。 为方便使用,做出 SecureCRT+...

    Xshell+Xftp:高效、安全的远程连接和文件传输工具

    Xftp 是一个文件传输工具,支持FTP、SFTP、SCP等协议,可以用于文件传输。 两款软件可以互相配合使用,提供了一种高效、安全的远程连接和文件传输解决方案。本文将详细介绍如何使用Xshell和Xftp进行远程连接和文件...

    ftp 服务器 简写版

    使用 WinSCP 可以连接到一台提供 SFTP (SSH File Transfer Protocol)或 SCP (Secure Copy Protocol)服务的 SSH (Secure Shell)服务器,通常是 UNIX 服务器。SFTP 包含于 SSH-2 包中,SCP 在 SSH-1 包中。两种协议都...

    WinSCP-6.1.1 最新版 2023-06-23更新

    它提供了简单易用的GUI,能通过多种协议在本地与远程计算机之间复制文件,支持的协议有:Amazon S3、FTP、FTPS、SCP、SFTP及WebDAV。WinSCP也能在两个本地文件夹之间复制文件。高级用户可以使用.NET assembly来自动...

    SecureCRT_and_SecureFX_v7.3.4

    SecureCRT是为Internet和Intranet设计的终端模拟器﹐支援SSH1﹑...SecureFX 支持三种文件传输协议:FTP、SFTP 和 FTP over SSH2。它可以提供安全文件传输。无论您连接的是任何一种服务器,它都能提供安全的传输服务。

    putty(中文以及原版) 以及使用教程

    • PSFTP (SFTP 的命令行客户端,类似于 FTP 的文件传输,只不过使用的是 SSH 的 22 端口,而非 FTP 的 21 端口,类似于 Unix/Linux 下的 sftp 命令) • PuTTYtel (仅仅是一个 Telnet 客户端) • Plink (命令行工具...

    WinSCP_SFTP客户端.7z

    WinSCP是一个Windows环境下使用SSH的开源图形化SFTP客户端。同时支持SCP协议。它的主要功能就是在本地与远程计算机间安全的复制文件。.winscp也可以链接其他系统,比如linux系统

    scrt-sfx-9.0.0-2430.ubuntu20-64.bin

    SecureFX 是 SecureCRT 配套的文件传输客户端,支持 FTP、HTTP、HTTPS、SFTP、SCP 和 Amazon S3(新增)。 支持 Ubuntu 20.04 LTS – 本版本,其他版本未支持 Ubuntu 18.04 LTS Red Hat Enterprise Linux 8.x Red ...

    ssh 客户端软件,窗口界面

    sftp、ftp、scp 客户端软件 ,用于Windows平台

    VanDyke SecureCRT SecureFX v8 x86 x64 with Keygen

    SecureCRT是为Internet和Intranet设计的终端模拟器﹐支援SSH1﹑... SecureFX 支持三种文件传输协议:FTP、SFTP 和 FTP over SSH2。它可以提供安全文件传输。无论您连接的是任何一种服务器,它都能提供安全的传输服务。

    已验证好用的WinSCP

    使用WinSCP可以连接到一台提供SFTP (SSH File Transfer Protocol)或SCP (Secure Copy Protocol)服务的SSH (Secure Shell)服务器,通常是UNIX服务器。SFTP包含于SSH-2包中,SCP在SSH-1包中。两种协议都能运行在以后的...

Global site tag (gtag.js) - Google Analytics