|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
欢迎大家来到仓酷云论坛!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教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们! |
|