您好,欢迎光临系统之家!

系统之家 - 为您打造全网最优秀的系统论坛!

 找回密码
 注册
搜索

ubuntu+apache+websocks+tls配置https自签证书过程遇到的坑

查看: 69|回复: 0

[应用] ubuntu+apache+websocks+tls配置https自签证书过程遇到的坑 [复制链接]

Rank: 64Rank: 64Rank: 64Rank: 64

UID
5
帖子
6493
威望
4257 点
黄金
10420 金币
在线时间
4344 小时
注册时间
2005-5-13
最后登录
2019-10-21

终身成就奖 宣传大使奖

发表于 2019-9-8 17:10:17 |显示全部楼层
CentOS容易的多,一句yum install mod_ssl,该有的就都有了,但ubuntu却会有些坑。
本贴介绍了ubuntu+apache的组合下开启ws和tls以及实现proxy_pass。

首先:一条命令利用OpenSSL即可创建一条自签名密钥与证书:
  1. sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/ssl/selfsigned.key -out /etc/ssl/selfsigned.crt
复制代码
注1:
req和-x509: 自签名证书,而非生成普通的证书签名请求。
-nodes: 跳过密码保护证书
-days 3650: 此选项选定证书的有效时限。我们将其设定为10年。
-newkey rsa:2048: 生成一份新证书与新密钥,其中rsa:2048部分指定生成RSA密钥,长度为2048位。
-keyout: 生成的密钥文件保存位置。
-out: 创建的证书保存位置。
注2:
Organization Name是使用人
Organizational Unit Name是使用部门
Common Name是颁发者

配置文件样例:
  1. <VirtualHost *:443>
  2.   ServerName domain.mine
  3.   SSLCertificateFile /etc/ssl/selfsigned.crt
  4.   SSLCertificateKeyFile /etc/ssl/selfsigned.key
  5. ...
  6. </VirtualHost>
复制代码

报错:Invalid command 'SSLCertificateFile'
  1. a2enmod ssl
复制代码
报错:Invalid command 'ProxyPass'
从mods-available复制 proxy* ../mods-enabled
从mods-available复制 xml* ../mods-enabled

报错:Invalid command "Header"
  1. sudo a2enmod headers
复制代码
报错:no RSA or DSA server certificate found
apache配置文件中缺少"SSLEngine on"

service apache2 restart卡住,日志报错:
Failed to lookup provider 'shm' for 'slotmem'
从mods-available复制 slot* ../mods-enabled

tls实现了加密,因为ws数据可以被apache2转发,所以有这么个组合。
这个组合使得在不影响网站使用的同时顺手把其它应用的ws数据转发进来。

最后一个大坑在这:怎么让apache把数据转交给本机的其它ws应用。正确的配置其实应该是酱婶的:
首先开启rewrite
  1. sudo a2enmod rewrite
复制代码
然后在apache的443部分配置文件中
  1. RewriteEngine On
  2.         RewriteCond %{HTTP:Upgrade} =websocket [NC]
  3.         RewriteRule /(.*)           ws://127.0.0.1:10000/$1 [P,L]

  4. SSLProxyEngine On
  5.         Proxypass /dir http://127.0.0.1:10000
  6.         ProxyPassReverse /dir http://127.0.0.1:10000
复制代码





郑重声明:
1. 本人过去、现在以及将来都不认识楼主,且自古以来与楼主无利益关系。
楼主表述之事与本人无关,只是本着"看贴回贴,利人利己的中华民族优秀传统美德",顺便凑个热闹.
2. 本人在此留言均为网络上复制,用于检验电脑键盘录入、屏幕显示的机械、光电性能。
并不代表本人局部或全部同意、支持或者反对楼主观点。

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

回顶部