Skip to content

Releases: TeaOSLab/EdgeAdmin

v1.3.7

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

v1.3.6

22 Apr 02:58
Compare
Choose a tag to compare
  • 修复非80/443端口回源跟随无法正确识别地址的问题

v1.3.5

21 Apr 23:55
Compare
Choose a tag to compare

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可能缺失回收数据的问题,此问题可能导致内存中有些数据无法正确回收

下载:https://goedge.cn/downloads
文档:https://goedge.cn/docs

v1.3.4

25 Mar 00:12
Compare
Choose a tag to compare

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服务配置
  • 实验性实现新的缓存索引存储方法(默认不启用)

下载:https://goedge.cn/downloads
文档:https://goedge.cn/docs

v1.3.3

22 Jan 00:38
Compare
Choose a tag to compare

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>标签的问题

v1.3.2

25 Dec 01:28
Compare
Choose a tag to compare

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节点

下载:https://goedge.cn/downloads
文档:https://goedge.cn/docs

v1.3.0

20 Nov 00:28
Compare
Choose a tag to compare

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地址

下载:https://goedge.cn/downloads
文档:https://goedge.cn/docs

v1.2.10

17 Oct 02:23
Compare
Choose a tag to compare

GoEdge v1.2.10开源版本提升节点性能和内存安全性。

管理系统 EdgeAdmin

  • WAF记录IP动作中IP名单允许留空,留空后表示使用默认全局黑名单
  • WAF规则对比值长度限制为4096个字符,当输入超出4096字符后,提示用户长度限制
  • 优化“集群设置--网站设置”页面,将选项使用选项卡归类
  • 将全局的“通用设置--域名审核”设置移到“集群设置--网站设置”中,每个集群可以单独设置是否需要审核
  • 将全局设置的TCP相关设置移到“集群设置--网站设置”中
  • 网站访问日志未开启时,在访问日志列表显示提醒文字
  • 优化<url-pattern-box>组件对输入问号的提示,当在例外URL和限制URL里输入问号及参数时,提示用户输入错误
  • 集群设置中增加“自动调节系统参数”选项,启用后,节点程序在启动时会自动尝试调整系统参数,以提升性能
  • 访问日志列表搜索增加请求来源查询语法:referer:example.com
  • 证书列表、申请证书任务列表页区分管理员和用户证书,现在可以使用管理员和用户两个选项卡方便切换不同的证书了
  • macOS上检测磁盘是否不足时忽略/Developer/相关分区,防止产生不必要的提示

API节点 EdgeAPI

  • 修复常用网站、常用集群查询可能因为updatedAt过大导致的SQL错误
  • 取消默认反向代理默认的50X重试,避免和很多程序使用50X作为特殊业务代码冲突
  • WAF策略中默认不启用SynFlood检测

边缘节点 EdgeNode

  • 根据系统磁盘性能、当前系统负载等条件自动提升快速硬盘清理过期缓存速度
  • 执行edge-node cache.badge命令时实时打印进度
  • 优化磁盘容量限制、内存容量限制,避免可能出现超出容量的情形
  • 提升计数器性能、降低计数器内存使用
  • 优化缓存索引加载速度,节点程序启动时间大幅缩短
  • 根据系统内存自动调节系统参数时调整vm.dirty_background_ratiovm.dirty_ratio
  • 限制文件句柄缓存内存使用
  • 内存缓存、本地数据库也有多处性能优化
  • 去除WAF检测上传信息遗留的调试信息

下载:https://goedge.cn/downloads
文档:https://goedge.cn/docs

v1.2.9

18 Sep 00:05
Compare
Choose a tag to compare

GoEdge v1.2.9版本主要优化缓存清理、访客IP等细节。

管理系统 EdgeAdmin

  • 添加域名时移除多余的端口号,防止错误填入类似于 example.com:8080 的端口
  • 反向代理(源站--更多设置--更多选项)增加“自动重试50X选项”,默认为启用,启用后,在源站返回50X错误时,会自动重新尝试
  • 修复 安全设置 -- 允许访问的国家和地区 中不能使用中国特殊区域(中国内地、中国香港等)的问题
  • 优化几个内置的自定义页面模板,增加连接IP信息,方便诊断
  • 网站设置增加是否支持${serverAddr}选项,选中后可以在模板中使用${serverAddr}变量
  • 有消息提示时页面标题增加三个点符号提示,方便用户快速知晓是否有通知消息
  • 修复单个节点同属多个集群时DNS线路设置时会自动复制的问题
  • 由于当前对gif格式支持的不完整,WebP支持的默认格式中去除image/gif
  • WebP设置中提示用户宽高最大只支持16383像素
  • 优化MySQL安装程序,提升在系统配置较差时的安装成功几率
  • 集群设置 -- 网站设置-- 增加“处理未绑定域名方式”选项,现在可以选择直接关闭连接,不输出任何页面内容
  • 优化访客IP地址设置,修复无法设置为从代理读取的问题,并增加从请求报头读取的选项
  • 转发到源站的X-Real-IP报头内容也可以从变量中读取
  • WAF策略中验证码动作页面模板中使用<form></form>包裹${body}时提示警告,防止因为错误的模板导致验证码无法提交
  • 系统在进行健康检查时不进行指标统计

API节点 EdgeAPI

  • 域名解析:调用自定义HTTP DNS时增加action(值为GetDomains),用来获取域名列表,以往action为空

边缘节点 EdgeNode

  • 修复访问日志无法准确记录自定义跳转状态码的问题
  • 检查硬盘是否已满时同时检测缓存策略中定义的容量
  • 源站返回50X时,也可以根据设置(默认启用)自动尝试读取别的源站
  • 源站返回50X时,也可以尝试使用过时缓存(商业版功能)
  • 优化过时缓存时长(从600秒改为1200秒),即缓存到期后延时20分钟后再清理,以便于处理源站50X状态码(商业版功能)
  • 修复状未绑定域名中${status}${statusMessage}变量值错误的问题
  • 增加${serverAddr}变量,可以在各个自定义页面模板中使用
  • 修复集群设置--网站设置中启用“允许使用节点IP访问”时无法访问IPv6的问题
  • WebP转换增加宽度和高度限制(16383像素),此限制是因为WebP自身的限制,如果图片超出此高度,就无法转换为WebP
  • 修复节点缓存磁盘容量设置不生效的问题
  • 优化磁盘空间不足时清理逻辑,现在可以一次性清理更多的缓存
  • 增加edge-node cache.garbage命令用于清理垃圾缓存
  • 删除IP名单后不再加入新的IP

通用 EdgeCommon

  • 爬虫规则中将php改为php\b,避免意外地屏蔽某些安卓WebView访问

下载:https://goedge.cn/downloads
文档:https://goedge.cn/docs

v1.2.8

14 Aug 04:59
Compare
Choose a tag to compare
  • 主要修复节点可能无法同步配置的问题
  • 优化缓存条件设置界面和文字
  • 默认缓存有效期从2个小时改为1天