Commit Graph

53 Commits

Author SHA1 Message Date
luwenpeng
f764a4bae1 优化 watchdog tfe worker thread 的实现逻辑 2021-08-20 15:36:58 +08:00
luwenpeng
1fe60d2428 废除 tfe-kmod, tfe 直接与 kni 通信
* 新增 enable_kni_v3=1 配置项
	* develop_build_release 分支关闭 ASAN 检测
	* 修正根据 CMSG 恢复 TCP 链接时没有正确填写 TCP 时间戳启用选项的问题
2021-04-21 13:26:07 +08:00
luwenpeng
99731ae689 TFE 禁用 tcmalloc 2020-10-27 12:43:48 +08:00
luwenpeng
fd5d99f40f libbreakpad 由静态连接改为动态连接 2020-10-19 12:06:14 +08:00
luwenpeng
9d15d655ed TSG-2967 TFE 使用 JA3 优化 SSL pinning 2020-09-22 19:48:28 +08:00
luwenpeng
cd26e3e6c1 TSG-1531 TFE 新增 DOH 插件
1.DOH 协议解析
2.DOH 协议还原
3.DOH POST请求 early response
4.DOH 策略扫描
5.tfe plugin 支持多个 bussiness 插件调用
6.Maat_feather 的创建从 pangu 剥离(涉及pangu/doh/ssl-policy)
7.增加 kafka 日志
8.增加测试用例
2020-07-06 16:16:21 +08:00
luwenpeng
3a68352964 #177 在用户访问的过程中,获取未见到过、可信的中间证书 2019-12-24 13:46:55 +08:00
luqiuwen
cd0fd187ad #165 调整TFE进程的启动方式,使用notify方式启动;
* 调整notify超时时间为300秒;
* 调整日志的记录方式,当使用notify方式启动时,初始化完毕后不在向标准输出写入日志。
2019-09-23 16:10:53 +08:00
luqiuwen
dbe9fba033 #159 集成Google Breakpad,用于生成minidump便于后期集中收集崩溃。 2019-08-20 18:41:44 +08:00
luqiuwen
10ea3ba54e 增加对KNI的Watchdog实现双向保活。 2019-06-18 18:21:00 +08:00
luqiuwen
c994077c3b 增加独立初始化maat句柄的实现 2019-06-11 15:26:14 +08:00
luqiuwen
98fa47ffd7 修正部分编译错误 2019-06-11 15:26:14 +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
luqiuwen
77aa3063f7 使用cmsg公共库解析cmsg信息,对业务层提供获取cmsg句柄的接口 2019-06-02 16:30:59 +08:00
luqiuwen
1a45ea858c 变更kni系列名称到scm 2019-06-02 16:30:59 +08:00
zhengchao
ea1f876eb7 拦截策略支持allow_http2的开关;恢复cmakelist漏掉的HTTP2的编译开关。 2019-05-27 14:17:52 +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
e4291c0fda 1. 暴露ssl_stream.h给业务层;2. 将ssl policy功能放到业务层插件目录。 2019-05-24 18:55:30 +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
ea0292f1b4 1. 可以获取x509证书的ct和ev状态。2. hostname不匹配,不认为是非法证书。 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
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
Lu Qiuwen
88e9eecf09 调整目录结构,增加RPM打包功能
* 调整目录结构,原conf目录分拆为conf和resource目录。其中,conf目录在软件更新时不会更新,resource则更新;
* 增加RPM打包功能,利用CI发布软件的RPM,对应调整GitLAB-CI脚本。
2018-11-16 20:59:49 +08:00
Lu Qiuwen
6bcd2cb9a6 Close #77 修正http_half_private结构体未完全释放的问题 2018-11-14 15:55:51 +08:00
zhengchao
198818a2aa 完成tfe中相关功能的开发,回归测试通过。 2018-10-31 19:44:13 +08:00
zhengchao
96feddefb8 修改cache-client依赖hiredis(修改版)的CMakeList.txt,编译通过。 2018-10-25 20:40:10 +08:00
zhengchao
26be2a60cc 修复由于不正确链接libcurl,导致的缓存上传触发较晚的bug。 2018-10-19 16:01:42 +08:00
zhengchao
294201ecd8 缓存能跑起来了。 2018-10-14 18:45:02 +08:00
zhengchao
5958c7fab1 多命中情况下,优先级:WHITELIST>REJEC >REDIRECTT>REPLACE。相同优先级执行配置ID较大的。MONIT支持多命中。 2018-09-29 16:05:10 +08:00
zhengchao
5e6dde5e51 使用pcre2替代glib从中的regex进行替换。 2018-09-28 15:50:47 +08:00
崔一鸣
a62d9ac7f6 和tfe联调完成,修复一些已知问题,增加一些日志 2018-09-19 17:07:31 +08:00
Lu Qiuwen
fcb219c521 集成HTTP业务层插件,修正集成后rdkafka缺少第三方连接库导致的编译问题。 2018-09-18 14:01:10 +08:00
崔一鸣
e89ac9d9da fix bugs 2018-09-14 17:30:12 +08:00
Lu Qiuwen
9e59110f8a 变更HTTP业务层回调函数定义,增加session系列操作方法定义及虚接口实现。
* 不提供业务层针对单个数据包(段)的处理函数(返回值),业务层只能对单个session定义操作;
* 通过session的方法(函数)通知解析层对该session的处理方法。
2018-09-12 15:29:35 +08:00
崔一鸣
b5a937bad6 fix memory leak bugs 2018-09-07 17:49:15 +08:00
Lu Qiuwen
b6a2250786 完成HTTP请求侧解析调试,可以解析请求的URL。
* 增加插件管理功能(简单实现),可以调用解析层插件;
* 调整HTTP请求侧解析回调函数实现;
* 增加hexdump工具函数;
2018-09-07 17:27:58 +08:00
崔一鸣
636e41cfca add feature-key-keeper 2018-09-04 15:47:41 +08:00
Lu Qiuwen
6bf1a5a9c8 集成解密流量转发模块 2018-09-02 16:34:15 +08:00
zhengchao
baa409ecc8 ssl stream增加统计 2018-08-31 19:59:22 +08:00
Lu Qiuwen
c15be5af0e 增加TCP Passthrough功能实现,调通明文转发流程。 2018-08-30 15:53:41 +08:00
Lu Qiuwen
e9ebe512c7 变更ssl.cpp为ssl_utils.cpp,修正了编译错误,整体编译通过。 2018-08-28 15:25:09 +08:00
Lu Qiuwen
8869f1888c 变更stream系列文件的名称,修正了部分编译错误
* 变更stream系列文件的名称为ssl_stream, tcp_stream等;
* 变更stream.h为platform.h,因该文件为平台整体公用;
* 修正了ssl_stream, ssl_sess_cache文件中的编译错误,部分实现的bug。
* 调整了tfe_future的路径,由平台实现改为公用组件。
2018-08-27 21:10:45 +08:00
Lu Qiuwen
7cccc70b53 实现从KNI中接收上行、下行连接FD的功能。 2018-08-22 19:30:06 +08:00