GithubHelp home page GithubHelp logo

teaoslab / edgeadmin Goto Github PK

View Code? Open in Web Editor NEW
7.0 7.0 3.0 33.16 MB

CDN & WAF集群管理系统。

Home Page: https://goedge.cloud

License: BSD 3-Clause "New" or "Revised" License

Go 26.97% CSS 1.07% JavaScript 52.05% HTML 13.69% Less 0.58% Shell 0.09% Dockerfile 0.02% C 5.47% Python 0.06%
cdn dns golang http2 http3 ipv6 proxy reverseproxy tcp udp waf webp

edgeadmin's Issues

节点如何查看比较完整的日志

edge-node accesslog输出的日志太过简单 不利于分析问题 怎么实现输出比较详细的日志 比如全部header信息,cookie信息,有需要甚至可以输出body信息?

Let's Encrypt SSL证书目录怎么回源

我想在源服务器上申请Let's Encryp证书,然后再复制回GOEDGE上,可是GOEDGE把/.well-known/ 目录都截获了,请问要如何让目录 /.well-known/ 回源呢?

功能建议:增加全局自定义页面

建议可以在集群设置里增加全局的40x和50x的自定义页面,这样可以不用去一个个网站自定义,如果网站需要自定义那就自动覆盖全局的设置

服务内证书删除出错

服务内证书删除不管删除哪一个,都是会删除第一个绑定的证书。导致后面添加的域名想要换证书 只能重新创建一个服务。

基于node.js的客户端请求GoEdge系统CDN大概率会返回 read ECONNRESET

情景再现:
GoEdge版本:1.2.2
node.js 代码:

const https = require('https');
https.get('https://xxx.com/test', (response) => { // GoEdge系统的CDN api接口
let todo = '';
// called when a data chunk is received.
response.on('data', (chunk) => {
todo += chunk;
});
// called when the complete response is received.
response.on('end', () => {
console.log(JSON.parse(todo).title);
});
}).on("error", (error) => {
console.log("Error: " + error.message);
});

正常情况:上面的接口是 https://xxx.com/test.json (有文件后缀) 时无论怎样请求都是正常返回数据
不正常情况:上面的接口是 https://xxx.com/test (无文件后缀) 时大概率(源站距离节点越远概率越大)会返回 read ECONNRESET (自动读数据超时 | 自动写数据超时都已经选中)

带着疑问去了 GoEdge 群里找答案,有个人反馈的是 goedge1.21-1.12.2 版本使用 clash 无法获取订阅,这个clash for windows 正是基于node.js的客户端。那个人已经回退了版本暂时解决。

暂时发现影响的是没有后缀的url会报错

Docker镜像

你好,可否搞个Docker镜像,方便部署和更新

功能优化建议:平台数据库容易出现瓶颈

平台数据库只能对接单台,如果业务量过大时,会导致数据库性能不足。测试对接proxysql做读写分离,发现无法对接上平台,希望增加对mysql中间件的支持,以实现后端数据库的高可靠性。

如何在CDN节点与源站之间开启SSL

用户与CDN节点可以通过SSL连接。
但如何确保在CDN节点与源站之间开启SSL呢?因为源站没有SSL证书。

是不是可以这样理解:
在“网站服务”—“设置”—“反向代理”—“源站地址”中。
如果源站地址类似http://123.123.123.123:80 这样填写,就没有开启SSL(CDN节点与源站之间通过http连接)。
如果源站地址类似https://123.123.123.123:443 这样填写,就已经开启了SSL(CDN节点与源站之间通过https连接)。
虽然没有证书,但是依然可以通过SSL连接,只要使用https:// 和443端口,就是开启了SSL?

【提问】单个集群内不同网站是否可以应用多种WAF策略?

试用了一下,感觉还是挺好用的
但是发现单个集群似乎只能应用一个WAF规则,不知道是我没有找到还是没有做这样的功能
如果是我没有找到麻烦指点一下怎么弄,如果是没有做这样的功能希望下版做一个

应用举例:

同一个集群内的多个网站,针对不同网站,需要应用不同的WAF策略,目前似乎一个集群只能应用一种策略?网站内没有看到WAF策略的更改选项

版本 0.5.1 开源版本

批量操作

例如源需要进行更换或者新增 但是此源的服务有100个甚至更多,有批量操作的考虑吗?

更换集群域名请不要删除老记录

因为新记录生效需要时间,现在更换域名会立即删除老集群的DNS所有记录,这样会造成空挡时间
或者说可以选择是否删除老记录,还有个中间方案,就是单个集群可以用多个域名

IP可以直接被访问

添加一个网站,主要源站填写IP地址。然后访问边缘节点的IP,会访问到主要源站上另外一个站点。
注:主要源站已经禁止使用IP访问了。

关于文档问题

想问一下, 是否有考虑过开源文档呢? 现在的网站在备案,都没办法查看文档

【建议】几个小功能的建议

1、WAF策略中,如果是验证码多次失败,会自动添加到系统黑名单,能否在WAF中指定添加到哪个公共黑名单里;
比如说,针对爬虫,我希望是先弹出验证码,如果是连续失败多少次,然后自动添加到爬虫分组的黑名单里,这样以后也好管理。

2、是否可以增加一个类似“灰名单”的分组,这个分组只是用来搜集IP,而不是做拦截。
比如说,我需要观测访问我网站的,使用Edge浏览器的用户,现在只能识别后放到白名单里,然后有些恶意的爬虫会伪造Edge的useragent,然后我的其他规则(比如说 目录探测)就完全失效了。如果放到黑名单里,误伤又比较大。然后因为一个服务器,或者所属集群只能一个waf规则,其他站还是需要正常的拦截的,也不能改成观察模式。

以上,感谢。

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.