scp服务

scp原理:特点先统计信息,看对方有没有足够的空间存储,如果太多的话,效率非常的低

rsync :边复制  边比较  边统计

800kb=100KB

8比特=1字节

1024KB=1M

scp传送的是比特

-l 代表的是limit (限制的意思)             Limits the used bandwidth, specified in Kbit/s.

-P (这里是大写的P)  指定sshd的传输的端口(默认的sshd的端口是22端口)

1.两台服务器之间的进行scp备份的时候要确保都安装了openssh-clients软件(rpm查询方法)

[[email protected] ~]# rpm -qa |grep openssh-clients

openssh-clients-5.3p1-111.el6.x86_64

[[email protected] ~]#

[[email protected] ~]# rpm -qa openssh-clients

openssh-clients-5.3p1-111.el6.x86_64

[[email protected] ~]#

2.scp传送数据(这是推送的方式从一台服务器推送到另一台服务器)

本机Ip192.168.33.10 所要吧数据推送的主机的ip192.168.33.11

192.168.33.10  服务器上的命令

[[email protected] ~]# scp install.log [email protected]:/tmp

[email protected]‘s password:

install.log                                      100%   22KB  21.7KB/s   00:00

[[email protected] ~]#

192.168.33.11  服务器上进行查看(ok)

[[email protected] ~]# cd /tmp

[[email protected] tmp]# ls

install.log

[[email protected] tmp]#

3.scp传送数据(拉取的方式,从一台服务器吧数据拉回本地)

192.168.33.11  把数据从192.168.33.10  拉回来

192.168.33.11上的操作(中间的时候恢复一个yes和要输入用户的密码):

[[email protected] tmp]# scp [email protected]:/root/install.log.syslog  /tmp

查看拉取成功

[[email protected] tmp]# ls

install.log.syslog

[[email protected] tmp]#

4.推送目录(吧192.168.33.10 上的/etc 目录推送到  192.168.33.11  /tmp  目录下)

192.168.33.10 下的代码

[[email protected] ~]# scp -r /etc/ [email protected]:/tmp/

192.168.33.11  中进行查看(可以看出etc目录已经被复制)

[[email protected] ~]# cd  /tmp

[[email protected] tmp]# ls

etc  install.log.syslog

[[email protected] tmp]#

5.限制文件的传输大小

①生成一个500M的文件

[[email protected] ~]# dd  if=/dev/zero  of=./bigfile bs=500M count=1

[[email protected] ~]# du -h bigfile

500M    bigfile

[[email protected] ~]#

②传输也就是推送

192.168.33.10 服务器(可以看出800是代表的比特所以每秒大约有102.4KB/s)

[[email protected] ~]# scp -l 800 bigfile [email protected]:/tmp

[email protected]‘s password:

bigfile                                            1% 7568KB  99.0KB/s 1:24:56 ETA^

6.修改端口进行指定端口推送

①修改192.168.33.11 的sshd的端口默认是22修改成22191  编辑文件中

Port 22191

[[email protected] ~]# vim   /etc/ssh/sshd_config

把# Port 22  修改成Port 22191  (默认有注释,修改后要把注释去掉保存,然后重启服务)

[[email protected] ~]# /etc/init.d/sshd  restart

Stopping sshd:                                             [  OK  ]

Starting sshd:                                             [  OK  ]

[[email protected] ~]#

查看确认

[[email protected] ~]# netstat -lntup |grep 22

tcp        0      0 0.0.0.0:22191               0.0.0.0:*                   LISTEN      4236/sshd

tcp        0      0 :::22191                    :::*                        LISTEN      4236/sshd

[[email protected] ~]#

②在192.168.33.10 进行传送数据(传输完成)

[[email protected] ~]# scp -P 22191 bigfile [email protected]:/tmp

[email protected]‘s password:

bigfile                                          100%  500MB   8.8MB/s   00:57

[[email protected] ~]#

吧端口修改回来不然咱们用crt登录的时候就得用22191端口了。修改回来

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

scp无密码的传输

①在192.168.33.10 上生成秘钥(执行命令按回车)

[[email protected] ~]# ssh-keygen -t rsa

