本文目录

v1.3.x

GoEdge v1.3.9(2024-05-20)

GoEdge 1.3.9版本主要提供:

  • 实现票据登录,可以实现管理员单点登录
  • 简化数据库部署和配置
  • 优化节点IP名单上传并发

GoEdge v1.3.8(2024-04-30)

GoEdge 1.3.8版本主要提供:

  • 修改集群中节点的并发读/写数的功能
  • 修复使用MMAP读取文件时map和unmap过慢的问题

GoEdge v1.3.7(2024-04-29)

GoEdge 1.3.7版本主要修复Bug。

  • 修复部分Linux发行版本中管理系统和用户系统无法启动或崩溃的问题
  • 边缘节点增加读写线程限制,可以大幅降低系统负载
  • 部分WAF和CC相关特殊URL不计入指标统计

GoEdge v1.3.6(2024-04-22)

  • 修复非80/443端口回源跟随无法正确识别地址的问题

GoEdge v1.3.5(2024-04-22)

注意:本次版本升级需要花一定时间用于升级数据库,请耐心等待升级完成。

开源版本

GoEdge v1.3.5开源版本改进索引存储引擎、提升性能、大幅优化IP名单。

管理系统 EdgeAdmin

  • 缓存改进
    • 缓存策略中增加“启用MMAP”选项,启用后,节点自动使用MMAP读取缓存文件
    • 集群设置增加自动硬盘TRIM选项,启用后,节点自动定时执行fstrim,以提升SSD硬盘性能,默认自动启用
    • 正在执行中的缓存任务状态从“执行中”文字改为“部分完成”,以便于减少用户对此功能的误解
  • IP单改进:
    • 更好地支持IPv6,现在真正地支持IPv6范围
    • 简化添加IP操作,自动识别IPv4和IPv6,并能快速输入IP范围和CIDR
    • 现在添加的CIDR可以直接在列表中显示原始的格式
  • WAF改进
    • WAF策略增加JSCookie动作设置;拦截动作增加“失败全局封禁“选项;人机识别动作增加“失败全局封禁”选项
  • 管理系统安全性改进
    • 使用本地SID二次校验增强管理系统安全性
    • 用户使用反向代理访问系统时主动引导用户设置“自定义客户端IP报头“,用来改进用户经常自动退出的问题
    • 系统安全设置中增加“仅从自定义报头中获取IP”选项
    • 增加 edge-admin security.reset 命令来使用命令行重置安全设置
  • 源站相关改进
    • 源站列表中增加快速停用/启用某个源站的功能
    • 源站地址填写为HTTP时,自动检测HTTPS是否可用,并建议使用HTTPS回源,提升安全性,并减少产生无限跳转的可能性
  • 限制TCP和UDP网站操作仅限于HTTP网站的功能,防止误操作不同协议的网站
  • 内容压缩改进
    • 内容压缩功能增加“例外URL“和“限制URL”设置
    • 取消内容压缩中的压缩级别设置,现在改为系统根据系统资源进行自动调节
  • UA名单支持批量添加关键词
  • 防盗链功能增加“例外URL“和“限制URL”设置
  • 集群设置–网站设置中增加“自动gzip回源”选项,可以用来节约源站流量
  • 多个功能中的例外和限制URL中增加常见图片、常见音频、常见视频等规则,方便用户选择
  • OTP认证二维码增加下载链接
  • 删除一直未实现的Unix协议相关内容
  • 修复手机下左侧主菜单太宽的问题
  • 修复因系统glibc版本过低无法启动的问题

API节点 EdgeAPI

  • 优化节点上传指标数据程序,现在只上传变更的部分
  • IP名单搜索IP时同时搜索IP范围,现在只要范围内包含搜索的IP,即会出现在搜索结果里;另外“全部IP”类型的IP总是会在搜索中出现
  • 进程重启时,自动保存未保存的带宽统计数据到本地文件,以便于在重启后恢复
  • 增加edgeMetricSumStats表中total长度,以保存更大的数据
  • 修复ttlcache可能缺失回收数据的问题
  • 修复因为设置了4位版本号而导致无法自动升级SQL的问题

