Ubuntu系统下Apache配置SSL证书的详细步骤
Ubuntu 上如何配置 Apache SSL 证书一 准备环境并安装组件先更新 Ubuntu 系统,并安装 Apache 与 SSL 支持模块:sudo apt updatesudo apt install apache2 libapache2-mod-ssl启用 Apache 的 SSL 模块:
Ubuntu 上如何配置 Apache SSL 证书

一 准备环境并安装组件
- 先更新 Ubuntu 系统,并安装 Apache 与 SSL 支持模块:
- sudo apt update
- sudo apt install apache2 libapache2-mod-ssl
- 启用 Apache 的 SSL 模块:
- sudo a2enmod ssl
- 放行防火墙端口(如果使用 UFW):
- sudo ufw allow 80,443/tcp 或 sudo ufw allow ‘Apache Full’
- 说明:启用 SSL 模块后,通常会自动开放 443 端口;如果没有生效,可检查 /etc/apache2/ports.conf 中是否包含 Listen 443。
二 准备 SSL 证书文件
- 方案 A 使用 CA 机构签发的正式证书(推荐生产环境使用)
- 常见证书文件包括:域名证书 public.crt / domain.crt、私钥 domain.key、中间证书链 chain.crt / fullchain.pem。
- 建议统一存放证书文件,并设置安全权限:
- sudo mkdir -p /etc/apache2/ssl
- sudo cp YourDomainName_public.crt YourDomainName_chain.crt YourDomainName.key /etc/apache2/ssl
- sudo chmod 600 /etc/apache2/ssl/*.key
- 方案 B 使用自签名 SSL 证书(仅适合测试环境)
- 生成一个有效期为 365 天的自签名证书:
- sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048
-keyout /etc/ssl/private/apache-selfsigned.key
-out /etc/ssl/certs/apache-selfsigned.crt
- sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048
- 生成一个有效期为 365 天的自签名证书:
- 提示:有些证书服务商会将证书和证书链合并为 fullchain.pem,这种情况下通常只需要配置 SSLCertificateFile 和 SSLCertificateKeyFile。
三 配置 Apache 启用 HTTPS
- 编辑 Apache 的 SSL 虚拟主机配置(常见做法有两种,可任选其一)
- 使用默认 SSL 站点配置:
- sudo nano /etc/apache2/sites-a vailable/default-ssl.conf
- 在
中确认包含以下内容: - ServerName your.domain
- SSLEngine on
- SSLCertificateFile /etc/apache2/ssl/YourDomainName_public.crt
- SSLCertificateKeyFile /etc/apache2/ssl/YourDomainName.key
- SSLCertificateChainFile /etc/apache2/ssl/YourDomainName_chain.crt
- 启用该站点配置:
- sudo a2ensite default-ssl.conf
- 或自行创建站点配置(/etc/apache2/sites-a vailable/example.com.conf):
- 在
中设置 DocumentRoot、ServerName、SSLEngine on 以及上述证书文件路径 - 启用站点:
- sudo a2ensite example.com.conf
- 在
- 使用默认 SSL 站点配置:
- 确认 Apache 正在监听 443 端口:
- 检查 /etc/apache2/ports.conf 中是否包含:Listen 80 和 Listen 443
- 可选安全优化(可在 mods-a vailable/ssl.conf 或对应 VirtualHost 中配置)
- SSLProtocol all -SSLv2 -SSLv3
- SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:MEDIUM
- SSLHonorCipherOrder on
- SSLSessionCache shmcb:${APACHE_RUN_DIR}/ssl_scache(512000)
- SSLSessionCacheTimeout 300
- 让配置立即生效:
- sudo systemctl reload apache2 或 sudo systemctl restart apache2
四、强制HTTP跳转HTTPS(可选)
- 启用 URL 重写模块:
- sudo a2enmod rewrite
- 在端口 80 的虚拟主机配置中(如 000-default.conf)加入:
- RewriteEngine on
- RewriteCond %{HTTPS} off
- RewriteRule ^(.*)$ https://%{HTTP_HOST}$1 [L,R=301]
- 或者在 .htaccess 中配置(需 AllowOverride All):
- RewriteEngine on
- RewriteCond %{SERVER_PORT} !^443$
- RewriteRule ^.* https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
- 应用配置变更:
- sudo systemctl reload apache2
五 验证配置并排查问题
- 访问测试:
- 在浏览器中打开 https://your.domain,确认地址栏是否显示安全锁标志;如果使用的是自签名证书,浏览器提示不受信任属于正常现象,仅建议在测试环境中使用。
- 检查证书路径:
- 确认 SSL 证书、私钥和证书链文件路径与 Apache 配置一致,同时确保私钥权限为 600。
- 检查端口和模块状态:
- 确认 443 端口已经监听(ss -tlnp | grep :443),并且 mod_ssl 模块已启用(a2enmod ssl)。
- 查看日志排错:
- 检查错误日志:tail -f /var/log/apache2/error.log
- 自动化申请证书方式(Let’s Encrypt):
- 安装 Certbot:sudo apt install certbot python3-certbot-apache
- 一键申请并自动配置 HTTPS:sudo certbot --apache(会自动修改虚拟主机配置并启用跳转)。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
VMware安装Ubuntu完整教程:创建虚拟机与启动验证
本教程详细演示如何在VMware中创建Ubuntu虚拟机,涵盖ISO挂载、硬件配置、安装向导及启动验证。通过清晰的步骤与验证命令,帮助新手快速搭建可用的Linux学习环境。
Win10专业版U盘安装教程:制作启动盘与完整安装步骤
本文提供Win10专业版U盘安装完整流程:准备8GB以上U盘与官方镜像,制作启动盘并核对盘符;通过F12 F11 Esc等快捷键或BIOS设置U盘为第一启动项;安装时选择专业版并谨慎分区;完成后在“设置—系统—关于”验证版本与激活状态。操作前务必备份数据。
Windows10系统字体太小怎么调大
Windows10系统字体太小怎么调大?只需两步:首先打开设置中的显示选项,将缩放比例调整为125%或150%;随后运行ClearType文本调谐器优化字体清晰度。此方法适用于高分屏及普通屏幕,无需修改注册表即可解决界面拥挤问题。
Win10磁盘占用100%基础排查:从监控到清理的完整步骤
Windows 10系统出现磁盘占用100%会导致电脑卡顿、程序响应缓慢。本文提供基础排查方案:首先通过任务管理器确认是否为磁盘高负载,随后进入系统存储页面分析C盘占用类别,最后针对性清理临时文件。遵循此流程可有效缓解磁盘压力,避免盲目重装系统。
Windows10系统怎么显示此电脑和控制面板
Windows10默认可能不显示桌面图标,导致找不到“此电脑”和“控制面板”。只需进入个性化设置,在“桌面图标设置”中勾选对应选项即可恢复。本文提供详细图文步骤,帮助快速找回系统入口。
相关攻略
2026-09-01 16:50
2026-09-01 16:50
2026-08-27 15:46
2026-08-27 15:45
2026-08-27 15:45
2026-08-27 15:45
2026-08-27 15:44
2026-08-27 15:44
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程

