一 丶实现无密码的远程管理

  1.生成公钥 私钥
    [root@room9pc14 桌面]# ssh-keygen
    [root@room9pc14 桌面]# ls /root/.ssh/

  2.上传公钥到虚拟机A
    [root@room9pc14 桌面]# ssh-copy-id root@192.168.4.7

  3.上传公钥到虚拟机B
    [root@room9pc14 桌面]# ssh-copy-id root@192.168.4.207

  4.补充在真机上
    [root@room9pc14 桌面]# ssh-add (声明私钥)

二、加密与解密

  对称加密:加密/解密用同一个密钥

  非对称加密:加密/解密用不同的密钥 {公钥(加密)、私钥(解密)}  

  口令认证登录   PasswordAuthentication no|yes
  密钥对认证登录

  对称加密
    DES,Data Encryption Standard

    AES,Advanced Encryption Standard

  非对称加密
    RSA,Rivest Shamirh Adleman

    DSA,Digital Signature Algorithm

  Hash散列技术,用于信息摘要(数据完整性)

    MD5,Message Digest Algorithm 5

    SHA,Secure Hash Algorithm
    特点:
      1. 根据输入的文本(长度不限),生成固定长度(比如128位)的摘要文本

      2. 只要输入的文本不同,则生成的摘要文本也不一样

GPG非对称加密/解密:

GPG介绍:

  GNU Privacy Guard

  最流行的数据加密、数字签名工具软件

例题:

  #useradd usera
  #useradd userb
  #echo 123456 | passwd --stdin usera
  #echo 123456 | passwd --stdin userb

+++++++++++++++++++++++++++

gpg 做对称加/解密

  usera ------ > userb
  发                   接
  加                   解

  #ssh -X usera@localhost
  #head -5 /etc/passwd > a.txt
  #cat a.txt
  #gpg -c a.txt  (提示输入密码)
  # ls a.txt.gpg
  # mv a.txt.gpg /tmp/

  #ssh -X userb@localhost
  #gpg -d /tmp/a.txt.gpg > my.txt (提示输入密码)
  #cat my.txt
+++++++++++++++++++++++++++
gpg 做非对称加/解密

  uesra ------- > userb
  发       接
  加       解
  公钥     私钥

userb
  ssh -X userb@localhost
  1 创建秘钥对(公钥 私钥)
    #rm -rf ~/.gnupg
    #gpg --gen-key
    #ls ~/.gnupg

    pubring.gpg(公钥)  secring.gpg(私钥)

  2 导出公钥
    #gpg -a --export  [真实姓名]  > /tmp/userb.pub

usera
  ssh -X usera@localhost
  1 导入userb用户的公钥
    #rm -rf ~/.gnupg
    #gpg  --import  /tmp/userb.pub
    #ls ~/.gnupg
  2 使用公钥加密明文文件,共享给userb用户
    #tail -5 /etc/passwd > test.txt
    #gpg  -e  -r  [真实姓名]  test.txt
    #ls  test.txt.gpg
    #mv test.txt.gpg   /tmp/
  3 userb用户使用私钥解密共享的加密文件
    #gpg -d /tmp/test.txt.gpg > my2.txt  (提示输入密码,调用私钥的密码)
    #cat my2/tmp/test.txt.gpg

+++++++++++++++++++++++++++++++
gpg 做数字签名(私钥签名 公钥验证签名)
  软件签名与验证过程

    软件官方以私钥对软件包执行数字签名

    用户下载软件包、软件官方的公钥

    以官方公钥验证软件包签名,确保软件完整性
userb 
  #head -2 /etc/passwd > my4.txt
  #gpg -b my4.txt (要求输入私钥密码) //数字签名
  #ls my4.txt.sig
  #mv my4.txt* /tmp/
  #ls /tmp/my4.txt*
  #gpg --fingerprint

usera 
  #gpg --verify /tmp/my4.txt.sig

