fbpx
维基百科

安全复制

安全复制(英語:secure copy,缩写作 SCP)是指在本地主机与远程主机或者两台远程主机之间基于Secure Shell(SSH)协议安全地传输電腦檔案[1]。“SCP”通常指安全复制协议或者程序本身[2]

安全复制协议

SCP是一种基于BSD RCP英语Rcp (Unix)协议的网络传输协议[3] 支持同一个网络上主机之间传输文件英语File transfer。SCP使用Secure Shell(SSH)完成数据传输,并使用同时用它进行身份认证,从而确保数据传输时真实性保密性。客户端可以向服务器发送(上传)文件,可选包含其基本属性(权限、时间戳)。客户端也可以请求(下载)一个服务器的文件或目录。SCP默认通过TCP端口22运行。如同RCP,没有RFC定义该协议的细节。

功能

正常来说,一个客户端发起到远程主机的SSH连接,并请求在远程服务器上启动一个SCP进程。远程SCP进程可以以两种模式之一操作:

  • 源模式,读取文件(通常从磁盘)并将其发送回客户端。
  • 槽(sink)模式,接收客户端发送的文件,并将它们写入到远程主机(通常到磁盘)。

对大多数SCP客户端来说,源模式通常使用-f标识(意为from)触发,而槽模式用-t(意为to)触发。这些标志是在内部使用,没有在SCP源代码之外留有文档。

远程到远程模式

在过去,远程到远程的安全复制中,SCP客户端打开一个到源主机的SSH连接,并请求它打开到目的地的SCP连接。(远程到远程模式不支持打开两个SCP连接,并使用始发客户端作为一个中介)。应格外注意的是,当在密码或键盘交互认证模式下操作时,SCP不能用于远程的从源复制到目的地,因为这将向源显示目的地服务器的认证凭证。但是,使用基于密钥或GSSAPI英语GSSAPI的方法可以规避此点,因为不需要用户输入。

最近以来,远程到远程模式支持通过发起转移的客户端路由流量,即使它是转移的第三方。这种方法下,授权凭据必须仅驻留在发起客户端上,即第三方。[需要解释]

有关shell配置文件的问题

SCP不希望与ssh登录的shell用文本通信。这是由于文本传输的ssh配置文件(例如.bashrc文件中的echo "Welcome")会被解释为一条错误消息,并且一个空行(echo "")将导致scp死锁为等待错误消息完成。

安全复制(远程文件复制程序)

SCP程序是将SCP协议实现为服务守护程序或客户端的软件工具。它是执行安全复制的程序。SCP服务器程序通常与SCP客户端是相同的程序。SCP服务器软件可以普通机器或防火墙配置为仅接受22端口上的SCP流量的极高安全标准的机器上运行。[4]

使用最广泛的SCP程序可能是命令行界面scp程序,这在大多数SSH实现中提供。scp程序是rcp命令的安全模拟。scp程序是所有想提供SCP服务的SSH服务器的必备,scp功能也作为SCP服务器。

部分SSH实现提供scp2程序,这使用SFTP协议而非SCP,但提供与相同的命令行界面scpscp此时通常符号链接scp2

通常来说,scp程序的语法[5]类似cp (copy)的语法:

复制文件到主机:

scp SourceFile user@host:directory/TargetFile 

从主机复制文件:

scp user@host:directory/SourceFile TargetFile scp -r user@host:directory/SourceFolder TargetFolder 

注意,如果远程主机使用非默认端口22,可以在命令中指定。例如,从主机复制一个文件。

scp -P 2222 user@host:directory/SourceFile TargetFile 

由于安全复制协议仅实现文件传输,GUI的SCP客户端很少,因为实现它需要额外的功能(至少要有目录列出)。例如,WinSCP默认为SFTP协议。即使在SCP模式下操作,WinSCP等客户端通常也不是纯粹的SCP客户端,因为他们必须用其他手段实现额外的功能(例如ls命令)。这反过来带来了平台依赖性问题。

SFTP客户端是更全面的通过SSH管理文件的工具。

参考文献

  1. ^ Linux and Unix scp command. [4 August 2015]. (原始内容于2018-02-21). 
  2. ^ Pechanec, Jan. . Jan Pechanec's weblog. Oracle. [4 August 2015]. (原始内容存档于2015-10-11). 
  3. ^ scp - FreeBSD (history section). [25 June 2012]. (原始内容于2021-02-25). 
  4. ^ SCP Server Installation and Configuration. [17 June 2016]. (原始内容于2016-11-27). 
  5. ^ "scp(1) - Linux man page" http://linux.die.net/man/1/scp (页面存档备份,存于互联网档案馆

参见

