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: 点击"高级" → "继续前往"
或者将证书导入到浏览器的受信任根证书颁发机构
相关推荐
小僧景贤1 小时前
嵌入式网络协议 | MQTT、CoAP与HTTP协议深度解析(原理、差异、工程选型、代码实操)
mqtt·http·物联网协议·coap·网络协议选型
CDN3603 小时前
360CDN发布HTTP/3(QUIC)弱网加速方案:实测首屏提速40%,彻底终结移动端接口超时与频繁断连
网络·网络协议·http
SWAGGY..3 小时前
【C++ 初阶】:(12)深入理解C++ stack:容器适配器、底层容器与算法实战
网络·网络协议·rpc
我星期八休息4 小时前
Linux—五种IO模型与非阻塞IO
linux·运维·服务器·网络·数据库·网络协议
oooo_z4 小时前
WebSocket实时行情推送API实战:用iTick搭一个盯盘小工具
网络·websocket·网络协议
翼龙云_cloud5 小时前
阿里云国际版代理商:OSS自定义域名绑定与HTTPS配置排障教程
数据库·阿里云·https·云计算
Loongproxy5 小时前
2026年动态IP代理真实可用率怎么横评?爬虫选代理的关键是什么
服务器·网络·网络协议·tcp/ip
Mortalbreeze6 小时前
深入理解 TCP 协议(二):TCP 可靠传输与高效通信机制详解
linux·服务器·网络·网络协议·tcp/ip
2401_868534786 小时前
企业信息安全建设
linux·网络协议·beautifulsoup
一条泥憨鱼1 天前
【从0开始学习计算机网络】| DNS -记录类型详解
计算机网络·http·github·域名·dns·记录