ssh免密登陆和加密解密的更多相关文章

  1. SSH免密登陆原理及实现

    声明:作者原创,转载注明出处. 作者:帅气陈吃苹果 一.SSH简介 SSH(Secure Shell)是一种通信加密协议,加密算法包括:RSA.DSA等. RSA:非对称加密算法,其安全性基于极其困难 ...

  2. ssh免密登陆:sshpass -p [passwd] ssh -p [port] root@192.168.X.X

    正文: ssh免密登陆:sshpass -p [passwd] ssh -p [port] root@192.168.X.X

  3. ssh免密登陆配置

    目录 ssh免密登陆 在A工作站上输入 B服务器上输入 登陆 ssh初次登陆询问 1.单次取消 2.ansible中增加链接参数 3.修改ansible配置参数[推荐] 4.修改服务器上的ssh_co ...

  4. Linux Hadoop集群搭建第二步:--------SSH免密登陆

    内容和Linux 搭建 Hadoop集群--Jdk配置相关联 三台虚拟机的操作 Linux SSH免密登陆: 参考网址:http://www.cnblogs.com/999-/p/6884861.ht ...

  5. ssh免密登陆及时间设置

    1.ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa // 在自己主机生成私钥和公钥 2.scp id_rsa.pub centos@s201:/home/centos ...

  6. SSH免密登陆配置过程和原理解析

    SSH免密登陆配置过程和原理解析 SSH免密登陆配置过很多次,但是对它的认识只限于配置,对它认证的过程和基本的原理并没有什么认识,最近又看了一下,这里对学习的结果进行记录. 提纲: 1.SSH免密登陆 ...

  7. [提供可行性脚本] RHEL/CentOS 7 多节点SSH免密登陆

    实验说明: 在自动化部署时,会经常SSH别的机器去操作,然而每次的密码认证却很令人烦躁,尤其是很长的密码,因此SSH免密登陆就显得必不可少: 在机器数目很多的时候,使用更过的往往是Ansible分发并 ...

  8. 使用rsync基于ssh免密登陆进行备份或目录同步

    日常工作中有很多的备份工作,rsync是一个很不错的工具,尝试使用基于ssh免密登陆的方式进行备份,测试成功,是可行且方便的方法,撰文记之,以备后用: 1.A主机root用户对B主机root用户做ss ...

  9. 【Linux】ssh-copy-id三步实现ssh免密登陆

    一.本地机器上使用ssh-keygen产生公钥私钥对 ssh-keygen -t rsa -C "XXXX@163.com" --->执行完会在~/.ssh/下生成公钥私钥对 ...

随机推荐

  1. supersocket实现你的命令

    现在, 如果你有一个命令行协议的服务器实例 "IronPythonServer", 而且我们要用 Python 创建一个 "ADD" 命令用于让两个整数相加,然 ...

  2. webkit浏览器下多行显示,有省略号效果

    多行显示情况 display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; ...

  3. Python--day23--初识面向对象复习

    面向对象编程是大程序编程思想:

  4. gSOAP 使用

    1. wsdl2h 生成服务定义头文件 wsdl2h -o calc.h http://www.genivia.com/calc.wsdl 2. 从服务定义头文件calc.h生成客户端代码 soapc ...

  5. Innodb_large_prefix

    innodb_large_prefix Prefixes, defined by the length attribute, can be up to 767 bytes long for InnoD ...

  6. H3C 高级ACL

  7. P1008 对齐输出

    题目描述 读入三个整数,按每个整数占8个字符的宽度,右对齐输出它们. 输入格式 输入的一行包含三个整数 \(a,b,c(1 \le a,b,c \le 10^6)\) . 输出格式 输出一行包含三个整 ...

  8. Java语言中使用OpenMP

    从去年年中,开始学习Java,主要是维护公司用Java编写的服务器软件.目前,该服务器软件遇到一个问题,在下载大文件时,如果同时下载的用户很多, 服务器软件工作会出现异常,有的用户无法下载.服务器硬件 ...

  9. Linux 内核驱动支持什么设备

    struct usb_device_id 结构提供了这个驱动支持的一个不同类型 USB 设备的列表. 这个 列表被 USB 核心用来决定给设备哪个驱动, 并且通过热插拔脚本来决定哪个驱动自动加载, 当 ...

  10. 【u034】追查坏奶牛

    Time Limit: 1 second Memory Limit: 128 MB [问题描述] 你第一天接手三鹿牛奶公司就发生了一件倒霉的事情:公司不小心发送了一批有三聚氰胺的牛奶.很不幸,你发现这 ...