[[email protected] ~]#

②查看秘钥

[[email protected] ~]# cd  /root/.ssh/

[[email protected] .ssh]# ls

id_rsa  id_rsa.pub  known_hosts

[[email protected] .ssh]#

③对秘钥id_rsa.pub进行改名,赋予新的权限

[[email protected] .ssh]# mv id_rsa.pub auth_key

[[email protected] .ssh]# chmod 600 auth_key

[[email protected] .ssh]#

[[email protected] .ssh]# ls

auth_key  id_rsa  known_hosts

[[email protected] .ssh]#

注: auth_key是公钥   id_rsa 是私钥

④把私钥拷贝到另一台服务器上(192.168.33.11)

192.168.33.10 操作

[[email protected] .ssh]# scp id_rsa [email protected]:/root/.ssh/

[email protected]33.11‘s password:

id_rsa                                           100% 1675     1.6KB/s   00:00

[[email protected] .ssh]#

到192.168.33.11上查看(ok)

[[email protected] ~]# cd .ssh

[[email protected] .ssh]# ls

id_rsa  known_hosts

[[email protected] .ssh]#

⑤可以进行无密码传输了

私钥的可以传输公钥的不需要密码,但是公钥的服务器传输到私钥上确实需要密码,在本机生成的秘钥和私钥只要有一个有就行,如果两台机器都可以互相无密码传输的话,那么每台机器都生成一个密码要私钥

拥有私钥的机器可以访问拥有公钥的机器

产生公私钥

假设有两台linux服务器A和B,当A连接B时不需要输入密码,实现方法是在A vps上使用ssh-keygen命令生成一对公私钥,具体操作如下:

 A 服务器操作:

运行:ssh-keygen -t rsa 三次回车
生成公钥id_rsa.pub和私匙id_rsa,默认存放在/root/.ssh/目录下

在 B 服务器上操作:
把A公钥id_rsa.pub 复制上传到 B 服务器/root/.ssh/目录下
ps:没有.ssh目录可放在其它目录或创建一个:mkdir .ssh
再创建一个:touch /root/.ssh/authorized_keys
chmod 700 /root/.ssh

继续在 B 服务器上操作:
运行:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 /root/.ssh/authorized_keys

设置好后重启下ssh
CentOS 重启SSH : service sshd restart
Debian重启SSH:service ssh restart

在A服务器上centos执行: ssh [email protected]服务器的IP -P端口
debian执行:ssh -l root B服务器的IP -p 22
看看是否可以不同密码直接密匙登陆了。退出命令:exit

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

scp实战技巧

在crontab中写定时任务  传送备份数据

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

linux 本地文件上传到服务器

scp /home/liujia/file.1txt  [email protected]:/user/liujia

从服务器下载文件

scp [email protected]:/user/liujia/file1.txt /home/liujia

命令

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

时间: 2024-10-07 14:36:33

scp服务的相关文章

SCP服务实现Linux交互

SCP服务实现Linux交互 在实际工作中,我们可以使用scp服务器进行Linux与Linux之间的信息交互. 基本指令: scp ????????本地文件 ????远程文件 scp ????????远程文件 ????本地文件 scp ????????–r ????????文件夹 ????????文件夹 scp ????????–P ????端口 ????文件 ????文件 ? 例1:上传文件到其他Linux主机中 例2:下载远程文件到本机中 ?

Linux bash: scp: command not found的问题记录

1,scp报错 [[email protected] soft]# scpjdk-7u55-linux-x64.tar.gz 192.168.121.246:/soft/ [email protected]'s password: bash: scp: command not found lost connection [[email protected] soft]# 2,调试-v [[email protected] soft]# scp -vjdk-7u55-linux-x64.tar.g

DICOM:DICOM Print 服务详细介绍

背景: 昨天专栏中发表了一篇关于DICOM Print的博文DICOM:DICOM Print服务中PresentationContext协商之 MetaSOPClass与SOPClass对比分析,文章从部署中遇到的实际情况出发,对DICOM Print中的连接协商(Association Negotiation)进行了剖析,本文可看做是上一篇博文的补充,重新浏览和整理了DICOM3.0标准中对DICOM Print 服务的介绍,加深对DICOM打印的理解. DICOM Print服务数据流:

