1.首先要生成服务器端的私钥(key文件):
openssl genrsa -des3 -out server.key 1024
运行时会提示输入密码,此密码用于加密key文件
去除key文件口令的命令:
openssl rsa -in server.key -out server.key
2.openssl req -new -key server.key -out server.csr -config openssl.cnf
生成Certificate Signing Request(CSR),生成的csr文件交给CA签名后形成服务端自己的证书.屏幕上将有提示,依照其指示一步一步输入要求的个人信息即可.
3.对客户端也作同样的命令生成key及csr文件:
openssl genrsa -des3 -out client.key 1024
openssl req -new -key client.key -out client.csr -config openssl.cnf
4.CSR文件必须有CA的签名才可形成证书.可将此文件发送到verisign等地方由它验证.自己生成:
openssl req -new -x509 -keyout ca.key -out ca.crt -config openssl.cnf
5.用生成的CA的证书为刚才生成的server.csr,client.csr文件签名:
Openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key -config openssl.cnf
Openssl ca -in client.csr -out client.crt -cert ca.crt -keyfile ca.key -config openssl.cnf
注意: 此时会出错:Using configuration from /usr/share/ssl/openssl.cnf I am unable to access the ./demoCA/newcerts directory ./demoCA/newcerts: No such file or directory
解决方法: 1).mkdir -p ./demoCA/newcerts
2).touch demoCA/index.txt
3).touch demoCA/serial
4).echo 01 > demoCA/serial
6.合并证书文件(crt)和私钥文件(key)
1).cat client.crt client.key > client.pem
2).cat server.crt server.key > server.pem
7.合并成pfx证书
1).openssl pkcs12 -export -clcerts -in client.crt -inkey client.key -out client.p12
2).openssl pkcs12 -export -clcerts -in server.crt -inkey server.key -out server.p12
8.文本化证书
1).openssl pkcs12 -in client.p12 -out client.txt
2).openssl pkcs12 -in server.p12 -out server.txt
9.屏幕模式显式:(证书、私钥、公钥)
1).openssl x509 -in client.crt -noout -text -modulus
2).openssl rsa -in server.key -noout -text -modulus
3).openssl rsa -in server.pub -noout -text -modulus
10.得到DH
1).openssl dhparam -out dh1024.pem 1024
(8) 编辑apache的配置文件httpd.conf
开启: LoadModule ssl_module modules/mod_ssl.so
去掉以下语句的注释, Include conf/extra/httpd-ssl.conf
# Secure (SSL/TLS) connections
Include conf/extra/httpd-ssl.conf
#
(9) 编辑 conf/extra/httpd-ssl.conf
<VirtualHost *:443>
SSLEngine On
SSLCertificateFile conf/ssl/server.crt
SSLCertificateKeyFile conf/ssl/server.key
SSLCertificateChainFile conf/ssl/ca.crt
</VirtualHost>
cd /usr/local/apache/conf
openssl genrsa -des3 -out server.key 1024
openssl req -new -key server.key -out server.csr -config /usr/local/ssl/openssl.cnf
openssl req -new -x509 -keyout ca.key -out ca.crt -config /usr/local/ssl/openssl.cnf
mkdir -p ./demoCA/newcerts
touch demoCA/index.txt
touch demoCA/serial
echo 01 > demoCA/serial
openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key -config /usr/local/ssl/openssl.cnf
bin/apachectl start
分享到:
相关推荐
**OpenSSL生成的ssl证书** 在互联网安全领域,SSL(Secure Socket Layer)证书是保障网站数据传输安全的重要工具。OpenSSL是一个开源的库,包含了各种加密算法,它提供了生成SSL证书的功能。本教程将详细介绍如何...
【openssl生成证书】知识点详解 在IT领域,OpenSSL是一个强大的安全套接字层密码库,包含各种主要的密码算法、常用的密钥和证书封装管理功能以及SSL协议,并提供丰富的应用程序用于测试或其他目的。生成证书是网络...
"openSSL生成证书以及在tomcat下的配置" openSSL是目前最流行的开源加密库之一,它提供了安全的数据传输和认证机制。在Web应用程序中,openSSL广泛应用于生成数字证书和私钥,从而确保数据的安全传输。今天,我们将...
2. 生成CA的证书(crt):使用OpenSSL的req命令可以生成CA的证书文件。命令格式如下: ``` openssl req -new -x509 -key server.key -out ca.crt -days 3650 ``` 执行上述命令后,系统会要求输入国家、地区、...
在这个“openssl生成的证书demo”中,我们将探讨如何使用OpenSSL生成证书、证书签名请求(CSR)以及自签名的根证书权威(CA),并理解这些组件在安全通信中的作用。 首先,我们来了解什么是证书。在SSL/TLS协议中,...
在IT行业中,理解和使用OpenSSL生成证书是至关重要的,特别是对于网络服务器配置和安全通信。 "OpenSSL 一键生成证书"项目是针对OpenSSL进行的二次开发,旨在简化证书创建过程。通常,生成SSL/TLS证书需要一系列...
Java调用OpenSSL生成证书是一种常见的安全操作,用于创建数字证书,这些证书在网络安全中扮演着重要角色,例如HTTPS通信、服务器身份验证等。在这个过程中,我们通常会使用OpenSSL命令行工具,然后通过Java程序来...
openSSL证书生成及Tomcat配置 本文将详细介绍openSSL证书生成和在Tomcat上的配置。首先,我们将学习openSSL的基本概念和命令,然后逐步生成服务器端和客户端的证书文件,并介绍如何使用CA证书签名这些证书文件。...
本资源提供的是在Windows环境下使用openssl和keytool这两个工具来生成HTTPS证书的详细教程。下面将详细介绍这两个工具以及如何使用它们生成证书。 1. **openssl** OpenSSL是一款开源的SSL/TLS库,它包含了一系列...
本文将详细阐述如何利用OpenSSL生成CA证书以及相关的证书文件。 首先,我们需要理解证书的用途。在互联网通信中,证书用于验证服务器或客户端的身份,确保数据在传输过程中不被篡改。它们由证书签名请求(CSR)生成...
Java 生成证书包括 OpenSSL Java 生成证书是指通过 Java 的 keytool 工具和 OpenSSL 库生成数字证书的过程。在 HTTPS 环境下,证书是必不可少的组件, play a crucial role in ensuring the security and ...
在IT行业中,安全通信是至关重要的,而OpenSSL是一个强大的安全工具套件,它提供了用于创建和管理公钥基础设施(PKI)的核心功能,包括证书的生成、签名、验证等。本文将深入探讨如何在Linux环境下使用OpenSSL命令来...
根据提供的文档信息,本文将详细解释如何通过OpenSSL生成安全证书并在WebLogic环境中进行SSL配置与验证的过程。本文档分为几个部分:安装OpenSSL、创建证书、WebLogic环境的SSL配置,以及HTTPS验证。 ### 一、安装...
最简单的方法,直接用java里的keytool工具生成一个keystore文件,然后直接用这个文件启用https就可以了。 方法如下: 命令行执行%JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA 执行过程中会询问你一些...
在本文中,我们将深入探讨如何使用OpenSSL生成公钥和私钥。 ### 公钥和私钥基础 在加密领域,公钥和私钥是基于非对称加密技术的核心概念。非对称加密允许用户拥有两个密钥:一个公钥和一个私钥。公钥可以公开分享...
标题提到的"linux-用于快速为本地开发环境生成HTTPS证书的一组脚本",旨在帮助开发者在自己的本地环境中轻松创建安全的HTTPS连接。这通常是为了在开发和测试阶段模拟真实生产环境,确保应用在部署时能够正确处理加密...
生成HTTPS证书的过程通常包括以下步骤: 1. **生成RSA密钥对**:使用OpenSSL工具,我们可以运行`openssl genrsa -out server.key 2048`来生成一个2048位的RSA私钥。这个私钥应妥善保管,不要泄露。 2. **创建CSR...
Java基于command调用openssl生成私钥证书 Java是一种广泛使用的编程语言,而openssl是一种加密工具。今天,我们将介绍如何使用Java基于command调用openssl生成私钥证书。 什么是私钥证书? 私钥证书是一种数字...
文章中使用了openssl生成的根证书和服务器证书构成了证书链。 知识点八:加密和解密的概念 加密和解密是指对数据进行加密和解密的过程。文章中使用了openssl和nginx实现了加密和解密。 知识点九:SSL/TLS协议的...