ssh免密登陆和加密解密
一 丶实现无密码的远程管理
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免密登陆和加密解密的更多相关文章
- SSH免密登陆原理及实现
声明:作者原创,转载注明出处. 作者:帅气陈吃苹果 一.SSH简介 SSH(Secure Shell)是一种通信加密协议,加密算法包括:RSA.DSA等. RSA:非对称加密算法,其安全性基于极其困难 ...
- ssh免密登陆:sshpass -p [passwd] ssh -p [port] root@192.168.X.X
正文: ssh免密登陆:sshpass -p [passwd] ssh -p [port] root@192.168.X.X
- ssh免密登陆配置
目录 ssh免密登陆 在A工作站上输入 B服务器上输入 登陆 ssh初次登陆询问 1.单次取消 2.ansible中增加链接参数 3.修改ansible配置参数[推荐] 4.修改服务器上的ssh_co ...
- Linux Hadoop集群搭建第二步:--------SSH免密登陆
内容和Linux 搭建 Hadoop集群--Jdk配置相关联 三台虚拟机的操作 Linux SSH免密登陆: 参考网址:http://www.cnblogs.com/999-/p/6884861.ht ...
- ssh免密登陆及时间设置
1.ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa // 在自己主机生成私钥和公钥 2.scp id_rsa.pub centos@s201:/home/centos ...
- SSH免密登陆配置过程和原理解析
SSH免密登陆配置过程和原理解析 SSH免密登陆配置过很多次,但是对它的认识只限于配置,对它认证的过程和基本的原理并没有什么认识,最近又看了一下,这里对学习的结果进行记录. 提纲: 1.SSH免密登陆 ...
- [提供可行性脚本] RHEL/CentOS 7 多节点SSH免密登陆
实验说明: 在自动化部署时,会经常SSH别的机器去操作,然而每次的密码认证却很令人烦躁,尤其是很长的密码,因此SSH免密登陆就显得必不可少: 在机器数目很多的时候,使用更过的往往是Ansible分发并 ...
- 使用rsync基于ssh免密登陆进行备份或目录同步
日常工作中有很多的备份工作,rsync是一个很不错的工具,尝试使用基于ssh免密登陆的方式进行备份,测试成功,是可行且方便的方法,撰文记之,以备后用: 1.A主机root用户对B主机root用户做ss ...
- 【Linux】ssh-copy-id三步实现ssh免密登陆
一.本地机器上使用ssh-keygen产生公钥私钥对 ssh-keygen -t rsa -C "XXXX@163.com" --->执行完会在~/.ssh/下生成公钥私钥对 ...
随机推荐
- iptables 过滤条件(Matches)
iptables可让你设置多种过滤条件,但是某些条件需要核心有提供相关功能才行.Iptables本身內建一般性的Internet Protocol (IP) 过滤条件,也就是說,即时沒载入任何扩充模组 ...
- H3C 802.11协议的发展
- HDU 1026 BSF+优先队列+记录路径、
#include<iostream> #include<cmath> #include<cstring> #include<cstdio> #inclu ...
- pytorch中如何处理RNN输入变长序列padding
一.为什么RNN需要处理变长输入 假设我们有情感分析的例子,对每句话进行一个感情级别的分类,主体流程大概是下图所示: 思路比较简单,但是当我们进行batch个训练数据一起计算的时候,我们会遇到多个训练 ...
- Python--day41--递归锁Rlock
1,递归锁Rlock:递归锁是为了解决死锁问题,且递归锁的特点是在同一个线程中可以被acquire()多次 多个acquire()在递归锁中不会阻塞,而互斥锁Lock就会阻塞 代码示例: from t ...
- Vue 各个阶段生命周期函数
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Java开发之快捷键
1.显示桌面快捷键:win+D或者右击状态栏,选择显示桌面. 2.UE编辑器:如果想把多行记录合并为一行,使用替换(Ctrl+R),查找里输入^p(代表回车换行符),替换为里什么都不填,替换位置选择所 ...
- UVa 1635 - Irrelevant Elements-[分解质因数]
Young cryptoanalyst Georgie is investigating different schemes of generating random integer numbers ...
- linux一个例子驱动
我们介绍的驱动称为 short (Simple Hardware Operations and Raw Tests). 所有它做 的是读和写几个 8-位 端口, 从你在加载时选择的开始. 缺省地, 它 ...
- Linux 内核提交 urb
一旦 urb 被正确地创建,并且被 USB 驱动初始化, 它已准备好被提交给 USB 核心来发送 出到 USB 设备. 这通过调用函数 usb_submit_urb 实现: int usb_submi ...