作者Qbsuran (Qbsuran)
看板C_and_CPP
标题[问题] 用Openssl架设HTTPS伺服器
时间Wed Nov 25 20:45:55 2015
开发平台(Platform): (Ex: VC++, GCC, Linux, ...)
C
额外使用到的函数库(Library Used): (Ex: OpenGL, ...)
OpenSSL
问题(Question):
因为作业需求,需要用C架设一个HTTPS伺服器(192.168.1.101)
目前Client端利用Chrome直接连网址,像是
https://192.168.1.101
Handshake(交换Key)已正常完成,但是Server端等不到Client端的HTTPS GET封包
用Wireshark抓封包发现完成Handshake後,Client端马上送出FIN+ACK和RST结束连线
Client的Chrome开发人员工具有看得到HTTP表头的封包,但是只有Requst URL跟简单的User-agent
但是如果另外用C写的Client端程式,Write的资料Server端收得到
是否Server端有少东西要主动通知Client可以送请求封包了?
预期的正确结果(Expected Output):
Server端收到Client端的HTTPS GET封包
错误结果(Wrong Output):
Client端没有主动送出HTTPS GET封包
程式码(Code):(请善用置底文网页, 记得排版)
http://pastie.org/10579923
补充说明(Supplement):
Server端是在iOS(JB)上,执行Server程式的时候port 443已开启
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 180.177.166.17
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1448455563.A.4C5.html
自己问题自己回, 似乎是Chrome安全性问题所以没有送出GET封包, 换Safari就OK了
※ 编辑: Qbsuran (120.125.11.142), 11/26/2015 09:18:31
1F:推 LunaFox: SSLv3 is disabled on Chrome, try TLSv1_server_method 11/28 18:26
2F:→ Qbsuran: 成功了! 谢谢, 另外问一下, 那我应该要怎麽选择method 11/28 23:19
4F:→ LunaFox: 简言之SSLv2v3都已被视为不安全,应使用TLS 1/1.1/1.2+ 11/29 23:04
5F:→ Qbsuran: 感谢!这方面关键字有点难下 11/30 11:50