边缘节点 EdgeNode

  • 使用KV存储取代SQLite实现缓存索引、指标数据、IP名单、Agent管理
  • 缓存改进
    • 根据系统环境动态调整内容刷入磁盘线程数
    • 使用MMAP提升缓存读取性能
    • 增加SSD硬盘自动TRIM功能
    • 修复修改内存缓存策略导致缓存策略计算的容量越来越少的问题
    • 缓存写入结束时检查Content-Length是否和实际内容长度一致
    • 根据系统可用内存调整写入缓存到内存的阈值
    • 当使用 Range: bytes=0- 访问分区文件缓存时,只有本地已缓存完整的内容才会允许访问本地缓存,否则将回源读取内容
    • 提升Partial Content的范围数据(ranges)写入效率,现在先写入内存缓存再写入文件,避免同时产生大量的文件写操作
    • 写分区加载文件时,避免单次拓展的文件尺寸太大,比如1GiB的文件如果第一次就从末尾读取,将不会被直接缓存,避免一次性产生1GiB的硬盘空间需求
  • IP名单改进
    • 提升IP名单同步和查询性能
    • WAF策略中的IP名单也应用于网站单独设置的WAF规则
  • WAF改进
    • 提升WAF相关加密稳定性
    • 人机识别验证成功后记录到Cookie,以便于在重启、切换节点时仍能恢复验证状态,减少验证码invalid request几率
  • 优化字节缓冲区相关代码,提升性能
  • 内容压缩改进
    • 内容压缩级别改为自动调整,避免占用过多CPU
    • 减少内容压缩Pool长度,有效减少内存占用
    • zstd压缩使用低内存模式,并限制窗口尺寸,防止产生OOM问题
    • 内容压缩增加busy(繁忙)检测,在此模式下,会减少使用压缩的比例
  • 回源跟随改进
    • 修复回源跟随无法跨不同协议、不同服务器地址的问题,以往版本的回源跟随只能跟随同一个协议、同一个源站
    • 限制单次回源跟随最大跳转次数为8
  • 增加网站每日独立IP统计
  • 把一些定时任务放入到空闲时间执行,避免影响系统稳定运行
  • 修复ttlcache可能缺失回收数据的问题,此问题可能导致内存中有些数据无法正确回收

商业版本

GoEdge v1.3.5商业版本主要改进套餐变更、完善网站功能设置。

管理系统 EdgeAdmin

  • CC防护策略/5秒盾策略增加“防火墙拦截范围“选项
  • 修改套餐流量限制时,自动重置对应网站的流量限制状态
  • 修复更改网站绑定的套餐后,无法重置网站的流量限制状态的问题
  • 网站看板页面增加当天独立IP数量和当天流量
  • CC防护增加“忽略常用文件”选项
  • 计费管理中增加“允许用户管理套餐”选项

用户系统EdgeUser

  • 同步实现和管理系统一致的以下相关功能:
    • IP名单
    • CC防护
    • 源站
    • UA名单
    • 防盗链
    • URL模式(例外URL/仅限URL)
    • OTP认证
    • 内容压缩
  • 根据系统设置决定是否允许用户管理套餐
  • 修复www目录和portal目录冲突的问题,此问题可能导致 www/ 目录下文件无法直接访问

GoEdge v1.3.4(2024-03-25)

开源版本

GoEdge v1.3.4开源版本实现单体应用、增强管理系统安全性。

管理系统 EdgeAdmin

  • 开源版本从网站列表点击网站时默认跳入设置页面
  • 实现单体应用,可以将管理系统、API节点和边缘节点放在同一个服务器或容器中
  • 集群设置–网站设置中“处理未绑定域名方式”支持跳转到网址
  • 优化管理系统和在线安装MySQL后的systemd服务配置
  • 缓存任务中键值列表中加入集群信息,以便于调试问题
  • 优化安全设置中“自定义客户端IP报头”中可以快速填入默认报头
  • 增强管理系统的安全性:
    • DNS服务商中的密钥数据以掩码方式显示
    • 节点SSH密码和私钥均以掩码方式显示
    • 默认禁止搜索引擎和爬虫访问
    • 增强XSS和SQL注入攻击防御
  • 修复创建网站时不启用访问日志导致Websocket、统计等选项失效的问题

