# OpenSSl
# 是什么
OpenSSL 是一个安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及SSL协议,并提供丰富的应用程序供测试或其它目的使用。
# OSX
Mac OSX目前可以通过brew来安装指定版本的OpenSSL
确认已安装的openssl的版本和位置
which openssl
确定版本
openssl version
brew安装openssl
brew install openssl
brew更新openssl
brew upgrade openssl
brew强制链接到openssl
brew link openssl --force
# 如何生成证书
//#生成私钥key文件
openssl genrsa 1024 > ./ssl/private.pem
//#通过私钥文件生成CSR证书签名
openssl req -new -key ./ssl/private.pem -out csr.pem
//#通过私钥文件和CSR证书签名生成证书文件
openssl x509 -req -days 365 -in ./ssl/csr.pem -signkey ./ssl/private.pem -out ./ssl/file.crt
- private.pem: 私钥
- csr.pem: CSR证书签名
- file.crt: 证书文件
# Other
OpenSSL被曝出现严重安全漏洞后,发现多数通过SSL协议加密的网站使用名为OpenSSL的开源软件包。OpenSSL漏洞不仅影响以https开头的网站,黑客还可利用此漏洞直接对个人电脑发起'心脏出血'(Heartbleed)攻击。据分析,Windows上有大量软件使用了存在漏洞的OpenSSL代码库,可能被黑客攻击抓取用户电脑上的内存数据。
Mac OSX一般自带的有OpenSSL。但因为上述OpenSSL'心脏病失血'事件,Mac OSX 自 10.11 El Capitan 起,将原有的 OpenSSL 替换为 LibreSSL。在以上这些系统中应该除了实测必须要用 OpenSSL 软件外,应该都可以用 LibreSSL 取代 OpenSSL。而对于其他大多数还没有将系统自带的 OpenSSL 替换为 LibreSSL 的会麻烦一些,并且也可能做不到彻底替换。只是对于编译安装的软件,可以尽量用 LibreSSL 取代 OpenSSL。(其他用LibreSSL 取代 OpenSSL的系统还有:OpenBSD 自 5.6 起,Alpine Linux 自 3.5.0 起)
openssl version
LibreSSL 2.6.5