如何用OpenSSL在Linux上配置HTTPS

需要明确的是,在 Linux 上设置 HTTPS 非常简单,只需四个主要步骤 - 安装 OpenSSL、创建自签名证书、配置 Apache SSL 虚拟主机和测试连接。
但说实话,难度很大,尤其是认证方面,很多人都不重视。
我们先来说说最重要的事情。
只需使用分发命令安装 OpenSSL 即可。
当我们去年运行该项目时,使用 Debian 环境应用程序安装大约需要 2 分钟。
RHEL 上的 Yum 安装速度很快。
关键是生成证书并使用 openssl req 命令获取 2 04 8 位 RSA 密钥。
请记住添加 -nodes 参数,这样您就不必每次启动 Apache 时都输入密码。
这一点特别实用。
我也——一开始以为节点会不安全,后来发现在生产环境测试非常方便,直接省去了输入密码的麻烦。

还有一点,配置Apache时,虚拟主机中的服务器名称必须与证书的CN字段匹配。
去年我们遇到了一个陷阱。
我的一位同事获得了 mydomain.org 的证书,但 Apache 运行在 mydomain.com 上,浏览器自动发出红叉警告。
还有另一个重要的细节。
例如AllowOverride All必须写在目录下,否则上传文件或修改htaccess就没有意义。
尝试连接时使用curl 查看返回标头。
去年测试一个项目的时候,看到HTTP/2 .0和ssl-certificate这几个字,我松了口气。

等等,还有别的事。
当您访问浏览器时,总会弹出安全警告。
很多人不重视这一点,用户不得不手动相信。
不过,这值得一试。
毕竟,自签名证书对于测试环境来说已经足够了,而且生成过程比购买密码要容易得多。

最后提醒一下,私钥权限一定要设置正确。
去年有同学将.key文件的权限设置为6 6 6 ,结果被下组的同事下载了,造成了意外。
建议使用 sudo chmod 6 00 直接锁定。

Linux中安装SSL协议依赖库OpenSSL的教程

上周,有客户问我,他在使用OpenSSL编译程序时出现错误,提示是“致命错误:openssl/aes.h:没有这样的文件或目录”。
听起来好像缺少所需的头文件,所以我向他解释了可能的原因和解决方案。

首先,他可能没有正确安装OpenSSL开发包。
在 Debian、Ubuntu 或其他衍生版本上,可以使用命令 sudo apt-get install libssl-dev 进行安装。
在Fedora、CentOS或RHEL上,他需要使用sudo yum install openssl-devel。

如果他想手动下载并安装OpenSSL,可以按照以下步骤操作:
1 .下载OpenSSL源码压缩包。
命令如下: wget ftp://ftp.openssl.org/source/openssl-1 .0.1 g.tar.gz tar xzvf openssl-1 .0.1 g.tar.gz cd openssl-1 .0.1 g
2 验证配置并安装。
这里使用共享库和 zlib 支持: ./config 共享 zlib 做 进行安装
3 连接到新的 OpenSSL 安装路径。
此步骤可能需要 root 权限: mv /usr/bin/openssl /usr/bin/openssl.OFF mv /usr/include/openssl /usr/include/openssl.OFF ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl ln -s /usr/local/ssl/include/openssl /usr/include/openssl echo "/usr/local/ssl/lib" >> /etc/ld.so.conf ldconfig-v
4 最后验证是否安装成功: openssl 版本
完成这一步后,他应该能够解决编译错误。
无论如何,你可以弄清楚,我希望这一步有帮助。
我还认为可能还有其他原因导致此错误,但一般来说这些步骤应该涵盖大多数情况。

Linux Ubuntu openssl离线源码安装、升级版本

上周 在Ubuntu1 6 .04 .1 系统上。
OpenSSL 版本是 1 .0.2 g。

用于离线安装或更新。
首先从 openssl.org 下载 1 .1 .1 k。

1 .1 .1 k 是最新的生产版本。
3 .0.0-alpha1 7 是预发行版本。
不建议直接在生产环境中使用。

本文将引导您完成 1 .1 .1 k 的安装。

1 .解压1 .1 .1 k源码包。
转到文件夹。
查看安装说明。
保证编译环境。

2 根据快速入门指南进行编译。
没有报告错误。
编译和安装成功完成。

3 安装后检查版本。
Libssl.so.1 .1 可能丢失。
搜索以确认文件存在。
也许是路径问题。
创建软链接即可解决问题。
版本更新成功。

对于 3 .0.0-alpha1 7 编译步骤类似。
命令可以不同。
需要软链接依赖库。

推荐1 .1 .1 k。
使用 install.sh 脚本安装。

总结。
离线安装和更新。
确保处理好依赖关系。
修复路径问题。
创建软链接。
更新成功完成。
由你决定。