安全复制, 本條目翻譯自其他語言維基百科, 需要精通本領域的編者協助校對翻譯, 如果您精通本領域, 又能清楚地將來源語言翻譯為中文, 歡迎您協助參與校對與修訂, 原文参见维基数据, 英語, secure, copy, 缩写作, 是指在本地主机与远程主机或者两台远程主机之间基于secure, shell, 协议安全地传输電腦檔案, 通常指协议或者程序本身, 目录, 协议, 功能, 远程到远程模式, 有关shell配置文件的问题, 远程文件复制程序, 参考文献, 参见协议, 编辑scp是一种基于bsd, 英语, uni. 本條目翻譯自其他語言維基百科 需要精通本領域的編者協助校對翻譯 如果您精通本領域 又能清楚地將來源語言翻譯為中文 歡迎您協助參與校對與修訂 原文参见维基数据 安全复制 英語 secure copy 缩写作 SCP 是指在本地主机与远程主机或者两台远程主机之间基于Secure Shell SSH 协议安全地传输電腦檔案 1 SCP 通常指安全复制协议或者程序本身 2 目录 1 安全复制协议 1 1 功能 1 2 远程到远程模式 1 3 有关shell配置文件的问题 2 安全复制 远程文件复制程序 3 参考文献 4 参见安全复制协议 编辑SCP是一种基于BSD RCP 英语 Rcp Unix 协议的网络传输协议 3 支持同一个网络上主机之间传输文件 英语 File transfer SCP使用Secure Shell SSH 完成数据传输 并使用同时用它进行身份认证 从而确保数据传输时的真实性和保密性 客户端可以向服务器发送 上传 文件 可选包含其基本属性 权限 时间戳 客户端也可以请求 下载 一个服务器的文件或目录 SCP默认通过TCP端口22运行 如同RCP 没有RFC定义该协议的细节 功能 编辑 正常来说 一个客户端发起到远程主机的SSH连接 并请求在远程服务器上启动一个SCP进程 远程SCP进程可以以两种模式之一操作 源模式 读取文件 通常从磁盘 并将其发送回客户端 槽 sink 模式 接收客户端发送的文件 并将它们写入到远程主机 通常到磁盘 对大多数SCP客户端来说 源模式通常使用 f标识 意为from 触发 而槽模式用 t 意为to 触发 这些标志是在内部使用 没有在SCP源代码之外留有文档 远程到远程模式 编辑 在过去 远程到远程的安全复制中 SCP客户端打开一个到源主机的SSH连接 并请求它打开到目的地的SCP连接 远程到远程模式不支持打开两个SCP连接 并使用始发客户端作为一个中介 应格外注意的是 当在密码或键盘交互认证模式下操作时 SCP不能用于远程的从源复制到目的地 因为这将向源显示目的地服务器的认证凭证 但是 使用基于密钥或GSSAPI 英语 GSSAPI 的方法可以规避此点 因为不需要用户输入 最近以来 远程到远程模式支持通过发起转移的客户端路由流量 即使它是转移的第三方 这种方法下 授权凭据必须仅驻留在发起客户端上 即第三方 需要解释 有关shell配置文件的问题 编辑 SCP不希望与ssh登录的shell用文本通信 这是由于文本传输的ssh配置文件 例如 bashrc文件中的echo Welcome 会被解释为一条错误消息 并且一个空行 echo 将导致scp死锁为等待错误消息完成 安全复制 远程文件复制程序 编辑SCP程序是将SCP协议实现为服务守护程序或客户端的软件工具 它是执行安全复制的程序 SCP服务器程序通常与SCP客户端是相同的程序 SCP服务器软件可以普通机器或防火墙配置为仅接受22端口上的SCP流量的极高安全标准的机器上运行 4 使用最广泛的SCP程序可能是命令行界面的scp程序 这在大多数SSH实现中提供 scp程序是rcp命令的安全模拟 scp程序是所有想提供SCP服务的SSH服务器的必备 scp功能也作为SCP服务器 部分SSH实现提供scp2程序 这使用SFTP协议而非SCP 但提供与相同的命令行界面scp scp此时通常符号链接至scp2 通常来说 scp程序的语法 5 类似cp copy 的语法 复制文件到主机 scp SourceFile user host directory TargetFile 从主机复制文件 scp user host directory SourceFile TargetFile scp r user host directory SourceFolder TargetFolder 注意 如果远程主机使用非默认端口22 可以在命令中指定 例如 从主机复制一个文件 scp P 2222 user host directory SourceFile TargetFile 由于安全复制协议仅实现文件传输 GUI的SCP客户端很少 因为实现它需要额外的功能 至少要有目录列出 例如 WinSCP默认为SFTP协议 即使在SCP模式下操作 WinSCP等客户端通常也不是纯粹的SCP客户端 因为他们必须用其他手段实现额外的功能 例如ls命令 这反过来带来了平台依赖性问题 SFTP客户端是更全面的通过SSH管理文件的工具 参考文献 编辑 Linux and Unix scp command 4 August 2015 原始内容存档于2018 02 21 Pechanec Jan How the SCP protocol works Jan Pechanec s weblog Oracle 4 August 2015 原始内容存档于2015 10 11 scp FreeBSD history section 25 June 2012 原始内容存档于2021 02 25 SCP Server Installation and Configuration 17 June 2016 原始内容存档于2016 11 27 scp 1 Linux man page http linux die net man 1 scp 页面存档备份 存于互联网档案馆 参见 编辑文件传输协议列表 英语 List of file transfer protocols FTP FTPS SSH文件传输协议 SFTP FISH SSH 远程外壳 RSH rsync Telnet WinSCP 取自 https zh wikipedia org w index php title 安全复制 amp oldid 75183628, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。