问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

nginx是安装crt 还是pfxssl

发布网友 发布时间:2022-05-12 20:36

我来回答

1个回答

热心网友 时间:2023-10-21 19:14

1. 生成自签名的证书

通常要配置 https 的服务器,都需要一个由正式的 CA 机构认证的 X509 证书。当客户端连接 https 服务器时,会通过 CA 的共钥来检查这个证书的正确性。但要获得 CA 的证书是一件很麻烦的事情,而且还要花费一定的费用。因此通常一些小的机构会是使用自签名的证书。也就是自己做 CA,给自己的服务器证书签名。

这个过程有两个主要的步骤,首先是生成自己的 CA 证书,然后再生成各个服务器的证书并为它们签名。 我是用 OpenSSL 来生成自签名证书的。

第一步是制作 CA 的证书:

openssl genrsa -des3 -out my-ca.key 2048

openssl req -new -x509 -days 3650 -key my-ca.key -out my-ca.crt
这会生成 my-ca.key 和 my-ca.crt 文件,前者存放着使用 my-ca.crt 制作签名时必须的密钥,应当妥善保管。而后者是可以公开的。上面的命令为 my-ca.key 设定的有效期为 10 年。

用命令

openssl x509 -in my-ca.crt -text -noout
可以查看 my-ca.crt 文件的内容。

有了 CA 证书之后,就可以为自己的服务器生成证书了:

openssl genrsa -des3 -out mars-server.key 1024

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

openssl x509 -req -in mars-server.csr -out mars-server.crt -sha1 -CA my-ca.crt -CAkey my-ca.key -CAcreateserial -days 3650
前两个命令会生成 key、csr 文件,最后一个命令则通过 my-ca.crt 为 mars-server.csr 制作了 x509 的签名证书。

需要注意的是,在执行上述第二个命令时,Common Name 选项应当输入的是服务器的域名,否则在用户通过 https 协议访问时每次都会有额外的提示信息。

用命令

openssl x509 -in mars-server.crt -text -noout
可以查看 mars-server.crt 文件的内容。

2. 配置 Apache 服务器

首先,创建 /etc/apache2/ssl 目录,将刚刚制作的 my-ca.crt、mars-server.key 和 mars-server.crt 文件拷贝到这个目录中。

接着执行命令

a2emod ssl
激活 Apache 的 SSL 模块,然后在 /etc/apache2/sites-enable/ 中添加虚拟主机,这个过程与添加普通的虚拟主机类似,不同点在于该主机的端口应为 443。配置如下:

NameVirtualHost *:443

ServerName localhost

DocumentRoot /var/www

SSLEngine On

SSLCipherSuite HIGH:MEDIUM

SSLProtocol all -SSLv2

SSLCertificateFile /etc/apache2/ssl/mars-server.crt

SSLCertificateKeyFile /etc/apache2/ssl/mars-server.key

SSLCACertificateFile /etc/apache2/ssl/my-ca.crt
var/www>
Order deny,allow
Allow from localhost

ServerName localhost

DocumentRoot /var/www

var/www> Order deny,allow

Allow from localhost

以上配置保证了用户在访问 443 和 80 端口时可以看到相同的内容,而仅仅是使用的协议不同。修改好配置后,便可以重启 Apache 服务器,这时需要输入 mars-server.key 的密码。用浏览器访问

这时应当看到一个弹出对话框,让你确认是否信任该站点的证书,选择信任后,便可以查看该站点的内容了。

由于大多数 Apache 服务器都是在服务器启动时自动启动,为了避免在启动 Apache 时输入密码,可以用以下命令生成不加密的 mars-server.key 文件:

openssl rsa -in mars-server.key -out mars-server.key.insecure
用新生成的 mars-server.key.insecure 代替原有的 key 文件即可。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
我想下个好点的股市行情软件,光大证券金阳光app怎么样啊? 股票行情软件下载选哪个比较好?光大证券的金阳光app怎么样? 光大证券开户APP是什么 光大用什么炒股软件 家里房顶漏水怎么办 房顶漏水最好补漏方法 中石化薪资揭秘(天津、海南、镇海、中科、茂名) 专科生在茂名石化待遇怎样 茂名石化正式工待遇怎么样 茂名石化待遇如何 729-08胶皮是内能的吗 LOtriderm`Cream这个药膏的用途 day cream化妆品中的意思 Cream 成员 cream翻译 cream. 中文 cream是可数名词还是不可数名词? cream 怎么读 养鲜多和养乐多有什么区别? 国产纯电动轿车冬天暖风怎么办 电动轿车如何开暖风吹霜? 陕西联通宽带如何查询余额? 轿车里,120w暖风管用吗? 冬天冷可以用电暖风吹轿车底部机油处让机油缓慢变稀然后再启动会好些吧? 电动轿车开暖风几个小时睡着会死人吗 市政二建考试应该看哪些书 我想问一下各位大神 我准备考二建 都需要哪些复习资料 顺带能不能说一下现在二建都考那些科目? 求二建的学习资料 《二建市政重点笔记整理》pdf下载在线阅读全文,求百度网盘云资源 为什么手机QQ下载rar文件一半的时候就失败了,有什么方法可以解决吗? 有beautiful girl一词的歌 。俩男的唱的 。MV有很多女的变来变去得 52−6⨯=4的过程? 贡桌上馒头开花怎么回事? 52 -x÷6=2怎么算? 馒头为什么会爆开的 52-✘÷6=24怎么算? 内耳眩晕症(美尼耳氏综合症)有何特效疗法? 内耳性眩晕症服什么药效果好? 内耳眩晕症! 内耳眩晕症如何治疗 请问我患的是内耳性眩晕症,(才发生五天... 用什么药可以治疗眩晕症 如果是耳石症,内耳性眩晕应当怎么治疗 眩晕症怎么治疗?急急急!! 内耳性眩晕症引发的眩晕以及听力下降能否治疗痊愈! 内耳性眩晕症土方治疗方法 武汉维创品智专利代理事务所(特殊普通合伙)怎么样? 天津机场扩建T3航站楼有通往欧洲国家吗? 武汉天河机场的T3航站楼什么时候开建啊?建成后规模如何啊? 天津T3航站楼指挥长是谁? 北京首都机场有去天津滨海国际机场的大巴吗?