Linux下OpenSSL客户端中使用req命令来生成证书的教程
Linux下OpenSSL客户端中使用req命令来生成证书的教程作者:Gordon0918 字体:[增加减小] 来源:开源中文社区时间:04-22 11:56:58 我要评论这篇文章主要介绍了Linux下OpenSSL客户端中使用req命令来生成证书的教程,详细讲解了自动生成密钥和生成自签名证书的方法,需要的朋友可以参考下openssl req 用于生成证书请求,以让第三方权威机构CA来签发,生成我们需要的证书。
req 命令也可以调用x509命令,以进行格式转换及显示证书文件中的text,modulus等信息。
如果你还没有密钥对,req命令可以一统帮你生成密钥对和证书请求,也可以指定是否对私钥文件进行加密。
1、密钥、证书请求、证书概要说明在证书申请签发过程中,客户端涉及到密钥、证书请求、证书这几个概念,初学者可能会搞不清楚三者的关系,网上有的根据后缀名来区分三者,更让人一头雾水。
我们以申请证书的流程说明三者的关系。
客户端(相对于CA)在申请证书的时候,大体上有三个步骤:第一步:生成客户端的密钥,即客户端的公私钥对,且要保证私钥只有客户端自己拥有。
第二步:以客户端的密钥和客户端自身的信息(国家、机构、域名、邮箱等)为输入,生成证书请求文件。
其中客户端的公钥和客户端信息是明文保存在证书请求文件中的,而客户端私钥的作用是对客户端公钥及客户端信息做签名,自身是不包含在证书请求中的。
然后把证书请求文件发送给CA机构。
第三步:CA机构接收到客户端的证书请求文件后,首先校验其签名,然后审核客户端的信息,最后CA机构使用自己的私钥为证书请求文件签名,生成证书文件,下发给客户端。
此证书就是客户端的身份证,来表明用户的身份。
至此客户端申请证书流程结束,其中涉及到证书签发机构CA,CA是被绝对信任的机构。
如果把客户端证书比作用户身份证,那么CA就是颁发身份证的机构,我们以https为例说明证书的用处。
为了数据传输安全,越来越多的网站启用https。
在https握手阶段,服务器首先把自己的证书发送给用户(浏览器),浏览器查看证书中的发证机构,然后在机器内置的证书中(在PC或者手机上,内置了世界上著名的CA机构的证书)查找对应CA证书,然后使用内置的证书公钥校验服务器的证书真伪。
如果校验失败,浏览器会提示服务器证书有问题,询问用户是否继续。
例如12306网站,它使用的自签名的证书,所以浏览器会提示证书有问题,在12306的网站上有提示下载安装根证书,其用户就是把自己的根证书安装到用户机器的内置证书中,这样浏览器就不会报证书错误。
但是注意,除非特别相信某个机构,否则不要在机器上随便导入证书,很危险。
2、req指令说明上一节我们看到了申请证书流程,生成密钥对我们已经知道,那么如何生成证书请求呢,req指令就该上场了,我们可以查看req的man手册,如下:openssl req [-inform PEM|DER] [-outform PEM|DER] [-in filename] [-passin arg] [-out filename] [-passout arg] [-text] [-pubkey] [-noout] [-verify] [-modulus] [-new] [-rand file(s)] [-newkey rsa:bits][-newkey alg:file] [-nodes] [-key filename] [-keyform PEM|DER] [-keyout filename] [-keygen_engine id] [-[digest]] [-config filename] [-subj arg] [-multivalue-rdn] [-x509] [-days n] [-set_serial n][-asn1-kludge] [-no-asn1-kludge] [-newhdr] [-extensions section] [-reqexts section] [-utf8] [-nameopt] [-reqopt] [-subject] [-subj arg] [-batch] [-verbose] [-engine id]发现其参数多而复杂,还有许多没有用到过的参数。
但是在实际应用中我们使用到的参数很有限,我们根据req的基本功能来学习。
req的基本功能主要有两个:生成证书请求和生成自签名证书。
其他还有一些校验、查看请求文件等功能,示例会简单说明下。
参数说明如下[new/x509]当使用-new选取的时候,说明是要生成证书请求,当使用x509选项的时候,说明是要生成自签名证书。
[key/newkey/keyout]key和newkey是互斥的,key是指定已有的密钥文件,而newkey是指在生成证书请求或者自签名证书的时候自动生成密钥,然后生成的密钥名称有keyout参数指定。
当指定newkey选项时,后面指定rsa:bits说明产生rsa密钥,位数由bits 指定。
指定dsa:file说明产生dsa密钥,file是指生成dsa密钥的参数文件(由dsaparam生成)[in/out/inform/outform/keyform]in选项指定证书请求文件,当查看证书请求内容或者生成自签名证书的时候使用out选项指定证书请求或者自签名证书文件名,或者公钥文件名(当使用pubkey选项时用到),以及其他一些输出信息。
inform、outform、keyform分别指定了in、out、key选项指定的文件格式,默认是PEM格式。
[config]参数文件,默认是/etc/ssl/f(ubuntu12.04),根据系统不同位置不同。
该文件包含生成req时的参数,当在命令行没有指定时,则采用该文件中的默认值。
除上述主要参数外,还有许多其他的参数,不在一一叙述,有兴趣的读者可以查看req的man手册3、req指令使用实例(1)使用已有私钥生成证书请求使用原有的RSA密钥生成证书请求文件,输入主体相关信息:Locality Name (eg, city) []:BJOrganization Name (eg, company) [Internet Widgits Pty Ltd]:BJ Organizational Unit Name (eg, section) []:BJCommon Name (e.g. server FQDN or YOUR name) []:BJEmail Address []:BJPlease enter the following 'extra' attributesto be sent with your certificate requestA challenge password []:12345An optional company name []:BJ......使用原有的RSA密钥生成证书请求文件,指定-batch选项,主体信息从配置文件读取:$ openssl req -new -key RSA.pem -passin pass:123456 -out client.pem -subj /C=AU/ST=Some-State/O=Internet -pubkey 可以看到公钥和请求信息:(2)自动生成密钥,生成证书请求文件自动生成1024位RSA密钥,并生成证书请求文件:writing new private key to 'RSA.pem'Enter PEM pass phrase:Verifying - Enter PEM pass phrase:......自动生成1024位RSA密钥,并生成证书请求文件,指定-nodes文件,密钥文件不加密:$ openssl req -new -newkey dsa:DSA.param -out client.pem -keyout DSA.pem -batch -nodesGenerating a 1024 bit DSA private keywriting new private key to 'DSA.pem'......(3)生成自签名证书生成自签名证书,与req参数一样,只需要把req修改为x509即可:06:d1:96:bb:c8:42:ec:ef:26:73:4e:3b:2d:fa:0f:16:c2:25:30:1b:a5:ca:35:bd:9b:dd:4b:41:d4:8b:95:3a:d4:7c:aa:8d: 0d:2d:e7:f3:95:33:d2:4a:5a:7f:a2:5d:cc:48:60:9f:ca:2d:77:d9:ed:e9:09:f3:a1:18:96:1d:91:c6:1c:2b:7a:c1:d6:5d: 81:87:25:0d:32:6a:55:d2:89:95:c5:32:44:cc:9d:e7:68:6f: d8:80(4)查看证书请求内容生成证书请求:Certificate Request:Data:Version: 0 (0x0)Subject: C=AU, ST=Some-State, O=Internet Widgits Pty Ltd Subject Public Key Info:Public Key Algorithm: rsaEncryptionPublic-Key: (1024 bit)Modulus:...Exponent: 65537 (0x10001)Attributes:Requested Extensions:X509v3 Basic Constraints:CA:FALSEX509v3 Key Usage:Digital Signature, Non Repudiation, Key EnciphermentSignature Algorithm: sha1WithRSAEncryption...subject=/C=AU/ST=Some-State/O=Internet Widgits Pty Ltd(5)校验证书请求文件指定verify指令,校验证书请求文件,其操作时提取请求文件中的公钥来验证签名信息:4、生成证书步骤小结Step 1. Create key (password protected)代码如下:openssl genrsa -des3 -out prvtkey.pem 1024/2048 (password protected)这个命令会生成一个1024/2048位的密钥。
Step 2. Create certification request这个命令将会生成一个证书请求,当然,用到了前面生成的密钥prvtkey.pem文件这里将生成一个新的文件cert.csr,即一个证书请求文件,你可以拿着这个文件去数字证书颁发机构(即CA)申请一个数字证书。
Linux系统利用OpenSSL生成SSL证书
Linux上使用OpenSSL生成SSL证书Linux上使用OpenSSL生成SSL证书1 安装OpenSSL2 生成私钥文件(KEY)3 生成证书请求文件(CSR)4 生成自签名证书(CRT)5 配置服务器1 安装OpenSSL在终端输入以下命令来检查是否已安装OpenSSL:openssl version如果已安装,则可以看到OpenSSL的版本号。
如果未安装,需要根据所使用的Linux发行版进行安装,例如:Debian/Ubuntu:sudo apt-get install opensslCentOS/RHEL:sudo yum install openssl2 生成私钥文件(KEY)1. 执行以下命令生成一个私钥文件(例如private.key):openssl genrsa -out private.key 2048以上示例将生成一个2048位的RSA私钥。
3 生成证书请求文件(CSR)1. 执行以下命令生成一个证书请求文件(例如server.csr):openssl req -new-key private.key -out server.csr2. 在生成CSR的过程中,需要提供一些证书信息,例如:常用名称、国家、email、组织名称等,详细信息如下:You are about to be asked to enter information that will be incorporatedinto your certificate request.What you are about to enter is what is called a Distinguished Name or a DN.There are quite a few fields but you can leave some blankFor some fields there will be a default value,If you enter '.', the field will be left blank.-----Country Name (2 letter code) [XX]:cnState or Province Name (full name) []:bjLocality Name (eg, city) [Default City]:bjOrganization Name (eg, company) [Default Company Ltd]:bjOrganizational Unit Name (eg, section) []:bj4 生成自签名证书(CRT )1.以上示例将生成一个有效期为365天的自签名证书,将使用私钥文件来签名证书请求文件,可以根据需要调整证书的有效期5 配置服务器将生成的私钥文件和证书文件配置到Nginx 或Apache 等服务器上即可使用。
Linux下利用openssl 生成SSL证书步骤
Linux下利用openssl 生成SSL证书步骤1、概念首先要有一个CA根证书,然后用CA根证书来签发用户证书。
用户进行证书申请:一般先生成一个私钥,然后用私钥生成证书请求(证书请求里应含有公钥信息),再利用证书服务器的CA根证书来签发证书。
2、后缀详解.key格式:私有的密钥.csr格式:证书签名请求(证书请求文件),含有公钥信息,certificate signing request 的缩写.crt格式:证书文件,certificate的缩写.crl格式:证书吊销列表,Certificate Revocation List的缩写.pem格式:用于导出,导入证书时候的证书的格式,有证书开头,结尾的格式3、添加 index.txt 和 serial 文件cd /etc/pki/CA/touch /etc/pki/CA/index.txttouch /etc/pki/CA/serialecho 01 > /etc/pki/CA/serial4、CA根证书的生成4.1 生成CA私钥(.key)openssl genrsa -out ca.key 2048[root@CA]# openssl genrsa -out ca.key 2048Generating RSA private key, 2048 bit long modulus.............+++.....+++e is 65537 (0x10001)4.2 生成CA证书请求(.csr)openssl req -new -key ca.key -out ca.csr[root@CA]# openssl req -new -key ca.key -out ca.csrYou are about to be asked to enter information that will be incorporatedinto your certificate request.What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blankFor some fields there will be a default value,If you enter '.', the field will be left blank.-----Country Name (2 letter code) [XX]:USState or Province Name (full name) []:ORLocality Name (eg, city) [Default City]:OROrganization Name (eg, company) [Default Company Ltd]:LXOROrganizational Unit Name (eg, section) []:LXORAQCommon Name (eg, your name or your server's hostname) []:Email Address []:eg@Please enter the following 'extra' attributesto be sent with your certificate requestA challenge password []:demon2234An optional company name []:OR4.3 自签名得到根证书(.crt)(CA给自已颁发的证书)openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt[root@CA]# openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt Signature oksubject=/C=US/ST=OR/L=OR/O=LXOR/OU=LXORAQ/CN=/emailAddress=eg@ Getting Private key5、用户证书的生成5.1 生成私钥(.key)openssl genrsa -des3 -out server.key 1024[root@CA]# openssl genrsa -des3 -out server.key 1024Generating RSA private key, 1024 bit long modulus........++++++...................++++++e is 65537 (0x10001)Enter pass phrase for server.key:Verifying - Enter pass phrase for server.key:5.2 生成证书请求(.csr)openssl req -new -key server.key -out server.csr[root@CA]# openssl req -new -key server.key -out server.csrEnter pass phrase for server.key:You are about to be asked to enter information that will be incorporatedinto your certificate request.What you are about to enter is what is called a Distinguished Name or a DN. There are quite a few fields but you can leave some blankFor some fields there will be a default value,If you enter '.', the field will be left blank.-----Country Name (2 letter code) [XX]:USState or Province Name (full name) []:ORLocality Name (eg, city) [Default City]:OROrganization Name (eg, company) [Default Company Ltd]:LXOROrganizational Unit Name (eg, section) []:LXORAQCommon Name (eg, your name or your server's hostname) []:Email Address []:eg@Please enter the following 'extra' attributesto be sent with your certificate requestA challenge password []:demon2234An optional company name []:OR5.3 用CA根证书签名得到证书(.crt)o penssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key[root@CA]# openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key Using configuration from /etc/pki/tls/fCheck that the request matches the signatureSignature okCertificate Details:Serial Number: 3 (0x3)ValidityNot Before: Mar 13 07:01:44 2018 GMTNot After : Mar 13 07:01:44 2019 GMTSubject:countryName = USstateOrProvinceName = ORorganizationName = LXORorganizationalUnitName = LXORAQcommonName = emailAddress = eg@X509v3 extensions:X509v3 Basic Constraints:CA:FALSENetscape Comment:OpenSSL Generated CertificateX509v3 Subject Key Identifier:11:62:12:26:6C:1C:56:CD:9D:B2:6A:65:06:24:57:27:3E:5C:BC:EAX509v3 Authority Key Identifier:DirName:/C=US/ST=OR/L=OR/O=LXOR/OU=LXORAQ/CN=/emailAddress=eg@ serial:C9:6E:10:F7:A5:40:8F:1DCertificate is to be certified until Mar 13 07:01:44 2019 GMT (365 days)Sign the certificate? [y/n]:yfailed to update database//错误提示,解决方法将/etc/pki/CA目录下的index.txt文件删除,重TXT_DB error number 2新创建一个index.txt文件。
用OpenSSL命令行生成证书文件
用OpenSSL命令行生成证书文件证书文件生成也许很多人和本人一样深有体会,使用OpenSSL库写一个加密通讯过程,代码很容易就写出来了,可是整个工作却花了了好几天。
除将程序编译成功外(没有可以使用的证书文件,编译成功了,它并不能跑起来,并不表示它能正常使用,所以......),还需生成必要的证书和私钥文件使双方能够成功验证对方。
找了n多的资料,很多是说的很模糊,看了n多的英文资料,还是没有办法(不知道是不是外国朋友都比较厉害,不用说明得太清?),无意间找到yawl(yawl@)写的文章,难得的汉字(呵呵)。
里面有生成证书部分,说到生成了Certificate Signing Request (CSR)文件后,就有点不太清楚了。
后面生成自签字证书在很多地方都可以找到的,签名这部分,yawl说mod_ssl有比较好的脚本,但是笔者一时找不到,就自己用openssl的ca命令来完成了,也不是很麻烦。
说说本人的操作环境:无盘工作站(有权限问题使用起来不太方便),操作目录是openssl/bin(没办法改不了环境变量,如果你可以改的话,就不用在这个目录下工作了),为了方便本人把apps下的f 也复制到了这个目录下来。
文件名都是以本人使用的来说了:1.首先要生成服务器端的私钥(key文件):openssl genrsa -des3 -out server.key 1024运行时会提示输入密码,此密码用于加密key文件(参数des3便是指加密算法,当然也可以选用其他你认为安全的算法.),以后每当需读取此文件(通过openssl提供的命令或API)都需输入口令.如果觉得不方便,也可以去除这个口令,但一定要采取其他的保护措施!去除key文件口令的命令:openssl rsa -in server.key -out server.key2.生成Certificate Signing Request(CSR)openssl req -new -key server.key -out server.csr -config f生成Certificate Signing Request(CSR),生成的csr文件交给CA签名后形成服务端自己的证书.屏幕上将有提示,依照其指示一步一步输入要求的个人信息即可.3.对客户端也作同样的命令生成key及csr文件:openssl genrsa -des3 -out client.key 1024openssl req -new -key client.key -out client.csr -config f4.CSR文件必须有CA的签名才可形成证书.可将此文件发送到verisign等地方由它验证,要交一大笔钱,何不自己做CA呢.openssl req -new -x509 -keyout ca.key -out ca.crt -config f5.用生成的CA的证书为刚才生成的server.csr,client.csr文件签名:Openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key -config fOpenssl ca -in client.csr -out client.crt -cert ca.crt -keyfile ca.key -config f现在我们所需的全部文件便生成了.另:client使用的文件有:ca.crt,client.crt,client.keyserver使用的文件有:ca.crt,server.crt,server.key.crt文件和.key可以合到一个文件里面,本人把2个文件合成了一个.pem文件(直接拷贝过去就行了)。
linux 创建证书
linux 创建证书要在Linux上创建证书,通常可以使用OpenSSL工具。
以下是创建证书的基本步骤:1. 生成私钥:首先,使用OpenSSL生成一个私钥文件。
你可以选择RSA、ECDSA 或Ed25519等算法来生成私钥。
以下是一个生成RSA私钥的示例命令:```shellopenssl genrsa -out private_key.pem 2048```这将生成一个名为`private_key.pem`的私钥文件,使用2048位RSA算法。
2. 创建证书签名请求(CSR):使用私钥文件创建一个证书签名请求(CSR)。
以下是一个示例命令:```shellopenssl req -new -key private_key.pem -out certificate_request.csr```这将打开一个交互式界面,要求你输入一些信息,如国家、组织、常用名等。
输入所需信息后,将生成一个名为`certificate_request.csr`的CSR文件。
3. 获取证书签名:将CSR文件提交给证书颁发机构(CA)或自签名以获取证书签名。
如果你使用自签名,可以使用以下命令自己签名:```shellopenssl x509 -req -in certificate_request.csr -signkey private_key.pem -out certificate.pem```这将使用私钥文件对CSR文件进行签名,生成一个名为`certificate.pem`的证书文件。
4. 验证证书:为了验证证书的有效性,你可以使用以下命令:```shellopenssl verify -CAfile certificate.pem certificate.pem```如果证书有效,将显示“OK”。
以上是在Linux上创建证书的基本步骤。
请注意,这只是一种简单的方法,实际创建证书的过程可能更加复杂,具体取决于你的需求和所使用的证书类型。
openssl做证书的方法 -回复
openssl做证书的方法-回复OpenSSL 是一个开源的软件包,可用于创建安全套接字层(SSL)和传输层安全性(TLS)协议的证书。
证书是用于身份验证和数据加密的数字文件。
下面将一步一步介绍OpenSSL 的使用方法来生成证书。
第一步:安装OpenSSL首先,您需要安装OpenSSL 软件包。
根据您的操作系统,可以在OpenSSL 官方网站(OpenSSL 在您的系统上可用。
第二步:生成私钥要生成证书,首先需要生成一个私钥。
私钥用于生成和验证证书,因此它必须严格保密。
您可以使用以下命令在命令行中生成私钥:openssl genpkey -algorithm RSA -out private.key此命令将使用RSA 算法生成一个私钥,并将其保存在private.key 文件中。
确保将文件保存在安全的位置,并为其设置适当的权限,以防止未经授权访问。
第三步:生成证书请求生成了私钥后,接下来需要生成证书请求。
证书请求包含您的公钥以及有关您身份的信息。
以下命令将生成证书请求:openssl req -new -key private.key -out certificate.csr在此命令中,-key 参数指定您的私钥文件,-out 参数指定将保存证书请求的文件名。
您将被要求输入与您身份相关的信息,如名称、单位、电子邮件地址等。
确保在输入这些信息时提供准确的数据。
第四步:自签名证书生成证书请求后,您可以使用OpenSSL 生成一个自签名证书。
自签名证书是由您自己颁发的,因此在一些特定情况下可能不被所有设备或应用程序接受。
但它在测试和开发环境中非常有用。
以下命令将生成自签名证书:openssl x509 -req -in certificate.csr -signkey private.key -out certificate.crt此命令使用您之前生成的私钥和证书请求来创建一个自签名证书。
最后的证书将保存在certificate.crt 文件中。
linux生成证书 证书内容
linux生成证书证书内容
在Linux上生成证书可以使用OpenSSL工具。
下面是一个例子来生成一个自签名的SSL证书:
1. 打开终端窗口。
2. 运行以下命令创建一个自签名的根证书私钥(private key)和证书请求(certificate request)文件:
```shell
openssl req -newkey rsa:2048 -nodes -keyout root.key -out root.csr
```
在运行该命令后,你需要提供一些信息,如国家代码、组织名称、Common Name(通用名称,一般为域名)等。
在这个例子中,我们使用默认值。
这将会生成一个名为"root.key"的私钥文件和一个名为"root.csr"的证书请求文件。
3. 接下来,使用以下命令创建一个自签名的根证书:
```shell
openssl x509 -req -in root.csr -signkey root.key -out root.crt
```
这将会生成一个名为"root.crt"的根证书文件。
通过这些步骤,你将在当前目录下生成了一个自签名的根证书文件(root.crt)以及相关的私钥文件(root.key)和证书请求文件(root.csr)。
请注意,这些证书是自签名的,因此在实际使用时可能会被浏览器或其他软件识别为不受信任的证书。
linux生成ad域申请证书
linux生成ad域申请证书要在Linux系统上生成 Active Directory(AD)域的证书,你可以使用OpenSSL工具来创建自签名证书或向证书颁发机构(CA)申请证书。
以下是生成AD域证书的一般步骤:1. 安装OpenSSL,首先,确保你的Linux系统上已经安装了OpenSSL工具。
如果没有安装,可以使用系统的包管理工具来安装。
2. 生成私钥:使用以下命令在Linux上生成一个新的私钥文件:openssl genrsa -out ad_domain.key 2048。
3. 生成证书签名请求(CSR),使用私钥文件生成证书签名请求文件(CSR),这将用于向证书颁发机构申请证书。
openssl req -new -key ad_domain.key -outad_domain.csr.4. 填写CSR信息,生成CSR文件后,系统将提示你输入一些信息,如国家、州、城市、组织、组织单位、通用名等。
确保填写正确的信息。
5. 提交CSR文件,将生成的CSR文件提交给证书颁发机构,如果你使用自签名证书,则可以跳过这一步。
6. 自签名证书(可选):如果你选择自签名证书,可以使用以下命令生成自签名证书:openssl x509 -req -in ad_domain.csr -signkeyad_domain.key -out ad_domain.crt.7. 配置AD域,最后,将生成的证书文件配置到AD域中,具体配置步骤取决于你的AD域环境和使用的工具。
请注意,以上步骤中涉及到的文件名和信息都是示例,你需要根据实际情况进行相应的替换和填写。
另外,如果你的组织要求使用CA颁发的证书,你需要按照CA的要求来生成和提交CSR文件。
openssl制作证书流程
openssl制作证书流程OpenSSL是一个开源的加密工具包,可用于生成和管理数字证书。
下面是制作证书的基本流程:1. 安装OpenSSL:首先,确保计算机上已安装OpenSSL。
你可以从OpenSSL官方网站下载适合你操作系统的安装程序,并按照指示进行安装。
2. 创建私钥:使用以下命令在命令行中创建一个私钥文件:openssl genrsa -out private.key 2048这将生成一个2048位的RSA私钥,并将其保存在名为private.key的文件中。
私钥是保护证书的关键。
3. 生成证书请求(CSR):接下来,使用以下命令生成证书请求文件(CSR):openssl req -new -key private.key -out certificate.csr在执行此命令时,你需要提供一些相关的信息,如国家、组织名称等。
这些信息将包含在生成的CSR文件中。
4. 填写证书请求信息:执行上一步命令后,将会出现一系列问题,你需要根据实际情况回答。
其中最重要的是Common Name(通用名称),这是证书的域名。
请记住,如果你计划用于公共网站,确保输入的域名与你的网站域名完全匹配。
5. 签发证书:CSR文件是你向证书颁发机构(CA)申请证书的请求文件。
你需要将此文件上载到CA的网站或发送给CA。
该CA将根据你的请求和必要的身份验证程序签署并颁发证书。
6. 安装证书:一旦你收到证书文件,你可以通过以下命令将其与私钥文件合并:openssl pkcs12 -export -out certificate.pfx -inkey private.key -in certificate.crt -certfile ca.crt这将创建一个.pfx文件,其中包含你的私钥、证书和根CA证书。
通过以上步骤,你可以使用OpenSSL成功地制作证书。
请记住,在实际生产环境中,你可能需要购买商业证书,以确保其安全性和认可度。
linux中openssl生成证书和自签证书linux操作系统-电脑资料
linux中openssl生成证书和自签证书linux操作系统-电脑资料下面来给大家介绍关于linux中openssl生成证书和自签证书的例子,整个过程都讲述的非常详细有兴趣的朋友可进入参考,。
1.首先要生成服务器端的私钥(key文件):代码如下复制代码openssl genrsa -des3 -out server.key 1024运行时会提示输入密码,此密码用于加密key文件(参数des3便是指加密算法,当然也可以选用其他你认为安全的算法.),以后每当需读取此文件(通过openssl提供的命令或API)都需输入口令.如果觉得不方便,也可以去除这个口令,但一定要采取其他的保护措施!去除key文件口令的命令:代码如下复制代码openssl rsa -in server.key -out server.key2.openssl req -new -key server.key -out server.csr -config f生成Certificate Signing Request(CSR),生成的csr文件交给CA签名后形成服务端自己的证书.屏幕上将有提示,依照其指示一步一步输入要求的个人信息即可.3.对客户端也作同样的命令生成key及csr文件:代码如下复制代码openssl genrsa -des3 -out client.key 1024openssl req -new -key client.key -out client.csr -config f4.CSR文件必须有CA的签名才可形成证书.可将此文件发送到verisign等地方由它验证,要交一大笔钱,何不自己做CA呢.代码如下复制代码openssl req -new -x509 -keyout ca.key -out ca.crt -config f5.用生成的CA的证书为刚才生成的server.csr,client.csr文件签名:代码如下复制代码openssl ca -in server.csr -out server.crt -cert ca.crt -keyfile ca.key -config fopenssl ca -in client.csr -out client.crt -cert ca.crt -keyfile ca.key -config f现在我们所需的全部文件便生成了.另:client使用的文件有:ca.crt,client.crt,client.keyserver使用的文件有:ca.crt,server.crt,server.key.crt文件和.key可以合到一个文件里面,本人把2个文件合成了一个.pem文件(直接拷贝过去就行了)以下步骤非必须代码如下复制代码[root@station23 CA]# mkdir ./newcerts[root@station23 CA]# touch ./{serial,index.txt}[root@station23 CA]# echo "00" > serial如果忘记以上操作,CA在签证时会出现如下错误,解决方法如下:代码如下复制代码[root@station23 test]# openssl ca -in my.csr -out ldap.crtUsing configuration from /etc/pki/tls/fI am unable to access the /etc/pki/CA/newcerts directory/etc/pki/CA/newcerts: No such file or directory[root@station23 test]# mkdir /etc/pki/CA/newcerts[root@station23 test]# openssl ca -in my.csr -out ldap.crtUsing configuration from /etc/pki/tls/f/etc/pki/CA/index.txt: No such file or directoryunable to open '/etc/pki/CA/index.txt'23016:error:02001002:system library:fopen:No such file or directory:bss_file.c:352:fopen('/etc/pki/CA/index.txt','r') 23016:error:20074002:BIO routines:FILE_CTRL:systemlib:bss_file.c:354:[root@station23 test]# touch /etc/pki/CA/index.txt[root@station23 test]# openssl ca -in my.csr -out ldap.crtUsing configuration from /etc/pki/tls/f/etc/pki/CA/serial: No such file or directoryerror while loading serial number23031:error:02001002:system library:fopen:No such file or directory:bss_file.c:352:fopen('/etc/pki/CA/serial','r')23031:error:20074002:BIO routines:FILE_CTRL:system lib:bss_file.c:354:[root@station23 test]# touch /etc/pki/CA/serial[root@station23 test]# echo 00 > /etc/pki/CA/serial。
Linux下怎样使用OpenSSL生成SSL证书请求文件
-----BEGIN NEW CERTIFICATE REQUEST-----
MIIEhDCCA2wCAQAwgYAxCzAJBgNVBAYTAkNBMRAwDgYDVQQIDAdPbnRhcmlvMQ8w
DQYDVQQHDAZPdHRhd2ExFTATBgNVBAoMDEVudHJ1c3QgSW5jLjEZMBcGA1UECwwQ
Q2VydGlmaWNhdGUgRGVwLjEcMBoGA1UEAwwTaWlzN2NlcnQuZW50cnVzdC5jYTCC
.
.
.
OOqRZhp/bkDjEWW+OO1Z7hAnB1gcN4t1Q7TO3gZwyO9Yarv7gkPXCsCIMwJkhmzB
X4n6sJ5KGAUQj+Qx6VDeyTzG6w8hTvXH0ILxVb7LYg12vcrt2O3wKdBwRdcPNtLO
本文由:网站安全证书/整理
开启openssl给证书请求csr文件创建一私钥生成私钥命令
Linux下Biblioteka 样使用OpenSSL生成SSL证书请求文件
1.输入命令运行OpenSSL工具(如:/usr/local/ssl/bin O或usr/sfw/bin)
2.开启OpenSSL,给证书请求CSR文件创建一私钥,生成私钥命令:genrsa –out /.key –des3 2048
8nK2lCzuiMwL+cM8XJroaYCtr8A8mDHLCTQHy1y5PReZ2wYIChPWVwzzrhWo7XZ5
Vmcczl6amkU=
-----END NEW CERTIFICATE REQUEST-----
5.输入下列命令可查看CSR文件信息:req –noout –text –in /.csr
