二、ZeroNews TLS终止简介默认情况下,ZeroNews 根据您创建的映射类型以不同的方式处理 TLS 连接。 对于TLS 协议建立的 TLS 映射服务,ZeroNews 默认不会终止TLS。 您必须选择 TLS 终止的位置:ZeroNews提供两种不同位置的TLS终止:1、在内网ZeroNews Agent处终止;2、在上游服务处终止如果您选择在上游服务(即内网服务)终止,ZeroNews 使用HTTPS映射-云端边缘终止如果您无法在上游服务终止您的TLS,且不需要在 ZeroNews Agent 终止 TLS,您可以通过 ZeroNews 在我们的云端边缘上为您终止 TLS,如上所述,后续的数据我们通过自研加密隧道将流量转发到您的代理 只需三步即可完成部署:● 订阅服务:启用企业或团队订阅服务,或独立开通“自有域名+TLS终止”功能;● 域名配置:提交自有域名并通过自动审核;● 映射创建:下载并启用Agent,在控制台创建TLS映射并选择终止位置
一、测试背景为验证 ZeroNews 不同TLS终止模式对数据可见性的影响,本次通过抓包分析HTTPS映射及TLS终止场景下的流量特征,重点关注加密边界变化。 二、核心验证结果1、HTTPS映射验证(边缘终止)2. TLS终止模式对比三、技术建议与注意事项1. 模式选择策略端到端加密需求(金融/医疗等场景)采用上游服务终止调试与日志分析需求 使用Agent本地终止公网传输安全 所有模式均通过TLS 1.2/1.3保障传输层安全2. 证书管理要求上游终止模式需用户自行维护证书生命周期,ZeroNews不托管私钥。
TLS 终止的概念TLS(传输层安全协议)终止是指在网络代理节点(如反向代理服务器)上结束加密连接的过程。 传统 TLS 终止方案的痛点在常规内网穿透工具中,TLS 终止通常由服务提供商集中管理,可能导致以下问题:密钥控制权缺失 :用户需将私钥托管给服务商,无法完全掌控数据解密权限。 ZeroNews 的 TLS 终止方案:差异化设计ZeroNews 提供三种 TLS 终止模式,通过灵活的架构解决上述痛点:1. ZeroNews边缘终止模式(基础方案)实现方式 :TLS在 ZeroNews 全球边缘节点解密,解密后的流量通过加密隧道(如zeronews tunnel协议)转发至用户内网服务。 ZeroNews Agent 终止模式实现方式:由用户自行管理证书,在Agent本地配置要终止TLS流量的域名证书, 完成对用户访问的TLS流量进行解密,并将解密后的流量转发至用户内网服务,同时将内网服务响应的流量进行加密转发
本文将解析 TLS 的基本原理,探讨典型业务场景,并重点对比 ZeroNews 支持的 三大 TLS 终止模式 在真实业务环境中的防护结果与价值。 业务场景:为何 TLS 终止的选择至关重要在以下典型业务场景中,选择合适的 ZeroNews TLS 终止模式直接关系到业务安全与合规:支付回调接口测试(如 WeChat, Stripe, PayPal 三大 TLS 终止模式防护结果分析及对比ZeroNews 支持三种主要的 TLS 终止模式,其安全防护结果对比如下:ZeroNews 边缘终止(ZeroNews Edge Termination)实现方式 ZeroNews Agent 终止(ZeroNews Agent Termination)实现方式:由用户自行管理证书,在 Agent 本地配置要终止 TLS 流量的域名证书, 完成对用户访问的 TLS 对于 TLS 终止模式选择的决策ZeroNews 的 TLS 终止功能为不同安全需求的业务场景提供了灵活选择。
自定义域名服务重磅上线]TLS 终止模式详解与操作ZeroNews 提供两种 TLS 终止位置选择,适应不同架构需求:1. 在 ZeroNews Agent 终止:a. 关键选择:TLS 终止位置 (选择“在 ZeroNews Agent 终止” 或 “在上游服务终止”)。f. 点击“创建”。 ● 端口冲突规避: 同一个自有域名(HTTPS:443)不能同时创建 HTTPS 协议的映射和 TLS 终止映射。 TLS 终止的价值与挑战● 核心价值: TLS 终止模式的核心优势在于将加密数据的最终控制权(私钥)完全交还企业自身。ZeroNews 仅提供加密数据的传输通道。 ZeroNews 提供包括 HTTPS 映射、服务商管理 TLS 以及企业自持私钥 TLS 终止在内的多种安全层级选项,以满足不同场景和用户能力的需求。
在TLS加密通信中,终止位置(即解密发生的物理节点) 直接决定了数据的可见范围与安全边界。不同模式将形成完全不同的信任模型,以下是 ZeroNews 三种模式技术分析与安全评估。 模式一:上游服务终止(真正的端到端加密)技术路径:客户端 →(TLS加密)→ ZeroNews隧道 →(保持加密)→ 用户服务器(自行加解密)安全核心:ZeroNews 仅作为加密通道,无权访问TLS会话密钥安全优势 适用场景:处理极度敏感数据(核心支付、高机密通信、受监管数据)的业务模式二:Agent本地终止(开发调试模式)技术路径:客户端 →(TLS加密)→ ZeroNews → Agent本地解密 → 明文至应用核心机制 模式三:边缘终止(ZeroNews默认证书)技术路径:客户端 →(TLS加密)→ ZeroNews边缘节点 → 明文HTTP → 用户服务技术特征:● 依赖 ZeroNews 的泛域名证书● 配置简单适用场景 工程实践建议● 金融/医疗业务:采用 ZeroNews 上游服务终止● 开发环境: ZeroNews Agent模式● 临时场景: ZeroNews 边缘终止技术本质而言,TLS终止位置本质是信任边界的划分
进程的终止一般由三种情况触发: 代码运行完成,正常终止(例如 return 0)。 代码运行异常,导致非正常终止(例如 Segmentation Fault)。 进程终止的常见方法 在 Linux 系统中,进程终止的常见方法包括以下几种: 正常终止 正常终止指的是进程按照预期逻辑完成任务并退出,可以使用以下方式: return 语句 当 main() 函数执行 调用 _exit() 终止进程。 导致异常终止,主要有以下几种情况: 1) 信号终止 操作系统可以通过 信号(signal) 终止进程,例如: kill -9 <PID> 发送 SIGKILL 强制杀死进程。 我们可以使用 return、exit()、_exit() 进行 正常终止,也可能因信号、非法操作等导致 异常终止。
在TLS与SSL3.0之间存在着显著的差别,主要是它们所支持的加密算法不同,所以TLS与SSL3.0不能互操作。 1.TLS与SSL的差异 1)版本号:TLS记录格式与SSL记录格式相同,但版本号的值不同,TLS的版本1.0使用的版本号为SSLv3.1。 5)密文族和客户证书:SSLv3.0和TLS存在少量差别,即TLS不支持Fortezza密钥交换、加密算法和客户证书。 2.TLS的主要增强内容 TLS的主要目标是使SSL更安全,并使协议的规范更精确和完善。 4)一致证书处理:与SSLv3.0不同,TLS试图指定必须在TLS之间实现交换的证书类型。 5)特定警报消息:TLS提供更多的特定和附加警报,以指示任一会话端点检测到的问题。
三、TLS握手 客户端与服务器在通过TLS交换数据之前,必须协商建立加密信道。协商内容包括TLS版本、加密套件,必要时还会验证证书。 四、TLS会话恢复 完整的TLS握手会带来额外的延迟和计算量,从而给所有依赖安全通信的应用造成严重的性能损失。为了挽回某些损失,TLS提供了恢复功能,即在多个连接间共享协商后的安全密钥。 1. 七、TLS记录协议 与位于其下的IP或TCP没有什么不同,TLS会话中交换的所有数据同样使用规格明确的协议进行分帧。 会话缓存与无状态恢复 无论什么情况,在接近用户的地方终止连接都有助于减少延迟,但有延迟终归快不过没有延迟。启动TLS会话缓存和无状态恢复可以完全消除“回头客”的往返时间。 TLS压缩 TLS还有一个内置的功能,就是支持对记录协议传输的数据进行无损压缩。压缩算法在TLS握手期间商定,压缩操作在对记录加密之前执行。
一.原来的基础上添加代码 """ This inline script allows conditional TLS Interception based on a user-defined strategy _establish_tls_with_client() except TlsProtocolException as e: tls_strategy.record_failure tls_strategy = None def load(l): l.add_option( "tlsstrat", int, 0, "TLS passthrough strategy tls_strategy = ProbabilisticStrategy(float(ctx.options.tlsstrat) / 100.0) else: tls_strategy _client_tls: server_address = next_layer.server_conn.address if tls_strategy.should_intercept
启动引导过程 TLS 作用 RBAC 作用 kubelet 首次启动流程 手动签发证书 几个重要术语 kubelet server CSR 请求类型 TLS bootstrapping 主要流程细节 证书及配置文件作用 众所周知 TLS 的作用就是对通讯加密,防止中间人窃听;同时如果证书不信任的话根本就无法与 apiserver建立连接,更不用提有没有权限向 apiserver 请求指定内容。 在开启了 TLS 的集群中,每当与集群交互的时候少不了的是身份认证,使用 kubeconfig(即证书) 和 token 两种认证方式是最简单也最通用的认证方式。 动态签署; ---- 启动引导过程 TLS 作用 众所周知 TLS 的作用就是对通讯加密,防止中间人窃听;同时如果证书不信任的话根本就无法与 apiserver 建立连接,更不用提有没有权限向 apiserver api 的权限;在配合 TLS 加密的时候,实际上 apiserver 读取客户端证书的 CN 字段作为用户名,读取 O 字段作为用户组。
,已经详细的介绍了 acme.sh 工具的使用,使用他可以方便的生成和自动续订 TLS 证书,本文就不过多赘述 当然,也可以使用各大国内平台的免费证书小白式申请(比如:腾讯云、阿里云) 转换 TLS 证书 证书指纹填入 数值数据 配置 TLS 版本 这一步是可选的,但是为了安全,仍然建议配置 TLS 1.0 与 TLS 1.1 已经是不安全的协议,因此在任何场景我们都尽量不要使用他们 具体原因可参考 https - ) Windows OS TLS 1.0 Client TLS 1.0 Server TLS 1.1 Client TLS 1.1 Server TLS 1.2 Client TLS 1.2 Server 1.0 、 TLS 1.1 、TLS 1.3 这样的项 在新建出来的 TLS X.X 项中,再次新建 Server 项 鼠标右键点击 Server 项,在打开的上下文菜单中依次选择 “新建” — “DWORD 1.3 设置为启用,TLS 1.0 、 TLS 1.1 设置为禁用,效果如图 当然,顺带提一下,这一项也适用于客户端,像 Server 项那样配置 Client 项既可,我这边配置客户端启用 TLS 1.3
TLS 是一个独立的协议;高层协议可以透明地位于 TLS 之上。 然而,TLS 标准并未指定协议如何增强 TLS 的安全,如何发起 TLS 握手以及如何理解认证证书交换,这些都留给运行在 TLS 之上的协议的设计者和实现者来判断。 本文档定义了 TLS 1.3 版。 虽然 TLS 1.3 不是直接的与之前的版本兼容,所有版本的TLS都包含一个版本控制机制,即允许客户端和服务器通过协商,选出通信过程中采用的 TLS 版本。 三、TLS 1.3 和 TLS 1.2 主要的不同 下面描述了 TLS 1.2 和 TLS 1.3 的主要的差异。除去这些主要的差别以外,还有很多细微的不同。 四、对 TLS 1.2 产生影响的改进 TLS 1.3 规范中还定义了一些可选的针对 TLS 1.2 的实现,包括那些不支持 TLS 1.3 的实现。
HTTPS、SSL、TLS 1. “HTTP”是干嘛用滴? 首先,HTTP 是一个网络协议,是专门用来帮你传输 Web 内容滴。关于这个协议,就算你不了解,至少也听说过吧? 标准化之后的名称改为 TLS(是“Transport Layer Security”的缩写),中文叫做“传输层安全协议”。 很多相关的文章都把这两者并列称呼(SSL/TLS),因为这两者可以视作同一个东西的不同阶段。 3. “HTTPS”是啥意思? 解释完 HTTP 和 SSL/TLS,现在就可以来解释 HTTPS 啦。 咱们通常所说的 HTTPS 协议,说白了就是“HTTP 协议”和“SSL/TLS 协议”的组合。 你可以把 HTTPS 大致理解为——“HTTP over SSL”或“HTTP over TLS”(反正 SSL 和 TLS 差不多)。
在计算机系统中,进程是操作系统分配资源的基本单位,而进程终止则是因为则是因为操作系统由于某种原因结束一个进程的执行。这可能是因为进程完成了某种任务,也可能是因为出现了错误或异常。 那么终止一个进程的过程和创建一个进程的顺序是相反的,终止一个进程的本质就是:释放曾经的代码和数据所占的空间,释放内核数据结构。 1.利用echo查看进程退出情况 语法: echo $? 进程终止 4.1 进程退出的场景 代码运行完毕,结果正确。 代码运行完毕,结果不正确。 代码异常终止。 4.2 进程常见的退出方法 正常退出: 从main返回。 调用exit。 \_exit 异常退出: ctrl + c,信号终止。 当进程死循环时,除了使用ctrl+c外,还可以使用kill -9 pid来杀死进程。 %d\n",getpid()); sleep(1); } return 0; } 4.3 exit函数和_exit函数 _exit 函数参数:status定义进程的终止状态
甲乙两人赌技相同,各出赌注500元,约定:谁先胜三局,则谁拿走全部1000元,现已赌了三局,甲二胜一负而因故要中止赌博,问这1000元要如何分,才算公平? 那么怎么来衡量这个公平呢,如何按照现状,甲拿
main函数中执行return 0; 调用exit函数,函数原型:void exit(int status); 调用_exit函数,函数原型:void exit(int status); 进程退出(进程终止 进程可以通过abort来终止另外一个进程,一般情况下,只有父进程才会调用这个。 return只能结束函数,当他结束main函数的时候才是进程退出;exit函数用于正常结束进程。 调用abort函数 进程收到了某个信号,而该信号使程序终止。 无论进程是如何结束的,内核都会执行一段代码,这段代码将为所有打开的文件执行关闭操作,并且释放它所使用的资源。 大多数情形下,我们希望子进程的终止能够被父进程知道。父进程可以使用wait和waitpid来取得子进程的终止状态。 当父进程在子进程之前终止,那么子进程将会被init进程收养。
2 TLS基础 TLS同时使用对称算法、非对称算法。 TLS问题排查也就面临两类问题: TLS握手阶段 真正加密还没开始,所以依托明文形式的握手信息,还可能找到握手失败原因。 “TLS要是能随便解密,是不是说明这协议还有漏洞?”TLS很安全的。这里说的解密肯定有前提条件,和数据安全性不冲突。 案例学习TLS握手失败的问题排查思路。 5.1 TLS证书链 TLS证书验证是“链式”机制。 这是TLS握手中的重要内容,我们的案例1就是因为无法协商出公用的密码套件,所以TLS握手失败了。
1.2 强制终止 在某些情况下,进程可能无法响应SIGTERM信号,这时可以使用SIGKILL信号,强制终止进程。 使用 pkill 和 killall 终止多个进程 2.1 根据用户名终止进程 使用pkill可以根据用户名终止属于特定用户的进程。 使用 xkill 图形界面终止进程 3. 使用 xkill 图形界面终止进程 在Linux系统中,xkill是一种方便的图形界面工具,允许用户通过鼠标点击终止不响应的窗口或进程。 3.3 观察终止效果 点击窗口或进程后,xkill将向其发送SIGKILL信号,强制终止它。观察到窗口关闭或进程终止后,表示成功使用xkill进行了终止操作。 pkill -f "pattern" 4.3 定时终止进程 使用cron定时任务,结合kill命令,可以定时终止指定的进程。 结论 终止进程是Linux系统管理中的一项核心任务。
Linux有时需要手动终止运行的进程,kill命令使用起来比较麻烦,本文记录killall安装使用方法。 在使用kill命令终止进程需要先获取进程PID,而使用killall命令直接使用进程名称,即可终止进程。 命令 killall [参数] [进程名] 命令参数 参数选项 解释说明 -i 交互模式,终止进程前先询问用户是否确认 -g 终止该进程组的进程 -I 忽略大小写 -q 如果没有终止进程则不提示 -l 列出所有的已知信号名称 -r 使用正则表达式匹配要终止的进程名称 -u 终止指定用户的进程 -w 等待所有被终止的进程死去。