API节点 EdgeAPI

  • 修复部分API返回格式错误
  • 优化systemd服务配置
  • 提升登录SESSION安全性
  • IP库地名中增加数百个英文地名识别

边缘节点 EdgeNode

  • 优化多处内存使用
  • 已设置不支持低版本时HTTP状态码从400改为505
  • 开启403/404重试后,仍然保留最后一次请求的源站内容
  • 支持通过环境变量EDGE_HTTP_FIREWALL_ENDPOINT来设置外部的HTTP防火墙
  • 优化systemd服务配置
  • 实验性实现新的缓存索引存储方法(默认不启用)

商业版本

GoEdge v1.3.4商业版本主要增强智能DNS。

管理系统 EdgeAdmin

  • 访问鉴权签名参数和时间戳参数支持下划线
  • 当日、当月的流量限制的持续时间显示为当日、当月
  • 升级IP库数据

智能DNS EdgeDNS

  • 智能DNS中国家/地区线路下支持各个国家的/地区下的省/州的细分
  • 域名验证的主机域名根据域名所在集群来设置,而非以往的统一设置
  • 管理系统域名列表页增加批量删除操作
  • 纠正线路拼写错误:“china:province:heibei”修改为”china:province:hebei“,”china:jilin”修改为”china:province:jilin”(仍然兼容以前的线路代号)
  • 自动分割超过255字符的TXT记录值
  • 优化systemd服务配置

用户系统EdgeUser

  • 拉取配置时增加重试机制
  • 优化systemd服务配置
  • 访问首页和门户页时检测是否自动跳转到HTTPS
  • 同步智能DNS主机域名、智能DNS线路、访问鉴权等相关功能

GoEdge v1.3.3(2024-01-22)

开源版本

GoEdge v1.3.3开源版本大幅提升WebP转换性能、增强WAF。

管理系统 EdgeAdmin

  • 在网站列表中增加批量删除网站功能
  • 自定义页面跳转支持使用变量
  • 网站设置–“字符编码”设置中增加“强制替换”选项(与内容替换无关)
  • WAF动作默认设置为“显示网页(page)”,减少因错误规则导致的IP封禁
  • WAF策略增加显示页面动作默认设置
  • WAF允许动作(ALLOW)增加有效范围,默认可以跳过网站和策略设置的规则
  • 集群节点列表页增加停用/启用操作
  • 修复参数匹配不区分大小写选项无法保存的问题
  • 修复“迁移”功能中无法远程修改API节点访问地址的问题
  • 修复部分内置页面没有<head>标签的问题

API节点 EdgeAPI

  • 增加快捷添加和删除网站源站的API
  • 增加修改节点停用/启用状态API
  • WAF操作符增加“包含XSS注入-严格模式“操作符;默认的XSS注入操作符不再检测<xml>标签
  • WAF操作符增加“包含SQL注入-严格模式“操作符,默认的非严格模式不再处理一些二进制文件内容

通用 EdgeCommon

边缘节点 EdgeNode

  • 大幅提升WebP图片文件转换性能,实践中,普遍提升3-10倍
  • 优化计数器性能,现在计数器的内存回收速度是以往的5-10倍
  • 提升UA解析性能(是以往的2-4倍)
  • WAF允许动作默认跳过所有规则
  • 写缓存失败时,允许继续读取源站内容
  • 优化WAF验证码输入界面,并优化验证成功后点击浏览器返回按钮后的行为
  • 鉴权访问日志标签增加auth:前缀,以往只有typeAtypeD之类的标签不方便识别
  • 如果源站响应时没有设置Content-Type,则节点在响应时也不设置
  • 增加edge-node config命令
  • 修复缓存策略无法切换文件和内存的问题
  • 修复字符编码大写选项不起作用的问题
  • 修复Websocket连接无法报告连接关闭的问题
  • 修复部分内置页面没有<head>标签的问题

商业版本

GoEdge v1.3.3商业版本提供用户门户页、HLS加密功能。

