如何部署HTTPS 申请证书 安装证书

简介:

目标:

让自己的网站,yyii.infohttps://yyii.info访问,


条件:

1.用的是阿里云服务器,

  https://promotion.aliyun.com/ntms/act/qwbk.html   330/年。40G

  用oneinstack一键安装的。https://oneinstack.com/


2.在阿里云申请一个免费的证书。在安全(云盾)栏目->证书服务。

申请后,大约1天,会提示下载相关文件,上传到网站下。然后再等待自动审核通过。

之后,就能下载证书。

下载来有4个文件,

214113615990489.key,

214113615990489.pem,

chain.pem

public.pem

(域名放在西部数码的,也能申请一个免费证书。好象不能用到阿里云这边来。)


阿里云里有相关说明,如何布署证书。(这一段见本文后面)

因我的服务器是按oneinstack安装的。就不需使用阿里云的方法。


3.配置网站

./vhost.sh

配置了一个网站,

Do you want to setup SSL under Nginx? [y/n]: y

其他的按提示来。上面如果不是配置https的网站,就选n.


4.然后,可看到,

在/usr/local/nginx/conf/ssl

生成了,三个文件,

yyii.info.crt

yyii.info.csr

yyii.info.key


5.

但同时,也报了如下:

nginx: [warn] "ssl_stapling" ignored, issuer certificate not found for certificate "/usr/local/nginx/conf/ssl/yyii.info.crt"

AH00526: Syntax error on line 6 of /usr/local/apache/conf/vhost/yyii.info.conf:

Invalid command 'SSLEngine', perhaps misspelled or defined by a module not included in the server configuration


https仍是不能访问。


6.


群主yeho告诉我:你这个自签名证书 自己购买证书替换 重启nginx即可


7.

我在阿里云申请得到一年的免费证书,

下载来有4个文件,

214113615990489.key,

214113615990489.pem,

chain.pem

public.pem


然后,我是把这4个文件,放在,/usr/local/nginx/conf/ssl下

214113615990489.key,重命名为 ,域名.key

214113615990489.pem重命名为, 域名.crt  


在此感谢群主指点,不然自己哪里会知道啊!


8.重启nginx


9.https://yyii.info就可以访问了!

有一点注意,如果网站下有index.html,会先读index.html.


10.

让我们再看看:

