在Sakura VPS上搭建Apache+SSL环境(CentOS6.5+Apache+RapidSSL)
在樱花的VPS上安装RapidSSL证书 [樱花SSL]在nginx上安装RapidSSL证书
总结
必要なもの該当ふぃある説明秘密鍵server.key
SSL証明書server.crt
中間証明書rapidssl-chain.crt
SSL証明書server.crt
中間証明書rapidssl-chain.crt
安装Apache和SSL
安装Apache
yum install httpd
mod_ssl的安装
yum install mod_ssl
制定企业社会责任计划
为了发行服务器证书,需创建CSR(证书签名请求)。
CSR是基于私钥创建的。
生成私钥
# cd /etc/pki/tls/certs/
# openssl genrsa -des3 -out server.key 2048
Generating RSA private key, 2048 bit long modulus
...............................+++
.................................................
.................................................
................+++
e is 65537 (0x10001)
Enter pass phrase for server.key: (←パスフレーズを入力)
Verifying - Enter pass phrase for server.key: (←パスフレーズを再入力)
创建CSR
需要在设定中确保领域名称是正确的。
由于无法使用Sakura VPS的默认域名,所以需要获取自己的独立域名。
# openssl req -new -key server.key -out server.csr
Enter pass phrase for server.key:(←秘密鍵のパスフレーズを入力)
You are about to be asked to enter information that will be incorporated
into 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 blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:JP (←国名)
State or Province Name (full name) :Osaka (←都道府県)
Locality Name (eg, city) [Default City]:Osaka-shi (←市区町村)
Organization Name (eg, company) [Default Company Ltd]: example.info (←組織名)
※個人運営なのでドメイン名にしています(何でも良い)
Organizational Unit Name (eg, section) : (←部署名)
Common Name (eg, your name or your server's hostname) :www.example.info (←ドメイン名)
Email Address :webmaster@example.info (←メールアドレス)
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password : (←空Enter)
An optional company name : (←空Enter)
核实CSR的内容。检查Subject行是否正确,并确保Public-Key行是2048位的。
# openssl req -text -noout -in server.csr
Certificate Request:
Data:
Version: 0 (0x0)
Subject: C=JP, ST=Osaka, L=Osaka-shi, O=example.info, CN=www.example.info/emailAddress=webmaster@example.info
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
Public-Key: (2048 bit)
Modulus:
(略)
Exponent: 65537 (0x10001)
Attributes:
(略)
Signature Algorithm: sha1WithRSAEncryption
(略)
申请和购买SSL证书和中间证书,以及对服务器进行设置。
以后将介绍在樱花购买Rapid SSL的示例。
购买SSL证书
从Sakura的SSL购买Rapid SSL。
在购买时要求输入CSR,因此将刚刚创建的server.csr的内容复制粘贴。
请贴上BEGIN行和END行。
-----BEGIN CERTIFICATE-----
(略)
-----END CERTIFICATE-----
一旦收到邮件,购买就完成了。
验证操作
下载认证文件并上传到Web服务器。
每分钟发出对认证文件的请求,通过返回认证文件来完成认证。
下載認證文件
从会员菜单中,选择“契约信息”,再选择“确认契约服务”,打开“SSL RapidSSL”的“服务器证书”。
点击“下载认证文件”,下载认证文件。
将文件上传到 Web 服务器
将下载的认证文件直接放置在Web服务器的根目录(/var/www/html)。
每隔一分钟,会有请求到达根目录的认证文件,并返回认证结果,从而完成认证。
这些请求可以通过访问日志进行确认。
下载服务器证书并安装到服务器上。
因為先前的「認證文件下載」已經改成了「伺服器證書下載」,所以要進行下載。
用文本打开服务器证书,并贴到服务器上。
# vim /etc/pki/tls/certs/server.crt
-----BEGIN CERTIFICATE-----
(略)
-----END CERTIFICATE-----
另外,由于每次重新启动Apache时都会要求确认,因此需要删除密码短语响应。
# openssl rsa -in server.key -out server.key
Enter pass phrase for server.key: (←秘密鍵のパスフレーズ入力)
writing RSA key
获取中间CA证书并安装到服务器中。
收到一封名为「GeoTrust SSL服务器证书的发行通知」的邮件,请打开邮件中段的「GeoTrust RapidSSL」。
确认使用SHA-2,并粘贴到服务器上。
# vim /etc/pki/tls/certs/rapidssl-chain.crt
-----BEGIN CERTIFICATE-----
(略)
-----END CERTIFICATE-----
更改/确认设置
修改Apache设置
# vim /etc/httpd/conf.d/ssl.conf
~以下を編集~
DocumentRoot "/var/www/html"
ServerName www.example.info:443(←自分の環境のドメイン名を書く)
SSLProtocol all -SSLv2 -SSLv3
SSLCertificateFile /etc/pki/tls/certs/server.crt
SSLCertificateKeyFile /etc/pki/tls/certs/server.key
SSLCertificateChainFile /etc/pki/tls/certs/rapidssl-chain.crt
重新启动Apache。
# service httpd configtest
Syntax OK
# service httpd restart
httpd を停止中: [ OK ]
httpd を起動中: [ OK ]
确认
在浏览器中使用https进行访问并确认。