ssh命令用于linux 的远程登录,其默认端口为:22,在工作中常常会修改掉这一默认端口的值。

scp命令用于远程的文件相互拷贝。


scp远程文件拷贝:

[root@jerry a]#ls            #在a目录下有如下文件

1.txt  2.txt  3.txt  4.txt  5.txt
[root@jerry a]#scp 192.168.27.128:/root/a/test.txt .      #将另一台主机的test.txt文件拷贝到当前目录

The authenticity of host '192.168.27.128 (192.168.27.128)' can't be established.
ECDSA key fingerprint is 17:5a:69:db:e5:ab:6c:35:fb:a6:f2:4c:c8:bc:d3:c2.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.27.128' (ECDSA) to the list of known hosts.
root@192.168.27.128's password:     #需要输入另一台主机的密码
test.txt                                                                                             100%    0     0.0KB/s   00:00   
[root@jerry a]#ls
1.txt  2.txt  3.txt  4.txt  5.txt  test.txt

如果要拷贝的文件是目录,则需要加上-r的选项,同时也可以从当前主机往另一台主机上载文件或者目录:

[root@jerry a]#mkdir test
[root@jerry a]#ls
1.txt  2.txt  3.txt  4.txt  5.txt  test  test.txt
[root@jerry a]#scp -r test 192.168.27.128:/root/b    #将当前的test目录拷贝到另一台主机的/root/b中
root@192.168.27.128's password:     #输入另一台主机的密码
[root@jerry a]#

在另一台主机上查看:

root@jerry b]#ls
test


ssh实现远程免密登录:

[root@jerry b]#ssh-keygen    #生成密钥
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
35:ab:4f:5f:60:f6:e5:a3:14:56:82:1e:5c:29:87:96 root@jerry
The key's randomart image is:
+--[ RSA 2048]----+
|            o..  |
|          .Eoo   |
|          ++o. . |
|         ..o. o  |
|        S ..+o  .|
|         . o.o.o |
|        . .  .o..|
|         o .... .|
|          . ..   |
+-----------------+
[root@jerry b]#ssh-copy-id 192.168.27.129    #发送公钥到另一端
The authenticity of host '192.168.27.129 (192.168.27.129)' can't be established.
ECDSA key fingerprint is c0:d8:9b:d9:05:37:51:4e:42:16:1c:a2:17:6c:5a:b7.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@192.168.27.129's password:     #另一台主机的密码
Number of key(s) added: 1
Now try logging into the machine, with:   "ssh '192.168.27.129'"
and check to make sure that only the key(s) you wanted were added.
 
查看验证:
[root@jerry b]#ssh 192.168.27.129    #完成免密之后无需密码即可登录
Last login: Tue Jul  2 19:48:11 2019 from 192.168.27.1
[root@jerry ~]#ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:c2:9e:7e brd ff:ff:ff:ff:ff:ff
    inet 192.168.27.129/24 brd 192.168.27.255 scope global ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fec2:9e7e/64 scope link
       valid_lft forever preferred_lft forever
3: virbr0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN qlen 1000
    link/ether 52:54:00:d9:3d:91 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
4: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN qlen 1000
    link/ether 52:54:00:d9:3d:91 brd ff:ff:ff:ff:ff:ff
 
在被免密登录的一方的/root/.ssh中有如下文件:
[root@jerry ~]#ls .ssh
authorized_keys  known_hosts
存放的就是免密登录的主机和公钥的信息
 

实现免密登录之后就能远程免密拷贝:
[root@jerry b]#scp 192.168.27.129:/root/a/*.txt .
1.txt                                                                                                100%    0     0.0KB/s   00:00   
2.txt                                                                                                100%    0     0.0KB/s   00:00   
3.txt                                                                                                100%    0     0.0KB/s   00:00   
4.txt                                                                                                100%    0     0.0KB/s   00:00   
5.txt                                                                                                100%    0     0.0KB/s   00:00   
test.txt                                                                                             100%    0     0.0KB/s   00:00  
无需密码拷贝成功。

