yum install -y httpd)mod_sslmod_sslshell> yum list installed | grep mod_ssl
mod_sslshell> yum install -y mod_ssl
默认情况下,使用 yum 安装 mod_ssl 后,会自动生成默认的SSL配置(/etc/httpd/conf.d/ssl.conf)。
该SSL配置,配置了localhost域名。如果需要配置其它域名,那就往下看。
假定我的域名为mydomain.com,为该域名生成证书。
shell> mkdir -p /etc/httpd/cert.d
shell> cd /etc/httpd/cert.d/
shell> openssl genrsa -out com.mydomain.key 1024
shell> cd /etc/httpd/cert.d/
shell> openssl req -new -key com.mydomain.key -out com.mydomain.csr
com.mydomain.csr 发给权威机构进行签名。com.mydomain.crt,并移动到 /etc/httpd/cert.d/ 文件夹下。shell> cd /etc/httpd/cert.d/
shell> openssl req -new -x509 -key com.mydomain.key -out com.mydomain.crt -days 365
注1: 权威机构给的签名后的证书和自签名证书,对于后面的配置没有差异。
注2: 权威机构给的签名后的证书和自签名证书,差异在权威机构的CA受到信任(可商用),自签名证书的CA不受信任(可在开发/测试环境使用)。
shell> vim /etc/httpd/conf.d/com.mydomain.conf
com.mydomain.conf文件内容:
<VirtualHost *:80>
ServerName mydomain.com:80
VirtualHost>
<VirtualHost *:443>
ServerName mydomain.com:443
SSLEngine on
SSLCertificateFile /etc/httpd/cert.d/com.mydomain.crt
SSLCertificateKeyFile /etc/httpd/cert.d/com.mydomain.key
VirtualHost>
shell> httpd -t
shell> systemctl reload httpd