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. 吴裕雄 Bootstrap 前端框架开发——Bootstrap 网格系统实例:列排序

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  2. 02-08Android学习进度报告八

    今天主要学习了昨天还没有学习完的Date & Time组件的知识. 首先是DatePicker(日期选择器) android:calendarTextColor : 日历列表的文本的颜色 an ...

  3. springboot 重写 AuthorizationFilter

    原文链接:https://www.cnblogs.com/zeussbook/p/10778532.html

  4. 「Luogu P2468 [SDOI2010]粟粟的书架」

    这道题分为两个部分 Part1 前置芝士 前缀和(后缀和,二维前缀和):可以预处理一下数据. 二分查找:可以在较短的时间内找出答案. 具体做法 可以发现\(R,C\)不大,只有\(200\),于是可以 ...

  5. [经验] SpringBoot 远程连接 Linux 上的 Redis

    开发环境: ---------- springboot 2.X ---------- Linux Ubuntu 18.0.04 关于怎么在 Ubuntu 上安装 Linux , 网上的教程一大堆, 这 ...

  6. Tensorflow机器学习入门——网络可视化TensorBoard

    一.在代码中标记要显示的各种量 tensorboard各函数的作用和用法请参考:https://www.cnblogs.com/lyc-seu/p/8647792.html import tensor ...

  7. LeetCode刷题--21.合并两个有序链表(简单)

    题目描述 将两个有序链表合并为一个新的有序链表并返回.新链表是通过拼接给定的两个链表的所有节点组成的. 示例: 输入:1 -> 2 -> 4 ,1 -> 3 -> 4 输出:1 ...

  8. 用python发送qq邮件

    一.需要开启smtp服务,获取授权密码. 在qq邮箱的设置里开启smtp 二.代码 # -*- coding:utf-8 -*- import smtplib from email.mime.text ...

  9. 【快学springboot】13.操作redis之String数据结构

    前言 在之前的文章中,讲解了使用redis解决集群环境session共享的问题[快学springboot]11.整合redis实现session共享,这里已经引入了redis相关的依赖,并且通过spr ...

  10. 【剑指Offer面试编程题】题目1371:最小的K个数--九度OJ

    题目描述: 输入n个整数,找出其中最小的K个数.例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,. 输入: 每个测试案例包括2行: 第一行为2个整数n,k(1< ...