ssh与scp的更多相关文章

  1. Centos下关于ssh、scp与rsync设置与应用

    最近应公司要求,需要对文件数据进行远程传输与备份操作,特此写了一篇文章记录下了关于ssh.scp以及rsync的应用配置全过程,可能过程太过罗嗦,但主要就是想在不遗漏每个过程的情况下对此进行阐述,希望 ...

  2. ssh、scp免秘钥远程执行命令:expect

    首先安装expect # yum -y install expect 命令格式 # ./expect IP COMM    #expect是独立的工具,所以不能用sh来执行 1 2 3 4 5 6 7 ...

  3. windows通过秘钥使用ssh和scp

    windows10内置支持了ssh和scp等仿linux指令,可以让我们方便的使用类似linux的工作流把日常的代码资源部署维护工作写成脚本(批处理). ssh和scp都有-i参数可以通过指定一个私钥 ...

  4. linux ssh和scp实例

    ssh 192.160.1.100 -p 40012 scp user 192.169.72.2:/ scp -i /id_rsa -P40027 root@221.212.235.17:/sdzw/ ...

  5. ssh key scp命令 scp无密码传输

    ssh ~/.ssh/目录下通常有个文件 [root@user .ssh]# ll 总用量 16 -rw-------. 1 root root 552 11月 16 02:48 authorized ...

  6. ssh 或者 scp 无需输入密码的解决办法

    这里假设主机A(192.168.100.3)用来获到主机B(192.168.100.4)的文件.   在主机A上执行如下命令来生成配对密钥: ssh-keygen -t rsa   遇到提示回车默认即 ...

  7. linux 部分命令简单使用介绍-ssh、scp、less、tail、find、grep(持续添加)

    ssh 加密的网络协议,提供客户-服务模式. 登录                        ssh username@ip                        ssh ip #不提供用 ...

  8. Linux学习笔记之十一————Linux常用服务器构建之ssh和scp

    一.ssh 1.ssh介绍 SSH为Secure Shell的缩写,由 IETF 的网络工作小组(Network Working Group)所制定:SSH 为建立在应用层和传输层基础上的安全协议. ...

  9. ssh和scp时指定端口

    (1)ssh ssh -p xx $user@ip 其中xx是端口号,user是用户名,ip是主机ip 比如:ssh -p 23241 root@192.168.1.2 参考:https://blog ...

  10. ssh 和 scp 命令访问非默认22端口。

    ssh :(命令中的 p 小写) ssh -p 端口号 root@服务器ip scp: (命令中的 P 大写)(-r表示将目录下的目录递归拷贝.“.*”是将所有文件包括隐藏文件.) 上传文件到服务器s ...

随机推荐

  1. idea选择主题

    主题下载地址1:http://color-themes.com/?view=index 主题下载地址2:http://www.themesmap.com/ 主题下载地址3:http://www.ria ...

  2. WEB安全 - XSS,CSRF

    1. CSRF参考 https://www.ibm.com/developerworks/cn/web/1102_niugang_csrf/ https://en.wikipedia.org/wiki ...

  3. ElementUI 中 el-table 获取当前选中行的index

    第一种方法:将index放到row数据中 首先,给table加一个属性::row-class-name="tableRowClassName" 然后定义tableRowClassN ...

  4. C# 读取和写入txt文件

    读取: 1.使用StreamReader读取文件,然后一行一行的输出 StreamReader sr = new StreamReader(path,Encoding.Default); String ...

  5. Android开发之显示分辨率及单位

    Android 各种屏幕分辨率: VGA:         Video Graphics Array,即:显示绘图矩阵,相当于640×480 像素: HVGA:       Half-size VGA ...

  6. Android编程实现点击链接打开APP功能示例

    本文实例讲述了Android编程实现点击链接打开APP功能.分享给大家供大家参考,具体如下: 在Android中点击链接打开APP是一个很常见的需求.例如,电商为用户发送优惠券之后经常会下发一条短信: ...

  7. SpringBoot之基础入门-专题一

    SpringBoot之基础入门-专题一 一.Spring介绍 1.1.SpringBoot简介 在初次学习Spring整合各个第三方框架构建项目的时候,往往会有一大堆的XML文件的配置,众多的dtd或 ...

  8. cookie、 Session Storage 、 Local Storage

    问题描述: 使用Ajax, Controller 传回来 JSON 字符串(待处理的信息) 在 Ajax 中实现页面跳转 window.location.href="/jsp/index.j ...

  9. JS实现深拷贝,浅拷贝的方法

    在 JS 中,函数和对象都是浅拷贝(地址引用):其他的,例如布尔值.数字等基础数据类型都是深拷贝(值引用). 深拷贝 JSON.parse(JSON.stringify(src)):这种方法有局限性, ...

  10. 如何使用Python输出一个[斐波那契数列]

    如何使用Python输出一个[斐波那契数列]Fibonacci 斐波那契数列(Fibonacci sequence),又称黄金分割数列.因数学家列昂纳多·斐波那契(Leonardoda Fibonac ...