主要参考地址为:https://blog.csdn.net/setoy/article/details/78441613

本篇主要以Apache这个web服务器来讲解,所以前提必须要安装好apache。

关于安装Apache,对于Ubuntu来说,一行命令行就能搞定。

sudo apt-get install apache2

当然了,如果有对lnmp或者lanmp环境搭建感兴趣的可以参考我的这篇博文:Ubuntu16.04之开发环境构建

虽说该文排版有待改善,但是内容还是很实用的。

1.开启SSL模块

a2enmod ssl

上面的命令相当于下面两条命令:

sudo ln -s /etc/apache2/mods-available/ssl.load /etc/apache2/mods-enabled
sudo ln -s /etc/apache2/mods-available/ssl.conf /etc/apache2/mods-enabled

如果没有a2enmod指令,也可直接在apache2.conf中设置SSL模块加载:

LoadModule ssl_module /usr/lib/apache2/modules/mod_ssl.so

不过注意,一般都用不到这个,因为安装apache2时,自带有a2enmod指令。

2.创建第三方CA机构签署证书,并向它提交“生成证书的请求文件”(文件后缀通常为.csr)

openssl genrsa -des3 -out server.key 1024

-des3选项能对私钥进行加密,采用此选项会在后续的设置中提示你输入密码(只是加密私钥,https访问时不需要这个密码)

这样会在当前目录下生成server.key私钥文件

3.生成请求文件csr

openssl req -new -key server.key -out server.csr

执行这条命令后,会在小黑窗里显示如下需要填写的内容:

Country Name
Province Name
Common Name
Email

其中Common Name最好用域名,否则https访问时会出现证书不一致的情况

4.自己签发证书

openssl x509 -req -days 3650 -in server.csr -signkey server.key -out server.crt

3650表示证书有效期10年

5.修改apache配置文件

ln -s /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-enabled/default-ssl.conf
vim /etc/apache2/sites-enabled/default-ssl.conf

在DocumentRoot中加入内容:

SSLEngine On
SSLOptions +StrictRequire
SSLCertificateFile /etc/ssl/certs/server.crt
SSLCertificateKeyFile /etc/ssl/private/server.key

6.重启Apache即可

/etc/init.d/apache2 restart

完成上面的不能代表,就可以直接使用。上面的步骤,只是一个搭建,可以让你看到界面上的简单效果。

简而言之的说,中看不中用。但是总的来说,它仍然是有益的。希望能够给广大朋友带来帮助。

最新文章

  1. 【HDU】1693 Eat the Trees
  2. jquery总结04-DOM节点操作
  3. 【Unity】12.5 Navmesh Obstacle组件
  4. Java学习第五天
  5. 你真的知道css三种存在样式(外联样式、内部样式、内联样式)的区别吗?
  6. 空间的配置和释放 std::alloc
  7. Team Formation(思维)
  8. zf-删除重复数据只保留一条(转)
  9. CCIE-MPLS VPN-实验手册(上卷)
  10. Java学习笔记二---设置环境变量JAVA_HOME,CLASSPATH,PATH
  11. 一次断电后docker问题的排解
  12. minikube windows hyperx填坑记
  13. java远程调试(idea)
  14. WEB环境相关技术、配置
  15. HDU 6118 度度熊的交易计划(最小费用最大流)
  16. 最短路径算法----Dijkstra (转)
  17. xtrabackup-增量备份
  18. 清除所有Cookie
  19. 浅谈iOS开发中多语言的字符串排序
  20. My SQL查询语言

热门文章

  1. 福建工程学院第十四届ACM校赛J题题解
  2. 设置队列中文件上的“X”号的点击事件+uploadLimit动态加1
  3. O005、远程管理 KVM 虚机
  4. LintCode 29---交叉字符串
  5. 分布式的几件小事(三)dubbo的通信协议与序列化
  6. 特产网站自适应CSS
  7. 欧拉系统-登陆 SSH 出现 Access Denied 错误
  8. linux命令详解——vim
  9. 【小知识】比较 x^y 和 y^x 的大小
  10. C++最快获取像素值