bugzilla生成证书并配置 HTTPS访问

配置步骤与示例

  1. 设置基础 URL (urlbase和 sslbase)
    这是最重要的配置,直接影响所有链接和重定向功能。
bash 复制代码
urlbase(普通访问地址): http://172.16.104.225/(根据您的服务器 IP)
sslbase(加密访问地址): https://172.16.104.225/(如果您配置了 SSL 证书)
  1. 启用 SSL 重定向
    如果您已配置 HTTPS 并希望强制使用安全连接:

先正确设置 sslbase为 HTTPS 地址

然后勾选 ssl_redirect​ 复选框

bash 复制代码
保存后,访问 http://您的地址将自动跳转到 https://您的地址
  1. 保存配置
    完成修改后,滚动到页面底部,点击 "保存更改"(或类似按钮)使配置生效。
    💡 配置验证与注意事项

验证配置:保存后,在浏览器中访问您设置的 urlbase地址,确保能正常打开 Bugzilla 首页。

HTTPS 前置要求:启用 ssl_redirect前,请确认您已在 Web 服务器(如 Apache)上正确配置 SSL 证书。

路径一致性:确保 urlbase和 sslbase的路径部分完全一致(如都包含 /bugzilla/)。

1.1 首先生成自签名证书

bash 复制代码
# 创建证书存放目录
sudo mkdir -p /etc/ssl/private
sudo mkdir -p /etc/ssl/certs

# 生成自签名证书(所有提示直接按回车即可)
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
    -keyout /etc/ssl/private/bugzilla-selfsigned.key \
    -out /etc/ssl/certs/bugzilla-selfsigned.crt

# 设置正确的文件权限
sudo chmod 600 /etc/ssl/private/bugzilla-selfsigned.key
bash 复制代码
生成证书时会出现一些提示,可以这样填写:
Country Name (2 letter code) [XX]: CN
State or Province Name (full name) []: Beijing
Locality Name (eg, city) [Default City]: Beijing
Organization Name (eg, company) [Default Company Ltd]: YourCompany
Organizational Unit Name (eg, section) []: IT
Common Name (eg, your name or server's hostname) []: 17.16.104.225​ (重要:这里填您的IP地址)
Email Address []: admin@yourcompany.com (邮件地址)

1.2. 验证证书是否生成成功

检查证书文件是否已创建:

bash 复制代码
ls -la /etc/ssl/certs/bugzilla-selfsigned.crt
ls -la /etc/ssl/private/bugzilla-selfsigned.key

应该能看到类似这样的输出:

bash 复制代码
-rw-r--r-- 1 root root 1234 Dec 25 17:20 /etc/ssl/certs/bugzilla-selfsigned.crt
-rw------- 1 root root 5678 Dec 25 17:20 /etc/ssl/private/bugzilla-selfsigned.key

1.3配置 Apache SSL 虚拟主机

1.3.1编辑配置文件

bash 复制代码
sudo vi /etc/httpd/conf.d/bugzilla.conf

1.3.2修改配置:

bash 复制代码
# HTTP 自动重定向到 HTTPS
<VirtualHost *:80>
    ServerName 172.16.104.225
    DocumentRoot /var/www/html
    Redirect permanent /bugzilla/ https://172.16.104.225/bugzilla/
</VirtualHost>

# HTTPS 虚拟主机配置
<VirtualHost *:443>
    ServerName 172.16.104.225
    DocumentRoot /var/www/html

    # 添加别名映射 - 这是关键修改!
    Alias /bugzilla/ "/var/www/html/bugzilla/"

    # SSL 配置
    SSLEngine on
    SSLCertificateFile /etc/ssl/certs/bugzilla-selfsigned.crt
    SSLCertificateKeyFile /etc/ssl/private/bugzilla-selfsigned.key

    <Directory "/var/www/html/bugzilla">
        AddHandler cgi-script .cgi
        Options +ExecCGI +FollowSymLinks
        DirectoryIndex index.cgi index.html
        Options -Indexes
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog /var/log/httpd/bugzilla_ssl_error.log
    CustomLog /var/log/httpd/bugzilla_ssl_access.log combined
</VirtualHost>

1.3.3测试配置语法:

bash 复制代码
sudo httpd -t
#应该显示 Syntax OK

1.3.4重启Apache:

bash 复制代码
sudo systemctl restart httpd
sudo systemctl status httpd

1.3.5检查443端口状态

bash 复制代码
# 检查防火墙是否开放443端口
sudo firewall-cmd --list-all | grep https

# 如果未开放,添加443端口
sudo firewall-cmd --add-port=443/tcp --permanent
sudo firewall-cmd --reload

# 检查端口监听状态
sudo netstat -tlnp | grep :443

1.4. 解决浏览器安全警告

由于使用的是自签名证书,浏览器会显示"不安全"警告。这是正常的,您可以:

bash 复制代码
Chrome/Firefox: 点击"高级" → "继续前往"
或者将证书导入到浏览器的受信任根证书颁发机构
相关推荐
霜落长河4 天前
抛弃TCP改用UDP,HTTP3怎么了?
http
程序员mine5 天前
HTTPS-TLS加密与证书完全指南(中)
网络协议·https·ssl
之歆5 天前
现代 HTTP 客户端深度解析:Fetch 与 Axios
chrome·网络协议·http
酉鬼女又兒5 天前
零基础入门计算机网络运输层:端到端通信核心作用、端口号分类规则、复用分用工作机制及UDP与TCP协议全方位对比详解
网络·网络协议·tcp/ip·计算机网络·考研·udp·php
dog2505 天前
不要再继续优化 TCP
网络协议·tcp/ip·php
程序员mine5 天前
HTTPS-TLS加密与证书完全指南(上)
网络协议·https
VidDown5 天前
视频帧率技术详解:从 24fps 到 120fps,帧率如何影响你的观看体验?
网络·网络协议·编辑器·音视频·视频编解码·视频
程序员mine5 天前
HTTPS-TLS加密与证书完全指南(下)
网络协议·http·https
Cc_Debugger5 天前
开发环境使用https配置
javascript·vue.js·https
hbugs0015 天前
EVE-NG V7常用网络协议流量洞察Filter
网络·网络协议