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. 使用 Sandcastle Help File Builder 制作文档

    1.下载安装 Sandcastle 程序. http://download-codeplex.sec.s-msft.com/Download/Release?ProjectName=shfb& ...

  2. 「JSOI2014」打兔子

    「JSOI2014」打兔子 传送门 首先要特判 \(k \ge \lceil \frac{n}{2} \rceil\) 的情况,因为此时显然可以消灭所有的兔子,也就是再环上隔一个点打一枪. 但是我们又 ...

  3. 记数问题(0)<P2013_1>

    记数问题 (count.cpp/c/pas) [问题描述]  试计算在区间1到n的所有整数中,数字x(0≤x≤9)共出现了多少次?例如,在1到11中,即在1.2.3.4.5.6.7.8.9.10.11 ...

  4. 记录5-如何在UltraEdit中编译和运行Java

    1点击“高级”,再点击“工具配置” 2点击“插入”,在“菜单项”名称上输入“编译java程序”,在“命令行”里输入“javac %n%e”,在工作目录上填“%p”. 3切换到“输出”项,选择“输出到列 ...

  5. IIS 应用程序池回收(代码实现)

    回收 public void StartStopRecycleApp(string appName = "项目DLL名称", string method = "Recyc ...

  6. Vue -> 解决 vue-ueditor-wrap 不能显示的问题

  7. Linux centos7 Linux网络相关、firewalld和netfilter、netfilter5表5链介绍、iptables语法

    一. Linux网络相关 yum install net-tools ifconfig查看网卡ip ifup ens33开启网卡 ifdown ens33关闭网卡 设定虚拟网卡ens33:0 mii- ...

  8. Golang mysql数据库

    基本操作: Open() – create a DB Close() - close the DB Query() - 查询 QueryRow() -查询行 Exec() -执行操作,update,i ...

  9. 「HNOI2016」大数

    题目描述 给定一个质数\(p\)和一个数字序列,每次询问一段区间\([l,r]\), 求出该序列区间\([l,r]\)内的所有子串,满足该子串所形成的数是\(p\)的倍数(样例的解释也挺直观的) 基本 ...

  10. mysql学习指令

    mysql 用户管理和权限设置 参考文章:http://www.cnblogs.com/fslnet/p/3143344.html Mysql命令大全 参考文章: http://www.cnblogs ...