全站HTTPS简单实践

第一个里程碑:创建https证书

 1 [root@web01 backup]#  openssl req -new -x509 -nodes -out server.crt -keyout server.key
 2 
 3 Generating a 2048 bit RSA private key
 4 ......................................................+++
 5 ...................................+++
 6 
 7 writing new private key to 'server.key'
 8 -----
 9 You are about to be asked to enter information that will be incorporated
10 into your certificate request.
11 What you are about to enter is what is called a Distinguished Name or a DN.
12 There are quite a few fields but you can leave some blank
13 For some fields there will be a default value,
14 If you enter '.', the field will be left blank.
15 -----
16 Country Name (2 letter code) [XX]:CH        #国家名称  
17 State or Province Name (full name) []:bj       #省  
18 Locality Name (eg, city) [Default City]:bj     #市   
19 Organization Name (eg, company) [Default Company Ltd]:ZNIX   #组织名称
20 Organizational Unit Name (eg, section) []:ZNIX   #组织名称
21 Common Name (eg, your name or your server's hostname) []:ZNIX  #服务器名称
22 Email Address []:ADMIN@ZNIX.TOP    #邮箱

查看产生的证书

1 [root@web01 backup]# ls
2 server.crt  server.key
3 
4 生成的密钥文件
5 [root@web01 backup]# ll
6 total 8
7 -rw-r--r-- 1 root root 1375 Nov  6 14:07 server.crt
8 -rw-r--r-- 1 root root 1704 Nov  6 14:07 server.key

openssl参数说明

参数

参数说明

req

PKCS#10 X.509 Certificate Signing Request (CSR)Management. PKCS#10 X.509证书签名请求(CSR)管理。

x509

X.509 Certificate Data Management.  X.509证书数据管理。

第二个里程碑:修改nginx配置文件

 1 [root@web01 ~]# cat  /application/nginx/conf/extra/www.conf
 2 server {
 3     listen       443 ssl;
 4     server_name  www.etiantian.org;
 5     ssl_certificate      /application/nginx/key/server.crt;
 6     ssl_certificate_key  /application/nginx/key/server.key;
 7     ssl_session_cache    shared:SSL:1m;
 8     ssl_session_timeout  5m;
 9     ssl_ciphers  HIGH:!aNULL:!MD5;
10     ssl_prefer_server_ciphers  on;    
11 
12     location / {
13         root   html/www;
14         index  index.php ;
15     }
16     location ~* .*\.(php|php5)?$ {
17                 root html/www;
18                 fastcgi_pass  127.0.0.1:9000;
19                 fastcgi_index index.php;
20                 include fastcgi.conf;
21     }
22     access_log  logs/access_www.log  main;
23 }

模块参数说明

模块名称

说明

ssl_prefer_server_ciphers

指定在使用SSLv3和TLS协议时,服务器密码应优先于客户端密码。

ssl_ciphers

指定启用的密码。密码以OpenSSL库理解的格式指定

ssl_session_timeout

指定客户端可以重新使用会话参数的时间。

ssl_session_cache

设置存储会话参数的高速缓存的类型和大小。

ssl_certificate

指定file具有给定虚拟服务器的PEM格式的证书。如果除了主要证书之外还应该指定中间证书,则应该按照以下顺序在同一个文件中指定它们:主要证书首先是中间证书,然后是中间证书。PEM格式的密钥可以放在同一个文件中。

ssl_certificate_key

指定file给定虚拟服务器的PEM格式的秘密密钥。

1.1.2 客户端访问

1)浏览器访问https://www.etiantian.org

   2)选择高级,继续前往www.etiantian.org(不安全)   由于ssl证书是自己生产的,会有这样的一个问题。

   3)网站访问正常。

   这种小绿锁的ssl,需要购买ssl证书。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏小白安全

小白博客 Linux下暴力破解工具Hydra详解

Number one of the biggest security holes are passwords, as every password secu...

3927
来自专栏安恒网络空间安全讲武堂

Amazing phpinfo()

前记 Xdebug 前记 定义 开启Xdebug 适用目标 实验效果 注意事项 session.upload_progress 定义 开启session.upl...

3156
来自专栏生信宝典

RepeatMasker安装和使用

RepeatMasker是一款专门用于基因组重复序列识别注释,并分类统计的软件,几乎用于所有物种。是研究基因组、非编码RNA、转座子和着丝粒领等相关领域的必备软...

28410
来自专栏安恒网络空间安全讲武堂

python之paramiko模块

764
来自专栏Python中文社区

djongo:Django和MongoDB连接器

作者:小江,python爱好者,自学中,尝试爬虫、Django开发以及大数据,非CS科班出身。在校主要用MATLAB,现工作中偶尔使用python。博客主页:h...

802
来自专栏Java技术

QQ登录网站接入功能实现--非官方文档搬运

最近第一次使用QQ登录功能,期间遇到这种问题,在网上找了很多资料,大多都是官方的搬运,并没有真正的干料,可能是个人能力问题,遇到了各种麻烦,折腾了几天,最终弄好...

624
来自专栏james大数据架构

idea启动多个tomcat失败

Intellij idea中,为在本地调试两个系统之间的调用,配置两个本地tomcat server,设置不同的端口号,如8081和8082,Deploy中加入...

1885
来自专栏李蔚蓬的专栏

Android中asset文件夹和raw文件夹区别

这阵子有位同学在一个命名非“raw”的文件夹中放置mp3文件,导致R文件报错,故此研究,寻得此篇文章,特做分享。

672
来自专栏同步博客

定时任务之crontab命令

  2、个人执行的工作:某个用户定期要做的工作,例如每隔10分钟检查邮件服务器是否有新信,这些工作可由每个用户自行设置

1322
来自专栏肖洒的博客

DO部署Python爬虫应用

DigitalOcean里面还有60美金,可以用一下,部署了服务器,我可能就不会再去折腾这个爬虫应用了。

733

扫码关注云+社区