Linux之加密及CA证书

简介:

加密方法的种类主要分为三种:单向加密,非对称加密,对称加密。

单向加密:不是加密,而是提取数据特征码,主要用于验证数据的完整性。

非对称加密:非对称加密也称公钥加密,密钥成对出现。主要用于密钥交换和数字签名、身份验证等。

对称加密:由于加密方和解密方使用同一对密钥所以称为对称加密。

常见算法

md5:Message Degist,128bit

  sda1:Secure Hash Algorithm 1,160bit

  AESAdvanced data Encryption Standard

CACACertificate Authorty的缩成,是数字证书认证中心的简称,是指发放、管理、废除数字证书的机构。CAPKI的核心组成部分。

数字证书:数字证书是一个经证书授权中心数字签名的包含公开密钥拥有者信息以及公开密钥的文件。最简单的证书包含一个公开的密钥、名称以及证书授权中心的数字签名。

PKIPKI是创建、颁发、管理、注销公钥证书所涉及到的所有软件、硬件的集合体。其核心元素是数字证书,核心执行者是CA认证机构。

ssltslssl(Secure Sockets Layer安全套接层)tslTransport Layer Security)是在传输层对网络连接进行加密的,为数据安全提供安全支持。

ssl协议提供的服务主要有:

1)认证用户和服务器,确保数据发送到正确的客户机和服务器;2)加密数据以防止数据中途被窃取;

3)维护数据的完整性,确保数据在传输过程中不被改变。

opensslopenssl是一种多用加密解密工具,OpenSSL提供的功能相当强大和全面,囊括了主要的密码算法、常用的密钥和证书封装管理功能以及SSL协议,并提供了丰富的应用程序供测试或其它目的使用。

opessl的常用工具

 passwd生成密码串

  openssl passwd -1(说明以md5加密) -salt 127888 

 enc:说明openssl是加密还是解密的

      openssl enc -des3(加密为des3-salt -a(ascii) -in(表示在那个文件读入) inittab -out(输出) inintab.des3

              -d 解密

    speed :测试openssl各种加密速度

    basc64表示发送邮件时加密

    echo -n "ddff" | openssl basc64   

    openss1 genrsa -out key.mageedu 1024(位长生成私钥

    rsa  提取密钥

    -pubout提取公钥

    openssl rsa -in key.j -pubout -out kyss.j   

   (umask 077;openss1 genrsa -out key.mageedu 1024)生成一个权限为600的私钥

     openssl md5 单向加密

创建私有CA并实现数字证书签署的过程

  现在我们有两台主机AB其中A机的IP172.16.200.1

B机的IP172.16.200.17

  在这里我们把A机作为一个服务器,B机作为客户端来进行证书的签署。主要步骤如下

配置服务器A

1. 服务器A要先创建一个私有CA即给自己签发一个CA

CA服务器的配置文件的修改步骤如下:

1.1:编辑openssl的配置文件/etc/pki/tls/opessl.cnf

找到下图中的地方更改为dir=/etc/pki/CA

2、创建CA需要的目录和文件

   #mkdir certs newcerts crl

   #touch serial index.txt

   #echo 01 > serial (十六进制从01开始)

3、自荐证书 (生成密钥对),客户端来验证

  3.1生成密钥

# cd /etc/pki/CA

#(umask 077;openss1 genrsa -out private/cakey.pem 2048)

3.2自鉴证书

# openss1 req -x509 -new -keyprivate/cakey.pem -out cacert.pem –days  365

3.3查看证书内容

#openssl x509 -noout –in /private/cakey.pem -text

配置客户端B,也就是证书申请方

我们这里提供ftp服务需要的证书。

1、 ftp服务生成密钥并发起证书申请

1.1创建vsftpd目录并进入创建所需文件

 #mkdir vsftpd

 #cd vsftpd

#mkdir certs (存放证书信息)

#cd certs

1.2生成密钥

#(umask 077l;openss1 genrsa 1024 > vsftpd.key )

1.3发起证书申请

#openss1 req -new -key vsftpd.key -out vsftpd.csr

2、 将证书请求传递个CA服务器

#scp vsftpd.csr root@172.16.200.1:/tmp 表示把证书发送到服务器的tmp目录下。

3、 CA签署证书(在CA服务器上操作,也就是在主机A上进行操作。

#cd /tmp

#openss1 ca -in vsftpd.csr -out vsftpd.crt –days  365

4、 证书签署完成后传递给客户端

#scp vsftpd.csr root@172.16.200.17:/etc/vsftpd/ssl

 表示把证书发送到客户端/etc/vsftpd/ssl的目录下

本文转自  沐木小布丁  51CTO博客,原文链接:http://blog.51cto.com/sxhxt/907928

相关文章
|
25天前
|
Linux 数据安全/隐私保护 Windows
aes加密在linux下会生成随机key的解决办法
aes加密在linux下会生成随机key的解决办法
14 2
|
28天前
|
JSON Kubernetes Linux
Linux环境签发CA证书和K8s需要的证书
Linux环境签发CA证书和K8s需要的证书
29 0
|
1月前
|
Linux 网络安全 数据安全/隐私保护
Linux vsFTPd服务详解——文件加密传输配置
Linux vsFTPd服务详解——文件加密传输配置
144 2
|
5月前
|
算法 Linux 网络安全
Centos7 Linux系统下生成https的crt和key证书
Centos7 Linux系统下生成https的crt和key证书
194 0
|
4月前
|
Kubernetes Shell Linux
linux|shell脚本|有趣的知识---格式化输出日志和脚本调试方法以及kubernetes集群核心服务重启和集群证书备份脚本
linux|shell脚本|有趣的知识---格式化输出日志和脚本调试方法以及kubernetes集群核心服务重启和集群证书备份脚本
63 0
|
2月前
|
存储 Linux 网络安全
如何在 Linux 中删除 SSL 证书和 SSH 密码?
如何在 Linux 中删除 SSL 证书和 SSH 密码?
85 1
如何在 Linux 中删除 SSL 证书和 SSH 密码?
|
2月前
|
Linux
本地下载使用证书登陆的linux服务器的文件的命令
本地下载使用证书登陆的linux服务器的文件的命令
|
3月前
|
算法 Linux API
一文聊聊Linux Kernel的加密子系统【Crypto Subsystem】
一文聊聊Linux Kernel的加密子系统【Crypto Subsystem】
98 1
|
4月前
|
Linux Shell 数据安全/隐私保护
Linux执行脚本加密
Linux执行脚本加密
50 0
|
5月前
|
安全 数据安全/隐私保护
使用openssl 模拟ca进行证书的申请和颁发,并使用证书部署网站的安全连接访问,即https的加密通信
使用openssl 模拟ca进行证书的申请和颁发,并使用证书部署网站的安全连接访问,即https的加密通信
46 0