oneinstack生成的/usr/local/nginx/conf/vhost/yyii.info.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
server {
   listen 80;
   listen 443 ssl http2;
   ssl_certificate /usr/local/nginx/conf/ssl/yyii.info.crt;
   ssl_certificate_key /usr/local/nginx/conf/ssl/yyii.info.key;
   ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
   ssl_ciphers EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
   ssl_prefer_server_ciphers on;
   ssl_session_timeout 10m;
   ssl_session_cache builtin:1000 shared:SSL:10m;
   ssl_buffer_size 1400;
   add_header Strict-Transport-Security max-age=15768000;
   ssl_stapling on;
   ssl_stapling_verify on;
   server_name yyii.info;
   access_log off;
   index index.html index.htm index.php;
   root /data/wwwroot/yyii.info;
   if  ( $ssl_protocol  "" ) {  return  301 https: //$host$request_uri; }
 
 
   location / {
     try_files  $uri  @apache;
   }
   location @apache {
     proxy_pass http: //127.0.0.1:88;
     include  proxy.conf;
   }
   location ~ .*\.(php|php5|cgi|pl)?$ {
     proxy_pass http: //127.0.0.1:88;
     include  proxy.conf;
   }
   location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp4|ico)$ {
     expires 30d;
     access_log off;
   }
   location ~ .*\.(js|css)?$ {
     expires 7d;
     access_log off;
   }
   location ~ /\.ht {
     deny all;
   }

11.看看 阿里云里写的如何安装证书,apache下,

安装证书

文件说明:
1.证书文件214113615990489.pem,包含两段内容,请不要删除任何一段内容。
2.如果是证书系统创建的CSR,还包含:证书私钥文件214113615990489.key、证书公钥文件public.pem、证书链文件chain.pem
( 1 )Apache的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中。如果申请证书时是自己创建的CSR文件,请将对应的私钥文件放到cert目录下并且命名为214113615990489.key
( 2 ) 打开apache 安装目录下conf 目录中的httpd.conf 文件,找到以下内容并去掉“#”
#LoadModule ssl_module modules/mod_ssl.so (如果找不到请确认是否编译过 openssl 插件)
#Include conf/extra/httpd-ssl.conf
( 3 ) 打开 apache安装目录下 conf/extra/httpd-ssl.conf文件 (也可能是conf.d/ssl.conf,与操作系统及安装方式有关), 在配置文件中查找以下配置语句:
# 添加 SSL 协议支持协议,去掉不安全的协议
SSLProtocol TLSv1 TLSv1.1 TLSv1.2
# 修改加密套件如下
SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4
# 证书公钥配置
SSLCertificateFile cert/public.pem
# 证书私钥配置
SSLCertificateKeyFile cert/214113615990489.key
# 证书链配置,如果该属性开头有 '#'字符,请删除掉
SSLCertificateChainFile cert/chain.pem
( 4 ) 重启 Apache
( 5 ) 通过https方式访问您的站点,测试站点证书的安装配置,如遇到证书不信任问题,请查看相关文档

----------  招募未来大神 -----------------------

如果您有利他之心,乐于帮助他人,乐于分享
如果您遇到php问题,百度且问了其他群之后仍没得到解答

欢迎加入,PHP技术问答群,QQ群:292626152

教学相长!帮助他人,自己也会得到提升!

为了珍惜每个人的宝贵时间,请大家不要闲聊。

愿我们互相帮助,共同成长!

加入时留言暗号,php,ajax,thinkphp,yii...



     本文转自phpervip 51CTO博客,原文链接http://blog.51cto.com/phpervip/1932004 :,如需转载请自行联系原作者



相关文章
|
3月前
|
安全 算法 网络协议
解析:HTTPS通过SSL/TLS证书加密的原理与逻辑
HTTPS通过SSL/TLS证书加密,结合对称与非对称加密及数字证书验证实现安全通信。首先,服务器发送含公钥的数字证书,客户端验证其合法性后生成随机数并用公钥加密发送给服务器,双方据此生成相同的对称密钥。后续通信使用对称加密确保高效性和安全性。同时,数字证书验证服务器身份,防止中间人攻击;哈希算法和数字签名确保数据完整性,防止篡改。整个流程保障了身份认证、数据加密和完整性保护。
|
4月前
|
运维 搜索推荐 安全
HTTPS 证书自动化运维:基础知识与重要性
随着互联网发展,HTTPS 成为保护网站和用户数据安全的标准协议。HTTPS 证书(SSL/TLS)验证网站身份并加密通信,分为 DV、OV 和 EV 三种类型,确保数据传输安全。它不仅提高安全性、增强用户信任,还能提升搜索引擎排名。手动管理证书繁琐易错,自动化运维工具如 Let`s Encrypt 和 Certbot 可简化流程,减少错误,提高效率。文章介绍了 HTTPS 证书的基础知识、重要性及自动化运维的概念。
|
1月前
|
安全 算法 数据建模
HTTPS证书类型和品牌一览
HTTPS证书(SSL证书)是保障网站数据传输安全与身份可信认证的重要工具,适用于电商、企业官网等各类平台。证书主要分为DV(域名验证)、OV(企业验证)、EV(扩展验证)三种安全级别,以及单域名、通配符、多域名等不同覆盖类型。品牌方面,既有高性价比的国产锐安信、CFCA,也有国际知名的Sectigo、Digicert。
|
4月前
|
监控 运维
HTTPS 证书自动化运维:https证书管理系统- 自动化监控
本文介绍如何设置和查看域名或证书监控。步骤1:根据证书状态选择新增域名或证书监控,线上部署推荐域名监控,未部署选择证书监控。步骤2:查询监控记录详情。步骤3:在详情页查看每日定时检测结果或手动测试。
HTTPS 证书自动化运维:https证书管理系统- 自动化监控
|
4月前
|
Linux 持续交付 调度
HTTPS 证书自动化运维:https证书管理系统-自动化部署
本指南介绍如何部署Linux服务器节点。首先复制生成的Linux脚本命令,然后将其粘贴到目标服务器上运行。接着刷新页面查看节点记录,并点击“配置证书”选择证书以自动部署。最后,节点部署完成,后续将自动调度,无需人工干预。
HTTPS 证书自动化运维:https证书管理系统-自动化部署
|
4月前
|
运维
HTTPS 证书自动化运维:https证书管理系统之自动化签发
通过访问【https://www.lingyanspace.com】注册账户,进入证书服务菜单并新增证书。填写域名(单域名、多域名或泛域名),创建订单后添加云解析DNS记录进行质检。确认完成后可下载证书,并支持后续查看、更新和定时更新功能。证书过期前15天自动更新,需配置邮箱接收通知。
HTTPS 证书自动化运维:https证书管理系统之自动化签发
|
4月前
|
机器学习/深度学习 人工智能 运维
HTTPS 证书自动化运维:展望未来发展趋势
HTTPS证书自动化运维正朝着更智能、高效和安全的方向发展。未来系统将提升自动化程度,减少人工干预,实现自动签发、续订与部署;深度集成多云平台,提供无缝管理体验;增强高级安全功能如加密算法和威胁检测;优化用户界面,降低使用门槛;支持更多操作系统,确保跨平台一致性;引入AI/ML技术,预测需求并自动解决问题;加强标准化与互操作性,促进生态系统协作。同时,系统将持续扩展功能、优化性能、支持国际化,并注重用户反馈,为全球用户提供优质的证书管理服务。
|
4月前
|
运维 监控 数据安全/隐私保护
HTTPS 证书自动化运维:HTTPS 证书管理系统之使用指南
本文详细介绍【灵燕空间HTTPS证书管理系统】(https://www.lingyanspace.com)的配置与使用,涵盖注册账户、邮箱配置及证书自动签发、监控和部署的一体化指南。通过页面顶部菜单的【视频教程】和【图文教程】,帮助用户从注册到实际应用全面掌握系统操作。最新迭代后,泛域名证书已包含根域名,无需额外申请多域名证书。
|
4月前
|
数据建模 网络安全
IP地址https证书最新申请流程步骤
确保信息准确,遵循CA指导,遇到问题可联系客服。
|
4月前
|
域名解析 安全 数据建模
没有域名只有IP地址怎么申请https证书?
IP 地址 SSL 证书是一种特殊的 SSL/TLS 证书,允许直接为 IP 地址配置 HTTPS 加密,适用于内部服务、私有网络和无域名的设备管理。与基于域名的证书不同,申请过程较为复杂,需选择支持 IP 的证书颁发机构(CA),并完成额外的身份验证步骤。浏览器对 IP 地址的支持有限,可能会显示警告。通过正确配置服务器(如 Nginx 或 Apache),可以确保通信安全。

热门文章

最新文章