CentOS HTTPd与HTTPS配置指南

CentOS简介
CentOS(Community Enterprise Operating System)是一个基于Red Hat Enterprise Linux的免费开源操作系统,它为用户提供了一个稳定、可靠、安全的运行环境,本文将详细介绍如何在CentOS上配置HTTPd和HTTPS服务。
安装HTTPd
安装Apache HTTPd
打开终端,输入以下命令安装Apache HTTPd:
sudo yum install httpd
启动HTTPd服务
安装完成后,启动HTTPd服务:
sudo systemctl start httpd
设置HTTPd服务开机自启
将HTTPd服务设置为开机自启:
sudo systemctl enable httpd
测试HTTPd服务
在浏览器中输入服务器IP地址,如果成功显示Apache HTTPd欢迎页面,则说明HTTPd服务配置成功。
配置HTTPS
安装SSL证书

需要获取一个SSL证书,这里以Let's Encrypt为例,使用Certbot工具获取免费证书。
sudo yum install certbot python2-certbot-apache
自动获取证书
在终端运行以下命令,自动获取证书并配置Apache HTTPd:
sudo certbot --apache
根据提示完成以下步骤:
- 输入域名
- 选择SSL证书的用途(Web服务器)
- 输入管理员邮箱
- 接受证书协议
验证证书
在浏览器中输入服务器IP地址,如果成功显示带有绿色锁的网页,则说明HTTPS配置成功。
优化配置
修改默认端口
默认情况下,HTTPd服务运行在80端口,HTTPS服务运行在443端口,为了提高安全性,可以将HTTPd服务运行在非标准端口上。
编辑/etc/httpd/conf/httpd.conf文件,找到以下行:
Listen 80
将其修改为:
Listen 8080
编辑/etc/httpd/conf.d/ssl.conf文件,找到以下行:
Listen 443
将其修改为:

Listen 8443
设置SSL证书有效期
默认情况下,Let's Encrypt颁发的SSL证书有效期为90天,为了方便管理,可以将证书有效期设置为1年。
编辑/etc/httpd/conf.d/ssl.conf文件,找到以下行:
SSLCertificateLifetime 90d
将其修改为:
SSLCertificateLifetime 365d
FAQs
Q1:如何查看HTTPd和HTTPS服务的状态?
A1:使用以下命令查看HTTPd服务状态:
sudo systemctl status httpd
使用以下命令查看HTTPS服务状态:
sudo systemctl status firewalld
Q2:如何手动安装SSL证书?
A2:手动安装SSL证书需要以下步骤:
- 获取SSL证书文件(cert.pem和key.pem)
- 将证书文件复制到
/etc/httpd/ssl/目录下 - 编辑
/etc/httpd/conf.d/ssl.conf文件,添加以下内容:
SSLCertificateFile /etc/httpd/ssl/cert.pem SSLCertificateKeyFile /etc/httpd/ssl/key.pem
重启HTTPd服务
sudo systemctl restart httpd

