centos ca证书?Oracle证书
大家好,关于centos ca证书很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于Oracle证书的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!
如何在CentOS7.x上生成自签名SSL证书
在CentOS 7.x环境中设置HTTPS安全连接时,自签名SSL证书是不可或缺的工具,尤其适用于测试和内部环境。以下是详细的生成步骤:
1.安装OpenSSL:首先确保你的系统已安装OpenSSL,这是实现SSL和TLS协议的重要组件。
2.生成带密码私钥:创建一个密码保护的私钥文件,以增强私钥的安全性。输入密码(如“123456”)进行生成。
3.私钥去密码保护:当需要特定配置时,可以移除密码保护,输入先前设定的密码。
4.创建自签名证书:使用生成的私钥,创建自签名证书文件,填写相关证书信息,如国家、城市等,按需操作。
5.生成证书签名请求:为了可能的第三方签发,可创建一个证书签名请求(CSR)。
6.生成完整签名证书:如果需要CA签发,按照指示生成带有CA签名的证书。
7.导出PFX格式证书: PFX格式便于导入导出,可通过命令生成,密码可留空。
8.转换证书格式:将PFX证书转换为PEM格式,方便使用。
完成以上步骤后,你已经在CentOS 7.x上成功创建了自签名SSL证书,适用于本地测试或内部网络的加密通信。但在生产环境中,推荐使用受信任的CA签发的证书以确保最高安全级别。
如有对GPT4.0的需求,请参考相关教程。
【CA】关于ca-certificates
# yum-y install ca-certificates
# yum info ca-certificates
# rpm-ql ca-certificates
# rpm-ql ca-certificates| grep"crt"
tls-ca-bundle.pem内各个证书的头尾格式:
BEGIN CERTIFICATE& END CERTIFICATE
ca-bundle.trust.crt内各个证书的头尾格式:
BEGIN TRUSTED CERTIFICATE& END TRUSTED CERTIFICATE
/etc/pki/tls/certs/ca-bundle.crt文件存储了各大证书颁发证的根证书交叉文件。
curl访问https网站时,会比对这个文件里的根证书。如果这个文件过老,那就是有新的根证书未加入到这个文件里,导致curl无法正常访问https网站。
所以,你要么更新这个包(文件),要么可以选择手动添加证书进去,当然,你可以使用 curl -k 跳过证书验证。
更新最新证书:
对CentOS7.x而言,手动添加证书信任:
获取服务端证书 X.crt
# cp X.crt /etc/pki/ca-trust/source/anchors/
# update-ca-trust
# cat/etc/pki/ca-trust/README
# man update-ca-trust> update-ca-trust.txt
SSL Certificate Verification
Managing TLS and trusted CA certificates
SSL and SSL Certificates Explained For Beginners
Adding trusted root certificates to the server
How to add Certificate Authority file in CentOS 7
CentOS下生成自签名的证书的方法详解
1.生成自签名的证书
通常要配置https的服务器,都需要一个由正式的CA机构认证的X509证书。当客户端连接https服务器时,会通过CA的共钥来检查这个证书的正确性。但要获得CA的证书是一件很麻烦的事情,而且还要花费一定的费用。因此通常一些小的机构会是使用自签名的证书。也就是自己做CA,给自己的服务器证书签名。
这个过程有两个主要的步骤,首先是生成自己的CA证书,然后再生成各个服务器的证书并为它们签名。我是用OpenSSL来生成自签名证书的。
第一步是制作CA的证书:
opensslgenrsa-des3-outmy-ca.key2048
opensslreq-new-x509-days3650-keymy-ca.key-outmy-ca.crt
这会生成my-ca.key和my-ca.crt文件,前者存放着使用my-ca.crt制作签名时必须的密钥,应当妥善保管。而后者是可以公开的。上面的命令为my-ca.key设定的有效期为10年。
用命令
opensslx509-inmy-ca.crt-text-noout
可以查看my-ca.crt文件的内容。
有了CA证书之后,就可以为自己的服务器生成证书了:
opensslgenrsa-des3-outmars-server.key1024
opensslreq-new-keymars-server.key-outmars-server.csr
opensslx509-req-inmars-server.csr-outmars-server.crt-sha1-CAmy-ca.crt-CAkeymy-ca.key-CAcreateserial-days3650
前两个命令会生成key、csr文件,最后一个命令则通过my-ca.crt为mars-server.csr制作了x509的签名证书。
需要注意的是,在执行上述第二个命令时,CommonName选项应当输入的是服务器的域名,否则在用户通过https协议访问时每次都会有额外的提示信息。
用命令
opensslx509-inmars-server.crt-text-noout
可以查看mars-server.crt文件的内容。
2.配置Apache服务器
首先,创建/etc/apache2/ssl目录,将刚刚制作的my-ca.crt、mars-server.key和mars-server.crt文件拷贝到这个目录中。
接着执行命令
a2emodssl
激活Apache的SSL模块,然后在/etc/apache2/sites-enable/中添加虚拟主机,这个过程与添加普通的虚拟主机类似,不同点在于该主机的端口应为443。配置如下:
NameVirtualHost*:443
ServerNamelocalhost
DocumentRoot/var/www
SSLEngineOn
SSLCipherSuiteHIGH:MEDIUM
SSLProtocolall-SSLv2
SSLCertificateFile/etc/apache2/ssl/mars-server.crt
SSLCertificateKeyFile/etc/apache2/ssl/mars-server.key
SSLCACertificateFile/etc/apache2/ssl/my-ca.crt
var/www>
Orderdeny,allow
Allowfromlocalhost
ServerNamelocalhost
DocumentRoot/var/www
var/www>Orderdeny,allow
Allowfromlocalhost
以上配置保证了用户在访问443和80端口时可以看到相同的内容,而仅仅是使用的协议不同。修改好配置后,便可以重启Apache服务器,这时需要输入mars-server.key的密码。用浏览器访问
这时应当看到一个弹出对话框,让你确认是否信任该站点的证书,选择信任后,便可以查看该站点的内容了。
由于大多数Apache服务器都是在服务器启动时自动启动,为了避免在启动Apache时输入密码,可以用以下命令生成不加密的mars-server.key文件:
opensslrsa-inmars-server.key-outmars-server.key.insecure
用新生成的mars-server.key.insecure代替原有的key文件即可。