欢迎光临
我们一直在努力

免费SSL证书startssl如何申请和安装

这篇文章主要介绍了免费SSL证书startssl如何申请和安装,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

首先访问 StartSSL.com 点击 Sign-up 进行注册

申请证书

  1. 每一行输入一个域名

  2. 只能输入五行(五个域名)

那么怎么生成 CSR 呢?这里演示一下 StartCom 的小小绿色工具的用法,首先在这个页面中点击StartComTool.exe下载到本地,运行该程序:

之后,我们点击Submit提交申请。

不出意外的话,我们的证书文件立刻就生成好了:

下载

经过整理,文件夹中会有如下文件:

  • app.williamyao.com.csr(签名文件)

  • app.williamyao.com.key(密钥文件)

  • app.williamyao.com.zip(下载下来的证书文件压缩包)

  • INTRO(文本文件,里面记录一下上面三个文件的生成日期,以及证书文件的到期日期等等)

Nginx 方面

在进行配置之前稍作一个假设,Nginx 以虚拟主机方式保存配置文件,即每个虚拟主机有自己单独的.conf文件,这种方式比把所有东西都丢进nginx.conf里面强得多,而且现代版本的 Nginx 都是默认采用虚拟主机方式进行配置了。

至于为什么做这样的铺垫,是为了下面解决容易碰到的一个问题,我们到达那个步骤的时候再详细说明。

上传文件

我们需要将两套文件上传到服务器,每一套中有两个文件,一个是 CRT 证书文件,一个是 KEY 密钥文件,用于启用www.williamyao.com以及app.williamyao.com这两个域名对应虚拟主机的 SSL 支持,
这里将每套两个文件做如下命名:

  • www.williamyao.com.crt

  • www.williamyao.com.key

  • app.williamyao.com.crt

  • app.williamyao.com.key

然后传到服务器上

配置 Nginx

先别急,这里说明一下,启用 SSL 的一般做法是,虚拟主机的主server段不监听 80 端口,而是直接监听 443 端口,然后在主server配置段后新开一个server段监听相同server_name的 80 端口,并将请求 301 重定向到 HTTPS.

这样做的好处是,不管访问者是否制定 HTTPS 协议(一般人上网大都只会输入域名,不会先写协议的吧……),只要输入域名,Nginx 接到请求后就会将请求重定向到 443 端口的 SSL 主机上。

下面我们也打算这么做,以我为例:

SSH 到服务器上,分别编辑两个虚拟主机的 conf 配置文件,我们先来第一个:

sudo nano /usr/local/nginx/conf/vhost/www.williamyao.com.conf

将配置信息添加到配置文件中,配置好的www.williamyao.com.conf文件形如这个样子:

server
{
    listen 443 ssl;
    # 下面这一行用于启用 IPv6 支持
    listen [::]:443 ssl ipv6only=on;
    server_name www.williamyao.com;
    # SSL 支持配置如下
    ssl on;
    ssl_certificate /etc/ssl/private/www.williamyao.com.crt;
    ssl_certificate_key /etc/ssl/private/www.williamyao.com.key;

    ...(其他配置)...
}

server
{
    listen 80;
    listen [::]:80 ipv6only=on;
    server_name www.williamyao.com;
    return 301 https://www.williamyao.com$request_uri;
}

之后编辑另一个虚拟主机app.williamyao.com.conf配置文件,形如下面这样:

server
{
    listen 443 ssl;
    # 下面这一行用于启用 IPv6 支持
    listen [::]:443 ssl;
    server_name app.williamyao.com;
    # SSL 支持配置如下
    ssl on;
    ssl_certificate /etc/ssl/private/app.williamyao.com.crt;
    ssl_certificate_key /etc/ssl/private/app.williamyao.com.key;

    ...(其他配置)...
}

server
{
    listen 80;
    listen [::]:80;
    server_name app.williamyao.com;
    return 301 https://app.williamyao.com$request_uri;
}

全部配置完毕后,重启 Nginx 或者 Reload,不出意外的话,回到浏览器,输入域名(可以不带 HTTPS,顺便测试一下 301 转发),是否一切正常?

恭喜你,你的服务器已经被标记为“安全”了!

1. 用自已公司的信息,生成自已的CSR文件和key文件,方法如下之一。

第一种:在线生成[https://www.trustasia.com/tools/csr-generator.htm]
第二种:
openssl req -new -nodes -keyout yourname.key -out yourname.csr
linux命令行生成
第三种:[https://download.startpki.com/startcom/startcomtool.exe] 下载并使用此工具生成

2.使用自已的csr和key文件在startssl.com上注册自已的域名,并生成自已的证书crt。

[https://startssl.com/Certificates/ApplySSLCert](https://startssl.com/Certificates/ApplySSLCert)

3.在nginx上配置并使用自已的证书crt

#
 server {
     listen       443;
     server_name  xxx.clcw.com.cn;
     root         html;


     ssl                  on;
     ssl_certificate      /home/songaimin/job/nginx-conf/ssl/xxx.clcw.com.cn_bundle.crt;
     ssl_certificate_key  /home/songaimin/job/nginx-conf/ssl/xxx.clcw.com.cn.key;


     ssl_session_timeout  5m;


     ssl_protocols  SSLv2 SSLv3 TLSv1;
     ssl_ciphers  HIGH:!aNULL:!MD5;
     ssl_prefer_server_ciphers   on;


     location / {
     }
 }

重启nginx服务器,查看443是否正常启动。 访问https://xxx.clcw.com.cn看地址栏,有绿色小锁的标记。恭喜你成功了!!!!

#五、只针对注册、登陆进行https加密处理
#既然HTTPS能保证安全,为什么全世界大部分网站都仍旧在使用HTTP呢?使用HTTPS协议,对服务器来说是很大的负载开销。从性能上考#虑,我 们无法做到对于每个用户的每个访问请求都进行安全加密(当然,Google这种大神除外)。作为一个普通网站,我们所追求的只#是在进行交易、密码登陆等操 作时的安全。通过配置Nginx服务器,可以使用rewrite来做到这一点。

#在https server下加入如下配置:

if ($uri !~* "/logging.php$")
{
    rewrite ^/(.*)$ http://$host/$1 redirect;
}
 
#在http server下加入如下配置:

if ($uri ~* "/logging.php$")
{
    rewrite ^/(.*)$ https://$host/$1 redirect;
}
 
#这样一来,用户会且只会在访问logging.php的情况下,才会通过https访问

感谢你能够认真阅读完这篇文章,希望小编分享的“免费SSL证书startssl如何申请和安装”这篇文章对大家有帮助,同时也希望大家多多支持云搜网,关注云搜网行业资讯频道,更多相关知识等着你来学习!

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。