管理系统 EdgeAdmin

  • 增加用户系统文章管理,入口在“系统设置”–“用户界面设置”–“文章管理”
  • 增加用户系统门户设置,启用后,用户端将会启用一个简单的GoEdge官方提供的门户页面
  • 套餐增加单节点带宽限制(可以设置套餐在单个节点上的最大带宽)、文件最大上传限制
  • 套餐如果设置了月度价格,就必须设置季度和年度价格;如果设置了季度价格,就必须设置年度价格
  • 网站设置增加HLS加密功能设置
  • 5秒盾策略增加是否支持子域名设置,并自动设置页面的计数器
  • 5秒盾增加匹配条件设置

API节点 EdgeAPI

  • 修复1.3.2版本中批量复制的混乱问题

用户系统EdgeUser

  • 增加一个建议的默认门户页,可以在管理系统–用户界面设置中开启,开启后,访问用户系统首页会自动跳转到门户页,具体请参考:https://goedge.rip/docs/User/portal.md
  • 同步批量删除网站、缓存交互、套餐、5秒盾、字符编码、HLS加密、WAF等功能

边缘节点EdgeNode

  • 修复HTTP/3下无法传递ServerAddr的问题,此问题可能导致端口跟随时源站端口可能为0的问题
  • 修复5秒盾验证可能受WAF影响不能工作的问题

GoEdge v1.3.2(2023-12-25)

开源版本

GoEdge v1.3.2开源版本主要增强WAF、部分菜单多语言。

管理系统 EdgeAdmin

  • 多语言
    • 实现部分菜单的中英文转换
  • WAF
    • WAF规则集列表中参数、操作符显示中文名称和描述,方便用户识别
    • WAF“显示网页”动作增加状态码显示
    • WAF策略中人机识别增加“极验–行为验”验证
    • IP名单中可以批量删除最多10000个IP
  • 集群
    • 创建集群时默认生成子域名,形如 g123456.cdn,避免用户手动填写重复
    • WebP转换质量转移到集群WebP策略配置中,避免用户自行设置导致的性能问题
  • 缓存
    • 缓存设置中可以设置缓存主域名,用来复用多域名下的缓存
  • 其他
    • 将部分MB、GB…改成MiB、GiB…,让流量描述更加准确
    • 业务域名CNAME检查DNS主机地址增加Google公共DNS,提升域名解析检查时效性
    • 管理系统安全设置中增加“自定义客户端IP报头”,可以通过它为管理系统获取客户端真实IP

API节点 EdgeAPI

  • WAF
    • 自动升级WAF策略中SQL注入检测和XSS注入检测
  • DNS
    • 阿里云DNS线路显示完整的线路名称,以往是只显示最大的一级区域名称
    • 华为云DNS线路增加一组“运营商_地区”类型线路

通用 EdgeCommon

  • WAF
    • 将WAF策略模板多个规则集的默认动作修改为“显示页面”
    • WAF操作符增加包含任一单词、包含所有单词、不包含任一单词,用单词匹配的方法往往更科学、速度更快
    • WAF操作符增加包含XSS注入、包含SQL注入,解析速度相对于正则更加快速,更能通过语义解析提升检测成功率
    • WAF检查项增加“所有报头名称”,可以列出当前请求的所有报头名称
    • WAF检查项增加“请求来源”,可以获取请求报头中的Referer和Origin信息;旧的“请求来源URL”改名为“请求来源Referer“

边缘节点 EdgeNode

  • WAF
    • 优化验证码加载方式,减少不必要的图片生成
    • WAF验证码验证后返回时判断是否已通过验证
    • 增加“极验-行为验”验证码集成支持
    • WAF相关跳转不计入统计
    • 优化WAF中前缀和后缀相关操作符性能
    • 节点进程停止时,自动保存WAF临时白名单,并在进程重新启动后恢复,避免在节点重新启动后影响当前用户访问
  • 缓存
    • 默认不启用内存分片管理,避免内存可能突发激增
  • WebP
    • WebP转换限制为若干个线程(根据当前系统配置自动计算),防止占用系统资源过高,当然同时也会导致WebP转换率降低
    • WebP策略变化时只更新相关配置,不再重新加载节点全部配置
  • 反向代理
    • 优化TCP源站错误提示,根据集群设置自动决定是否上报到API节点

商业版本

GoEdge v1.3.2商业版本增强套餐功能。

