再现理想 发表于 2015-1-14 20:45:12

CentOS教程之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
<VirtualHost*: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
<Directory/var/www>
Orderdeny,allow
Allowfromlocalhost


</Directory>


</VirtualHost>


<VirtualHost*:80>


ServerNamelocalhost


DocumentRoot/var/www


<Directory/var/www>Orderdeny,allow


Allowfromlocalhost


</Directory>


</VirtualHost>
以上设置装备摆设包管了用户在拜访443和80端口时可以看到雷同的内容,而仅仅是应用的协定分歧。修正好设置装备摆设后,即可以重启Apache办事器,这时候须要输出mars-server.key的暗码。用阅读器拜访


https://localhost/
这时候应该看到一个弹出对话框,让你确认能否信赖该站点的证书,选择信赖后,即可以检查该站点的内容了。


因为年夜多半Apache办事器都是在办事器启动时主动启动,为了不在启动Apache时输出暗码,可以用以下敕令生成不加密的mars-server.key文件:


opensslrsa-inmars-server.key-outmars-server.key.insecure
用重生成的mars-server.key.insecure取代原本的key文件便可。

如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们!

若天明 发表于 2015-1-16 22:12:23

CentOS教程之CentOS下生成自签名的证书

老实说,第一个程序是在C中编译好的,调试好了才在Linux下运行,感觉用vi比较麻烦,因为有错了不能调试,只是提示错误。

再现理想 发表于 2015-1-23 11:02:42

学习Linux应具备的。[书籍+网络资源]

admin 发表于 2015-1-31 18:46:37

随着Linux技术的更加成熟、完善,其应用领域和市场份额继续快速增大。目前,其主要应用领域是服务器系统和嵌入式系统。然而,它的足迹已遍布各个行业,几乎无处不在。

深爱那片海 发表于 2015-2-7 00:52:57

应对Linux的发展历史和特点有所了解,Linux是抢占式多任务多用户操作系统,Linux最大的优点在于其作为服务器的强大功能,同时支持多种应用程序及开发工具。

金色的骷髅 发表于 2015-2-19 09:43:04

任何人都可以根据自己的喜好来定制适合自己的操作系统,Linux?是抢占式多任务多用户操作系统.

小魔女 发表于 2015-3-6 15:08:44

通过一条缓慢的调制解调器线路,它也能操纵几千公里以外的远程系统。

谁可相欹 发表于 2015-3-20 12:38:48

了解Linux的网络安全,系统的安全,用户的安全等。安全对于每位用户,管理员来说是非常重要的。
页: [1]
查看完整版本: CentOS教程之CentOS下生成自签名的证书