Apache + openssl1.1.1g 支持TLS1.3 协议
–>
当前环境 Apache-2.4.46 + openssl-1.1.1g 即可;
相关的插件建议在编译安装的时候都加上 如下:
yum install -y gcc
yum install -y gcc-c++
- 安装apr:http://mirror.bit.edu.cn/apache//apr/apr-1.7.0.tar.gz,下载并上传apr-1.7.0.tar.gz至/usr/local目录下:
解压:tar -zvxf apr-1.7.0.tar.gz
检测:cd apr-1.7.0
./configure –prefix=/usr/local/apr
编译:make && make install
- 、安装apr-util:http://archive.apache.org/dist/apr/apr-util-1.5.4.tar.gz,下载并上传至/usr/local目录下:(推荐使用apr-util-1.5的版本,1.6的兼容性有问题)
解压:tar -zvxf apr-util-1.5.4.tar.gz
检测:cd apr-util-1.5.4
./configure –prefix=/usr/local/apr-util –with-apr=/usr/local/apr
编译:make && make install
Ps:make时如果出现#include <expat.h> ^ compilation terminated.的报错,请yum install -y expat-devel安装依赖库。
- 、安装pcre:连网状态下,可执行命令yum install -y pcre-devel 或者通过https://ftp.pcre.org/pub/pcre/pcre-8.43.tar.gz下载并上传至/usr/local目录下:
解压:tar -zvxf pcre-8.43.tar.gz
检测:cd pcre-8.43
./configure –prefix=/usr/local/pcre
编译:make && make install
上述三个文件编译安装完成后就可以正式编译安装 Apache 和 openssl 了。这样就少去后面很多在编译过程中出现的问题然后到处找啊找……
正式流程:先解压openssl 和 apache 然后继续….
cd openssl-1.1.1g
./configure –prefix=/usr/local/openssl
make && make install
cd apache-2.4.46
./configure –prefix=/usr/local/apache2446 –enable-so –enable-ssl –enable-cgi –enable-rewrite –enable-modules=most –enable-mpms-shared=all –with-mpm=prefork –with-zlib –with-apr=/usr/local/apr –with-apr-util=/usr/local/apr-util –with-ssl=/usr/local/openssl
make && make install
——以上过程如无错误,那么整个环境的编译安装过程就结束,接下来就是做SSL的配置
——Ps:上述步骤中的目录皆是测试环境的目录,具体路径,请根据你实际环境做调整!
环境搭建好了。那么就要测试是否可以正常启动;
先切到apapche2446的bin目录下,通过 ./apachectl start 启动;如无误、在通过netstat -tunlp | grep “80” 看端口是否监听起来,若有说明 http 80端口 已OK;
接下来在配置SSL证书:可以通过在 buy.wosign.com 搞一个
大概配置如下,参考:同样切到 apache2446 的 conf 目录下
vi httpd.conf 进行证书配置
记得开启 : LoadModule ssl_module modules/mod_ssl.so —— SSL模块
最后保存并退出;
然后切到bin 目录下。通过 ./apachectl -t 检查当前配置是否正常;
我的返回是如下错误:
Cannot load modules/mod_ssl.so into server: libssl.so.1.1: cannot open shared object file: No such file or directory
最后通过此贴中的步骤得已解决 :https://blog.csdn.net/attitude_1025/article/details/80137062
然后在重启apache 即可;
同样:通过netstat -tunlp | grep “443” 看端口是否监听起来,若有说明 https 443 端口 已OK;
目前火狐和谷歌最新版本的浏览器已经是支持了TLS1.3的协议。并且 openssl版本只要是1.1.1版本以上就可以支持相应的协议
和加密套件。在apache配置中加密套件 ECDH 中就有与之匹配的相关加密套件算法;
———原创,转载请标明,谢谢
本文来源 互联网收集,文章内容系作者个人观点,不代表 本站 对观点赞同或支持。如需转载,请注明文章来源,如您发现有涉嫌抄袭侵权的内容,请联系本站核实处理。