管理系统 EdgeAdmin

  • 套餐
    • 套餐增加Websocket连接数(每日和每月)限制设置
    • 套餐增加功能限制设置,即可以设置每种套餐对应网站可以使用的功能
    • 在管理界面新购套餐时只显示已启用的套餐
  • 网站设置中“页面优化”设置增加例外URL和限制URL
  • 用户系统界面设置增加“自定义客户端IP报头”,可以帮助用户系统更准确获取客户端真实IP
  • 增加用户边缘脚本审核

用户系统EdgeUser

  • 同步WebP、页面优化、缓存主域名、WAF、自定义IP报头等配置
  • 优化套餐购买页面,流量、用量、功能对比更加直观
  • 购买套餐时只显示已启用的套餐
  • 网站设置中增加边缘脚本功能

边缘节点EdgeNode

  • 优化网络数据包统计性能,去除源站相关流量,统计更加精确

GoEdge v1.3.1(2023-11-23)

  • DNSPod改名为腾讯云DNSPod,并支持腾讯云API密钥
  • 优化第三方域名解析微软Azure DNS提示文字
  • 提升br(brotli)压缩性能(提升约20%)
  • 修复清空文件索引Map时产生并发异常,在高负载时修改缓存策略容易触发此问题

GoEdge v1.3.0(2023-11-20)

开源版本

GoEdge v1.3.0开源版本主要增强人机识别、自定义页面、URL跳转等功能。

管理系统 EdgeAdmin

  • 优化数据看板图表排列,实现自适应多列显示
  • 集群设置–DNS设置中增加”解析记录“页面,方便查看和管理解析记录
  • URL跳转中增加例外域名和仅限域名
  • 自定义页面增加跳转URL功能,增加例外URL和限制URL设置
  • WAF人机识别实现点击验证和滑动解锁验证,策略和单个网站均可以设置默认的人机识别方式
  • 修复修改单个WAF动作时名称可能会变为“阻止”的问题
  • 集群WAF策略处于非防御模式时在地区封禁页面提示用户
  • 源站支持40X内容自动重试其他源站设置,开启后遇到403、404自动重试其他源站
  • 优化硬盘不足提示算法:用量小于5G或者空闲不超过100G的不提示
  • 申请ACME证书时有效防止重复提交
  • MySQL安装程序支持MySQL 8.2版本

API节点 EdgeAPI

  • 限制访问日志中域名能写入的最大长度

边缘节点 EdgeNode

  • 修复磁盘占用统计计算错误
  • 调整缓存索引数据库缓存尺寸,大幅减少对内存的占用
  • 提升缓存索引数据库和计数器性能,降低内存使用
  • 读取缓存时可以使用源站的Etag
  • 修复访问节点自定义内容可能无法生效的问题
  • 限制请求域名长度不超过253,超出时的访问提示400
  • 人机识别增加UA记录,进一步增强安全性
  • 人机识别错误次数不再区分不同URL,现在为合计计数
  • SSL证书更好地支持IP地址

商业版本

GoEdge v1.3.0商业版本主要支持多个第三方域名解析、支持用户手机号码绑定。

管理系统 EdgeAdmin

  • 优化集群看板、节点看板、网站看板、WAF、DNS看板、用户看板等图表排列
  • 节点看板增加数据包统计图表(TCP、UDP、ICMP)
  • 第三方域名解析增加火山引擎TrafficRoute DNS、Amzon Route 53、微软Azure DNS
  • 更新dns.la API,修复API不能用的问题
  • 访问日志策略可以选择“停用默认数据库存储”,以节省数据库空间
  • 优化数据看板–事件列表,自动跳过没有关联对象的事件
  • 注册码激活支持在线远程验证
  • 通知邮件媒介在显示配置信息时隐藏密码
  • 优化阈值设置:CPU、内存、硬盘用量增加百分比支持

API节点 EdgeAPI

  • 节点健康检查失败时增加节点名称和节点IP提示
  • 修复无法将OSS源站修改为http/https源站的问题

用户系统EdgeUser

  • 实现用户手机号码绑定、登录,参考文档 https://goedge.rip/docs/User/mobile.md
  • 同步自定义页面、URL跳转、ACME证书申请、报头管理、WAF人机识别等功能

GoEdge文档