Https
为了数据安全,采用https技术,也就是http+SSL/TLS(Transport Layer Security)
一、准备工作
在客户端(windows)生成证书,安装到服务端(linux)
1.安装OpenSSl工具
OpenSSL中包含生成证书的工具和各类加密算法。
下载OpenSSL
Windows:http://slproweb.com/products/Win32OpenSSL.html
Linux:https://www.openssl.org/source/
安装OpenSSL
Windows安装:
双击运行,安装到指定目录即可。
Linux安装(从1.0.x升级):
1.查看版本命令
openssl version
openssl version -a
2.下载指定版本的 openssl 软件,两种方式
https://www.openssl.org/source/
wget https://www.openssl.org/source/openssl-1.1.1o.tar.gz
3.解压压缩包
tar -zxvf openssl-1.1.1o.tar.gz
4.进入解压后的文件夹执行以下命令编译安装
./config shared zlib
make && make install
5.备份原来的软链接
mv /usr/bin/openssl /usr/bin/openssl.bak
mv /usr/include/openssl /usr/include/openssl.bak
find / -name openssl
6.重新建立软链接
ln -s /usr/local/bin/openssl /usr/bin/openssl
ln -s /usr/local/include/openssl /usr/include/openssl
echo "/usr/local/lib64/" >> /etc/ld.so.conf
ldconfig
2.生成服务端证书
在Windows系统中生成服务端证书,然后再把相关文件上传到服务器。
certmgr.msc --查看Win系统已存证书
key --私钥
csr --待签名证书
crt --证书
1.生成私钥
找到OpenSSL安装目录下的/bin目录中的OpenSSL.exe
执行命令
openssl.exe genrsa -des3 -out c:/dev/server.key
生成私钥,需要提供一个至少4位,最多1023位的密码
2.由私钥创建待签名证书
openssl.exe req -new -key c:/dev/server.key -out c:/dev/server.csr
3.查看证书中的内容
openssl.exe req -text -in c:/dev/server.csr
3.自建CA对证书进行签名
1.创建CA私钥
openssl.exe genrsa -out c:/dev/myca.key 2048
2.生成CA待签名证书
openssl.exe req -new -key c:/dev/myca.key -out c:/dev/myca.csr
3.生成CA根证书
openssl.exe x509 -req -in c:/dev/myca.csr -extensions v3_ca -signkey c:/dev/myca.key -out myca.crt
4.对服务器证书签名
openssl x509 -days 365 -req -in c:/dev/server.csr -extensions v3_req -CAkey c:/dev/myca.key -CA c:/dev/myca.crt -CAcreateserial -out c:/dev/server.crt
myca.key:ca机构私钥
myca.csr:ca机构待签名证书
myca.crt:ca机构证书,即根证书
server.crt:服务器证书,被ca机构签名过的证书