ubuntu24.04证书体系架构及证书有关配置文件、工具详细介绍
Ubuntu 24.04 LTS 证书体系架构及文件存储结构详细介绍
一、证书体系架构
Ubuntu 24.04 LTS 的证书体系以 系统信任库 为核心,结合 OpenSSL/GnuTLS 配置、APT 存储库签名验证和 AppArmor 安全策略,形成多层次的安全防护机制。
-  
系统信任库
- 路径:
/etc/ssl/certs/
该目录包含预装的根证书和中间证书,用于验证 TLS/SSL 连接(如 HTTPS 网站)。系统通过update-ca-certificates工具管理证书,支持从/usr/local/share/ca-certificates/自动加载用户或第三方证书。 - 配置文件:
/etc/ca-certificates.conf
定义哪些证书被信任,可通过修改此文件禁用特定证书。 
 - 路径:
 -  
OpenSSL 与 GnuTLS 配置
- OpenSSL: 
- 默认配置文件路径:
/etc/ssl/openssl.cnf
定义证书链验证规则、默认加密算法(如禁用 TLS 1.0/1.1,强制 RSA 密钥≥2048 位)。 - 关键参数:
[system_default_sect] MinProtocol = TLSv1.2 # 强制最低 TLS 版本 CipherString = DEFAULT:@SECLEVEL=2 # 加密套件安全级别 
 - 默认配置文件路径:
 - GnuTLS: 
- 配置文件路径:
/etc/gnutls/config
与 OpenSSL 协同工作,确保系统范围配置一致性。例如,AppArmor 规则默认授予对其配置文件的访问权限,防止因权限问题导致配置失效。 
 - 配置文件路径:
 
 - OpenSSL: 
 -  
APT 存储库签名验证
- 要求:APT 存储库必须使用≥2048 位的 RSA 密钥、Ed25519 或 Ed448 签名。
 - 1024 位密钥处理:
若检测到旧版 1024 位弱密钥,APT 会发出警告并阻止更新,直至用户迁移至强密钥(通过删除并重新添加 PPA 解决)。 
 -  
AppArmor 安全策略
- 非特权用户命名空间限制:
默认禁止非特权用户使用用户命名空间,但通过 AppArmor 配置文件为特定应用(如 Chrome 沙箱)开放例外,减少内核攻击面。 - 配置文件示例:
/etc/apparmor.d/chrome {# 允许 Chrome 使用用户命名空间flags=(unconfined) } 
 - 非特权用户命名空间限制:
 
二、证书相关配置文件与工具
-  
SSH 证书登录配置
- 生成密钥对:
ssh-keygen -t ed25519 -a 100 # 推荐 Ed25519 密钥 ssh-keygen -t rsa -b 4096 # 或 RSA 4096 位密钥 - 配置 SSH 服务端:
修改/etc/ssh/sshd_config,启用公钥认证并禁用密码登录:PubkeyAuthentication yes PasswordAuthentication no AuthorizedKeysFile .ssh/authorized_keys - 重启服务:
systemctl restart sshd 
 - 生成密钥对:
 -  
Certbot 生成 SSL 证书
- 安装 Certbot:
apt install certbot python3-certbot-nginx - 获取证书(以 Nginx 为例):
certbot --nginx -d example.com -d www.example.com - 证书路径: 
- 公钥:
/etc/letsencrypt/live/example.com/fullchain.pem - 私钥:
/etc/letsencrypt/live/example.com/privkey.pem 
 - 公钥:
 
 - 安装 Certbot:
 -  
Nginx 配置 SSL
- 示例配置:
server {listen 443 ssl;server_name example.com;ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;ssl_protocols TLSv1.2 TLSv1.3;ssl_ciphers HIGH:!aNULL:!MD5; } - 强制 HTTPS 跳转:
server {listen 80;server_name example.com;return 301 https://$host$request_uri; } 
 - 示例配置:
 -  
手动添加证书到系统信任库
- 步骤: 
- 将证书文件(
.crt或.pem)复制到/usr/local/share/ca-certificates/。 - 运行 
update-ca-certificates更新信任库。 
 - 将证书文件(
 
 - 步骤: 
 
三、关键安全特性
-  
TLS 版本强制
- 默认禁用 TLS 1.0/1.1 和 DTLS 1.0,仅允许 TLS 1.2/1.3,提升连接安全性。
 
 -  
APT 存储库签名强化
- 弃用 1024 位 RSA 密钥,要求存储库使用强密钥签名,防止中间人攻击。
 
 -  
AppArmor 集成
- 默认授予 OpenSSL/GnuTLS 配置文件访问权限,确保系统范围配置一致性。
 
 
四、总结
Ubuntu 24.04 LTS 的证书体系通过 系统信任库、OpenSSL/GnuTLS 配置、APT 签名验证和 AppArmor 策略 构建了多层次的安全防护。关键配置文件(如 /etc/ssl/openssl.cnf、/etc/ssh/sshd_config)和工具(如 Certbot、update-ca-certificates)简化了证书管理,同时强制安全策略(如禁用弱加密算法)有效降低了攻击风险。对于企业环境,建议结合 Ubuntu Pro 订阅延长支持周期,并定期审计证书配置。
