在CentOS配置Apache的HTTPS服务

在这篇文章中,我们将介绍如何生成和部署自签名证书,使得HTTP服务更换为HTTPS服务,保证数据的安全性。

1、准备工作

(1)CentOS已经安装Apache Web服务器。

(2)使用OpenSSL生成自签名证书。如果尚未安装OpenSSL,它可以使用yum来安装。

yum install mod_ssl openssl

2、生成自签名证书

(1)生成2048位的加密私钥

openssl genrsa -out test.key 2048
(2)生成证书签名请求csr

openssl req -new -key test.key -out test.csr
(3)生成类型为X509的自签名证书

openssl x509 -req -days 365 -in test.csr -signkey test.key -out test.crt
3、配置Apache Web服务器

(1)将证书复制到相应文件目录下

cp test.crt /etc/pki/tls/certs/
cp test.key /etc/pki/tls/private/
cp test.csr /etc/pki/tls/private/
(2) 修改配置文件 /etc/httpd/conf.d/ssl.conf

# 修改下面参数
SSLCertificateFile /etc/pki/tls/certs/test.crt
SSLCertificateKeyFile /etc/pki/tls/private/test.key
#如果使用的是认证官方证书,可能需要修改下面参数;自签名证书忽略这个参数即可
SSLCertificateChainFile /etc/pki/tls/certs/example.com.ca-bundle
(3)重启httpd服务,使更新配置生效

<span style="font-size:24px;">service httpd restart</span>

4、调整虚拟主机

Apache Web服务器可以配置为多个Web站点。这些站点在httpd的配置文件中以虚拟主机的形式定义。例如,让我们假设我们的Apache Web服务器托管站点为www.example.com,网站所有的文件都保存在/var/www/html/virtual-web目录。对于虚拟主机,典型的HTTP配置/etc/httpd/conf/httpd.conf。

NameVirtualHost *:80

<VirtualHost *:80>
    ServerAdmin email@example.com
    DocumentRoot /var/www/html/virtual-web
    ServerName www.example.com
</VirtualHost>
修改后

NameVirtualHost *:443

<VirtualHost *:443>
    SSLEngine on
    SSLCertificateFile /etc/pki/tls/certs/test.crt
    SSLCertificateKeyFile /etc/pki/tls/private/test.key
    <Directory /var/www/html/virtual-web>
        AllowOverride All
    </Directory>
    ServerAdmin email@example.com
DocumentRoot /var/www/html/virtual-web
ServerName www.example.com
</VirtualHost>
5、强制Apache Web服务器始终使用https
由于安全需求,Web服务器仅使用HTTPS,需要将所有HTTP请求(端口80)重定向到HTTPS(端口443)。 Apache Web服务器可以容易地做到这一点。

(1)强迫主站使用 /etc/httpd/conf/httpd.conf

ServerName www.example.com:80
Redirect permanent / https://www.example.com
(2)强迫虚拟主机使用

<VirtualHost *:80>
    ServerName www.example.com
    Redirect permanent / https://www.example.com/
</VirtualHost>



  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值