Commit Graph

357 Commits

Author SHA1 Message Date
luqiuwen
306dcc6ce0 增加在流结束时调用cmsg发送接口的实现 2019-06-02 17:52:48 +08:00
luqiuwen
5679dc9d11 增补acceptor_kni_v1和acceptor_kni_v2的提交 2019-06-02 17:22:41 +08:00
luqiuwen
7462a558c1 修正stream_proto从cmsg读出的方式 2019-06-02 17:18:34 +08:00
luqiuwen
57f5a4d906 增加sender_scm的初始化调用 2019-06-02 16:30:59 +08:00
崔一鸣
e4f490fcd3 添加sender_scm开关 2019-06-02 16:30:59 +08:00
崔一鸣
cc126a73a1 增加和kni通信接口 2019-06-02 16:30:59 +08:00
luqiuwen
28becac88d 移植KNIv1版本的acceptor到4a分支,兼容原kni的实现。 2019-06-02 16:30:59 +08:00
zhengchao
bc41051da2 ssl stream和ssl policy对接tfe_cmsg_xx。 2019-06-02 16:30:59 +08:00
luqiuwen
77aa3063f7 使用cmsg公共库解析cmsg信息,对业务层提供获取cmsg句柄的接口 2019-06-02 16:30:59 +08:00
luqiuwen
a4f23f73e9 在scm acceptor中增加解析应用层协议的实现 2019-06-02 16:30:59 +08:00
luqiuwen
3dfe680a76 修正当ssl在以peek方式解析clienthello并返回not_enough_buff时,没有传入ev_base导致的连接建立失败的问题。 2019-06-02 16:30:59 +08:00
luqiuwen
1a45ea858c 变更kni系列名称到scm 2019-06-02 16:30:59 +08:00
luqiuwen
c1ff35bed7 适配基于tfe-kmod的连接接收方式 2019-06-02 16:30:59 +08:00
zhengchao
5cdad62fc7 未开启session cache时,关闭upstream ssl的cahce,避免buffer event 报告999:invalid session id:20:SSL routines:369:tls_process_server_hello。 2019-05-30 12:34:42 +08:00
zhengchao
ea1f876eb7 拦截策略支持allow_http2的开关;恢复cmakelist漏掉的HTTP2的编译开关。 2019-05-27 14:17:52 +08:00
zhengchao
e53f5ebcf2 处理Client Hello中的GREASE close #134 2019-05-25 19:12:55 +08:00
zhengchao
7431a0e50a 修改ssl_chello_parse相关函数,处理TLS Grease导致的客户端标识不准确,详见 https://security.stackexchange.com/questions/176951/google-chrome-weird-random-cipher-suite 2019-05-25 15:54:28 +08:00
崔一鸣
72d170aec2 添加ssl_cipher_suites_convert函数 2019-05-24 23:15:58 +08:00
zhengchao
4bac00157b 修复笔误导致的段错误。 2019-05-24 20:51:26 +08:00
zhengchao
eba9031b86 将client hello中的签名算法、EC算法增加到客户端标志。 2019-05-24 20:42:19 +08:00
崔一鸣
75208aad0f 修改chello_parse函数,支持解析supported_versions, supported_groups,signature_algorithms,修改cipher_suites解析结果为原始报文 2019-05-24 20:25:35 +08:00
zhengchao
7a8561ae5a #130 调试阶段暂时关闭tcmalloc 2019-05-24 19:33:36 +08:00
zhengchao
c85b200f69 手工合并李杰stek-roation分支,支持session ticket rotation,详见 #123 2019-05-24 18:55:33 +08:00
zhengchao
f66658117a 支持通过拦截策略指定ssl最大和最小版本号。 2019-05-24 18:55:32 +08:00
zhengchao
6b197e3347 证书校验选项及校验失败动作自测通过。 2019-05-24 18:55:32 +08:00
zhengchao
d553c0f5f6 Close #132 获取downstream session cache时,错误传参。 2019-05-24 18:55:32 +08:00
zhengchao
dc7b969d74 上次提交遗留笔误。 2019-05-24 18:55:31 +08:00
zhengchao
4cd42b9f95 1. 客户端报SSL_R_SSLV3_ALERT_CERTIFICATE_UNKNOWN错误时,不作为maybe pinning; 2. ssl policy中增加protocol_errors的bypass开关。 2019-05-24 18:55:31 +08:00
zhengchao
1f73b4832d 在ssl policy中处理keyring。 2019-05-24 18:55:31 +08:00
zhengchao
e4291c0fda 1. 暴露ssl_stream.h给业务层;2. 将ssl policy功能放到业务层插件目录。 2019-05-24 18:55:30 +08:00
zhengchao
7cbd432a25 业务层拦截策略(ssl policy)对接ssl stream。 2019-05-24 18:52:34 +08:00
zhengchao
61bc647d1f 编写连接业务层的代码。 2019-05-24 18:52:33 +08:00
zhengchao
3f305a9e88 Pinning,Mutual authentication,EV等passthrough功能在windows10测试通过。 2019-05-24 18:52:33 +08:00
zhengchao
dda60c674c up session cache校验ssl version,增加ssl状态读写的接口。 2019-05-24 18:52:32 +08:00
zhengchao
630a3dba60 可以检测certificate pinning和mutual authentication。 2019-05-24 18:52:32 +08:00
zhengchao
ace7dd4379 增加ssl_service_cache模块,用以记录历史的证书和pinning状态。 2019-05-24 18:52:32 +08:00
zhengchao
ea0292f1b4 1. 可以获取x509证书的ct和ev状态。2. hostname不匹配,不认为是非法证书。 2019-05-24 18:52:31 +08:00
zhengchao
ae678d5128 证书校验选项调试通过。 2019-05-24 18:52:31 +08:00
zhengchao
f4f7a623a5 允许设置证书校验选项。 2019-05-24 18:52:31 +08:00
fengweihao
10c0ef7b76 *由于git rebase冲突删除原tfe-new-http2分支
*提交包括http2数据替换,转发,截断,缓存代码
*合并最新develop-tfe3a后,http2验证代码提交
*http2重构验证代码提交
*http2添加br压缩解压缩接口和测试用例
*http2定时删除session信息代码提交
*修复bug,访问二级链接时由于nghttp2库收到control ping后,自发control ping包
造成链接断开后重连现象
*修复bug, 链接建立后服务端优先发送control包,未处理此数据包,造成页面访问失败
2019-05-24 18:45:44 +08:00
zhengchao
fcb1581a1c keykeeper的本地缓存,使用keyring_id:证书指纹作为key,在导入可信证书后,非法证书变为合法证书,但缓存查询到的仍是非法证书,导致 #119 。变更key为keyring_id:is_cert_valid:证书指纹。 2019-02-28 15:54:27 +08:00
zhengchao
f349d1254f tcp stream使用ssl stream提供的函数输出ssl错误日志。 2019-02-26 19:47:16 +06:00
luqiuwen
df025b3d9f Close #116 去除根据ClientHello镜像上游SSL版本的功能,增加在连接摘要日志记录SSL版本和SNI的功能 2019-02-19 15:11:15 +06:00
zhengchao
71f7452413 增加ssl_stream_dump_info函数,输出ssl版本号、sni,以进一步定位 #116 2019-02-18 18:25:19 +06:00
zhengchao
2d34aafa48 增加session cache的开关:no_session_cache,默认为0,即启用session cache。 2019-02-18 15:48:36 +06:00
luqiuwen
9666280834 修正cJSON.h的包含问题 2019-01-16 16:59:49 +06:00
luqiuwen
dd5bc45edc 排查部分网站打不开的原因,增加get_keyring_from_response的日志信息 2019-01-16 15:36:28 +06:00
zhengchao
124b7f083f 增加no_mirror_client_cipher_suite开关;ssl_utils.cpp改名后cmakelist未响应修改; 2019-01-14 20:35:29 +06:00
zhengchao
f21d51de3d 1. ssl增加no_verify_cert开关,可以关闭证书校验;
2. ssl_utils.cc改名为ssl_utils.cpp;
3. 暂时使用tcmalloc接管内存分配;
4. 原work thread选择算法存在bug,暂时改为轮询;
5. FieldStat状态输出暂时改为Field格式,便于观察实时性能,Future的状态输出暂时改为累计值;
2019-01-14 18:23:46 +06:00
luqiuwen
41eca75fa3 修正certstore_rpc_on_succ()中添加字符串结尾0导致内存越界的问题 2019-01-08 15:09:38 +06:00