找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 415|回复: 0

[相关杂项] 利用PHP生成ssl证书

[复制链接] IP属地:广东省广州市
发表于 2024-6-30 16:57:51 | 显示全部楼层 |阅读模式
在PHP中,可以使用openssl扩展来生成SSL证书。以下是一个简单的示例,展示了如何生成一个自签名的SSL证书
  1. <?php
  2. // 设置证书文件路径
  3. $certPath = 'path/to/your/cert.pem';
  4. $keyPath = 'path/to/your/private.key';
  5. $passphrase = 'your_passphrase';

  6. // 生成私钥
  7. $privateKey = openssl_pkey_new();

  8. // 生成证书签名请求(CSR)
  9. $dn = [
  10.     "countryName" => "CN",
  11.     "stateOrProvinceName" => "GuangDong",
  12.     "localityName" => "ShenZhen",
  13.     "organizationName" => "YourOrganization",
  14.     "organizationalUnitName" => "YourDepartment",
  15.     "commonName" => "yourdomain.com",
  16.     "emailAddress" => "admin@yourdomain.com"
  17. ];

  18. openssl_csr_new($dn, $csr, $privateKey);

  19. // 自签名
  20. openssl_csr_sign($csr, $cert, $privateKey, 365, $dn, $privateKey);

  21. // 写入文件
  22. file_put_contents($certPath, $cert);
  23. openssl_pkey_export_to_file($privateKey, $keyPath, $passphrase);

  24. echo "SSL证书和私钥已生成。\n";
  25. ?>
复制代码


确保替换$certPath和$keyPath变量中的路径为你想要保存证书和私钥的实际路径。$passphrase是一个密码,用于在之后加载私钥时进行保护。

请注意,自签名证书不会被浏览器信任,通常用于内部或测试环境。为了在生产环境中使用,需要从证书颁发机构(CA)获取有效的SSL证书。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|西兴社区 ( 蜀ICP备2022005627号 )|网站地图

GMT+8, 2024-12-26 22:28 , Processed in 0.655917 second(s), 22 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表