美文网首页
阿里云ECS配置免费ssl实现https访问

阿里云ECS配置免费ssl实现https访问

作者: TTL和CMOS | 来源:发表于2018-11-23 16:14 被阅读0次

    经过一番努力,加上一步步的实践,终于实现了在阿里云ecs主机上配置ssl达到https访问的目的。

    废话不多说,现在就上步骤。

    1.申请证书

    https://common-buy.aliyun.com/?spm=5176.7968328.1120760.1.610812322W5ZVJ&commodityCode=cas#/buy

    在这个页面,选择免费证书,可以以使用一年。

    然后会出现填写个人信息的弹窗,按提示填写就行了。

    然后登陆证书控制台,审核通过的ssl证书是这样的

    此时要点击下载证书,把证书传到服务器上。

    2.

    在服务器上创建存放证书的文件夹

    mkdir  /usr/local/nginx/ssl

    把下载下来的证书 xxx.key, xxx.pem  传到这个文件夹

    3.

    nginx 配置 这里我是用的是nginx服务器

    vim  /usr/local/nginx/conf/nginx.conf

    server 中其他配置该怎么配和之前一致,这里是增加的ssl的配置

    4. 检查nginx配置

    /usr/local/nginx/sbin -t

    检查配置如果发现了报错,说明你没有安装ssl的nginx扩展

    nginx: [emerg] unknown directive "ssl"

    这里说明下安装nginx ssl扩展

    在 /usr/local/ 目录下 下载nginx1.10.3 软件包

    wget http://nginx.org/download/nginx-1.10.3.tar.gz

    解压

    tar zxvf nginx-1.10.3.tar.gz

    进入目录

    cd  nginx-1.10.3

    ./configure --prefix=/usr/local/nginx --with-http_ssl_module // 加上http的ssl支持模块

    编译完成后 在此目录下执行

    make

    发现目录中多了objs,  替换 原来的 nginx启动文件

    cp /objs/nginx   /usr/local/nginx/sbin/nginx

    查看是否已经替换

    /usr/local/nginx/sbin/nginx  -V

    发现版本已经是1.10.3 说明替换成功

    现在检查nginx配置应该不会报错了

    5. 重启nginx 

    这里注意 nginx -s reload 并不能重启打开监听443端口

    需要杀死之前的nginx进程

    ps -aux | grep nginx 

    kill  nginx 进程号

    /usr/local/nginx/sbin/nginx

    netstat -anp | grep 443

    查看到 443 端口被nginx监听说明成功

    6. 设置阿里云安全组

    在阿里云ces实例左侧有安全组的导航,点击进入后,添加安全组策略,增加443端口的访问,如图

    7.设置服务器防火墙iptables开启443端口

    vim /etc/sysconfig/iptables

    添加一行,保存

    -A INPUT -p tcp -m state --state NEW -m tcp --dport 443 -j ACCEPT

    然后重启iptables

    systemctl restart iptables

    8.访问https

    大功告成,没有出现绿色锁是因为内部访问的一些资源不是https的,修改后就可以显示绿色锁了。

    相关文章

      网友评论

          本文标题:阿里云ECS配置免费ssl实现https访问

          本文链接:https://www.haomeiwen.com/subject/kymjqqtx.html