在CentOS上配置Apache SSL涉及几个步骤,包括安装必要的软件包、生成SSL证书和密钥、配置Apache以使用这些证书和密钥。以下是一个详细的步骤指南:
首先,确保你的系统是最新的,并安装Apache和SSL相关的软件包。
sudo yum update -y
sudo yum install -y httpd mod_ssl openssl
你可以选择使用自签名证书或从受信任的证书颁发机构(CA)获取证书。这里我们使用自签名证书作为示例。
sudo openssl genrsa -out /etc/pki/tls/private/yourdomain.com.key 2048
sudo openssl req -new -key /etc/pki/tls/private/yourdomain.com.key -out /etc/pki/tls/certs/yourdomain.com.csr
在提示时输入相关信息,如国家、州、城市、组织名称等。
sudo openssl x509 -req -days 365 -in /etc/pki/tls/certs/yourdomain.com.csr -signkey /etc/pki/tls/private/yourdomain.com.key -out /etc/pki/tls/certs/yourdomain.com.crt
编辑Apache的SSL配置文件 /etc/httpd/conf.d/ssl.conf
。
sudo vi /etc/httpd/conf.d/ssl.conf
找到以下部分并进行相应的配置:
确保以下行没有被注释掉:
Listen 443
找到以下行并进行相应的配置:
SSLCertificateFile /etc/pki/tls/certs/yourdomain.com.crt
SSLCertificateKeyFile /etc/pki/tls/private/yourdomain.com.key
如果你有中间CA证书,可以添加以下行:
SSLCACertificateFile /etc/pki/tls/certs/intermediate.crt
编辑Apache的默认虚拟主机配置文件 /etc/httpd/conf/httpd.conf
或创建一个新的虚拟主机配置文件。
sudo vi /etc/httpd/conf/httpd.conf
添加或修改以下内容:
<VirtualHost *:443>
ServerName yourdomain.com
DocumentRoot /var/www/html
SSLEngine on
SSLCertificateFile /etc/pki/tls/certs/yourdomain.com.crt
SSLCertificateKeyFile /etc/pki/tls/private/yourdomain.com.key
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog /var/log/httpd/yourdomain.com-error_log
CustomLog /var/log/httpd/yourdomain.com-access_log combined
</VirtualHost>
保存所有更改后,重启Apache服务以应用新的配置。
sudo systemctl restart httpd
打开浏览器并访问 https://yourdomain.com
,你应该能够看到一个安全连接(通常显示一个锁图标)。你也可以使用以下命令检查SSL配置:
sudo openssl s_client -connect yourdomain.com:443
这将显示SSL连接的详细信息,包括证书链。
通过以上步骤,你应该能够在CentOS上成功配置Apache SSL。
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>