推荐-Openssl加密解密及PKI,创建私有CA!

Openssl加密解密及PKI,创建私有CA

Openssl加密解密及PKI,创建私有CA

一、什么是SSL?

  • SSL:Secure   Socket   Layer(安全套接字层)

  • TLS:Transport   Layer  Security(安全传输层)

  • 1995:SSL 2.0, Netscape

  • 1996: SSL 3.0

  • 1999: TLS 1.0

  • 2006: TLS 1.1

  • 2008: TLS 1.2

  • 2015: TLS 1.3

二、SSL协议出现的目的?

  • 为http安全传输的的保密性,完整性,可用性而存在。

三、密码算法

1、对称加密:加密解密使用同一个密钥
 作用:数据加密
 缺陷:密钥分发,密钥过多
 算法:EDS  3DES   AES (常用)
 2、非对称加密(公钥加密):密钥成对出现
 公钥(pubkey)公开所有人
 私钥(secret  key)自己保存
 作用:身份验证,密钥交换
 特点:使用公钥加密只能与之配对的私钥解密,反之亦然。
 算法:RSA(常用)   DSA
 3、单向加密:只能加密不能解密
 作用:验证数据的完整性
 特点:定长输出,雪崩效应
 算法:md5   sha1  sha224  sha256  ……..

四、SSL握手通信

  • TCP/IP建立三次握手连接后,申请网站CA证书,网站把证书发给客户,客户校验网站名称与CA名称是否一致。

  • 客户端自己内置的受信任的CA机构公钥对其网站证书进行公钥解密,确认身份。

  • 然后通过解密的特征码通过md5或sha1算法进行对比,完成数据的认证。

  • 继续验证证书是否被吊销

  • 之后用IKE密钥交换(HD算法或公钥算法)发自己的对称密钥发过去,以后的传输就通过密钥进行发送数据。通过

五、IKE是啥?

  • 密钥交换,可以根据DH或者非对称密钥来实现。

六、PKI是啥?

blob.png

七、Openssl开源项目

  • openssl
     多用途命令行工具

  • libcrypto
     公共加密库,调用加密库功能

  • libssl
     库,实现ssl和tls依赖库功能

八、创建私有CA

  • 创建CA服务器,创建私有CA

    blob.png

  • httpd端

    blob.png

九、吊销证书

blob.png

附:Openssh基于密钥认证

  • #ssh -keygen -t rsa    #会在家目录下.ssh/生成一个公钥和私钥。

  • #ssh-copy-id  -i  id_key.pub  192.168.31.254     #把公钥传到~/.ssh/authorized_keys注意必须是600权限。

  • 这样就可以实现基于密钥认证。

原创文章,作者:Net18-糖糖,如若转载,请注明出处:http://www.178linux.com/13707

(0)
Net18-糖糖Net18-糖糖
上一篇 2016-04-05 22:43
下一篇 2016-04-05 22:49

相关推荐

  • user相关的一些命令及用法

    前言            我们知道,当我们进入一家公司做运维方面的工作的时候,我们需要对公司的服务器进行监控管理,换句话说,我们需要一个身份来操作服务器。那么我们又知道,linux系统下拥有最高权限的管理员是Root,它无所不能,无所畏惧,那么公司肯定就是不会把这个账户交给你使用。那么就引出一个概…

    2017-07-22
  • N28-第三周

    1. 列出當前系統上所有已經登入的用戶的用戶名,注意:同一個用戶登入多次,則只顯示一次即可。
    2. 取出最後登入到當前系統的用戶的相關信息。
    3. 取出當前系統上被用戶當做其默認shell的最多的那個shell。
    4. 將/etc/passwd中的第三個字段數值最大的後10個用戶的信息全部改為大寫後保存至/tmp/maxusers.txt文件中。
    5. 取出當前主機的IP地址,提示:對ifconfig命令的結果進行切分。
    6. 列出/etc目錄下所有以.conf結尾的文件的文件名,並將其名字轉換為大寫後保存至/tmp/etc.conf文件中。
    7. 顯示/var目錄下一級子目錄或文件的總各數。
    8. 取出/etc/group文件中第三個字段數值最小的10個組的名字。
    9. 將/etc/fstab和/etc/issue文件的內容合併為同一個內容後保存至/tmp/etc.test文件中。
    10. 請總結描述用戶和組管理類命令的使用方法並完成以下練習:
    (1) 創建組distro,其GID為2016。
    (2) 創建用戶mandriva,其ID號為1005,基本組為distro。
    (3) 創建用戶mageia,其ID號為1100,家目錄為/home/linux。
    (4) 給用戶mageia添加密碼,密碼為mageedu。
    (5) 刪除mandriva,但保留其家目錄。
    (6) 創建用戶slackware,其ID號為2002,基本組為distro,附加組peguin。
    (7) 修改slackware的默認shell為/bin/tcsh。
    (8) 為用戶slackware新增附加組admins。

    2017-12-19
  • Linux中高级文件系统管理

    一、磁盘配额管理             定义:限制普通用户对某个目录写空间大小的限制     1、此策略是针对文件系统,并非硬盘     2、可以根据不同组和不同用户进行不同的策…

    Linux干货 2016-08-29
  • 磁盘阵列(RAID)简介

    资料 RAID(Redundant Arrays of Inexpensive Disks 廉价磁盘冗余阵列)即磁盘阵列,磁盘阵列是由多个价格比较便宜的磁盘组合成的一个容量巨大的磁盘组,其原理是利用数组方式来制作磁盘组,配合数据分散排列的设计,配合数据分散排列的设计,提升数据的安全性。它把数据分别存放在多个硬盘上,输入输出操作能以平衡的方式交叠,改良性能,因…

    Linux干货 2017-04-17
  • 利用 yum 查找某个命令属于哪个包

    当我们在安装一个不熟悉的命令是,会遇到个问题:Error: Nothing to do 而你又不知道该命令的是属于哪个rom包,莫慌~我们可以借助一个叫yum的基于rpm的软件包管理器。 以 dig 这个命令为例,当我安装它时会出现如下情况  [root@localhost ~]# yum install dig  Loaded plug…

    Linux干货 2016-03-27
  • 第九周shell脚本编程练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; 2、写一个脚本 (1) 获取当前主机的主机名,保存于hostname变量中; (2) 判断此变量的值是否为localhost,如果是,则将当前主机名修改www.magedu.com; (3…

    2017-11-23

评论列表(1条)

  • stanley
    stanley 2016-04-05 22:46

    18期小伙伴的文章简直要逆天呀,赞 !已置顶