DICOM:dcmqrscp.exe与storescu.exe中C-STORE服务的差别

背景: 专栏中曾分别写过dcmqrscp.exe与storescu.exe工具包的介绍,但是并未深究两者之间的差别.dcmqrscp.exe工具是一个mini版PACS,可分别响应C-FIND.C-MOVE.C-GET.C-STORE等各种DIMSE服务,而storescu.exe工具是C-STORE服务使用者,可以看出这两个工具包都提供C-STORE SCU服务.前几天博友的一个问题使得重新研究了一下两者在实现C-STORE SCU服务上的差别.通过源码分析发现问题根源出在Presentati

SCP实现Linux到Windows的文件数据备份

我们上一篇介绍了使用Curl+windows FTP实现linux到windows的数据备份,今天我们介绍一下使用SCP服务将Linux的文件到Windows的文件备份:我们都知道SCP使用的是SSL协议进行数据传输的,所以我们如果使用SCP服务进行数据传输的话需要安装openssh-clients(linux上),而windows上我们需要单独下载openssh for windows 工具.具体见下: 我们首先在linux上安装openssh-clients yum install –y o

DICOM医学图像处理:DIMSE消息发送与接收“大同小异”之DCMTK fo-dicom mDCM

背景: 从DICOM网络传输一文开始,相继介绍了C-ECHO.C-FIND.C-STORE.C-MOVE等DIMSE-C服务的简单实现,博文中的代码给出的实例都是基于fo-dicom库来实现的,原因只有一个:基于C#的fo-dicom库具有高封装性.对于初学者来说实现大多数的DIMSE-C.DIMSE-N服务几乎都是"傻瓜式"操作--构造C-XXX-RQ.N-XXX-RQ然后绑定相应的OnResponseReceived处理函数即可.本博文希望在前几篇预热的基础上,对比DCMTK.fo

DICOM:fo-dicom、dcm4che14、dcm4chee等开源库持续自我维护

题记: DICOM专栏系列虽然写了多年,但是依然不能解决大家日常中遇到的种种问题,其实这恰恰就是程序员(码农)工作的最大乐趣所在.就像每个人的人生一样,所处的环境不同,所遭遇的事件不同,结果自然就不同.程序开发亦是如此,操作系统不同.软件版本不同,本地配置不同都会导致种种问题. "授人以鱼不如授人以渔",所以正常的解决之道是希望通过专栏的讲解,能够让大家真正理解每个问题出现的背后原因,从而主动排查并解决问题.对于排查和解决过程中遇到的问题,我会整理总结成博文供大家参考.正如上文所说,每

DICOM:DCMTK工具包分析之dcmqrscp.exe、dcmqridx.exe、dcmqrti.exe

背景: 新的一年开始,专栏会坚持下去,继续与大家相互交流学习.本篇博文再一次分析DCMTK自带的工具包dcmqrscp.exe(类似于一个单机版miniPACS),此次主要关注dcmqrscp.exe的数据库部分,通过使用dcmqridx.exe手动操作dcmqrscp.exe的数据库文件,直观了解数据库的记录内容:然后利用dcmqrti.exe查询dcmqrscp.exe的数据库文件,学习如何操作dcmqrscp.exe数据库. 单机版数据库: 单机版数据库就是只能运行在单机上,不提供网络功能

在Linux系统中实现CA

前言 CA是证书的签发机构,它是PKI的核心.CA是负责签发证书.认证证书.管理已颁发证书的机关. 它要制定政策和具体步骤来验证.识别用户身份,并对用户证书进行签名,以确保证书持有者的身份和 公钥的拥有权.. CA 也拥有一个证书(内含公钥)和私钥.网上的公众用户通过验证 CA 的签字从而信任 CA ,任 何人都可以得到 CA 的证书(含公钥),用以验证它所签发的证书. 如果用户想得到一份属于自己的证书,他应先向 CA 提出申请.在 CA 判明申请者的身份后,便为他分 配一个公钥,并且 CA 将