teaweb / build Goto Github PK
View Code? Open in Web Editor NEWTeaWeb-可视化的Web代理服务。DEMO: http://teaos.cn:7777
License: MIT License
TeaWeb-可视化的Web代理服务。DEMO: http://teaos.cn:7777
License: MIT License
你安装的TeaWeb版本:0.1.4.1
你的操作系统:ubuntu16
你的问题简介:dashboard 异常
问题详细描述: /Users/liuxiangchao/Documents/Projects/pp/apps/TeaWebGit/build/src/github.com/TeaWeb/code/teaweb/actions/default/agents/board/index.go:116
[2019/05/29 11:19:06] Error: context deadline exceeded
响应数据Body非json格式时乱码
你安装的TeaWeb版本:
你的操作系统:
你的问题简介:
问题详细描述:
测试了mongo4和mongo3都是这个
Error: context deadline exceeded
建议增加手工安装agent的自动发现机制,减少agent端配置文件的修改。agent通过ip首次上线后由管理员确认后就可以加入集群,然后再生成认证密钥。
建议增加gzip 的配置,一般只对html 类的信息gzip,png,gif,jpg都无需gzip,压锁不了多少Kb,但是却及占CPU。
参考APACHE2.4的相关配置
DeflateCompressionLevel 6 SetOutputFilter DEFLATE AddOutputFilterByType DEFLATE text/html text/plain text/xml text/css text/javascript application/x-javascript application/javascript application/json #对指定的内容进行压缩,压缩方式为默认的一个方法 SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary #设置不对后缀gif,jpg,jpeg,png的图片文件进行压缩 SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary #同上,就是设置不对exe,tgz,gz。。。的文件进行压缩 SetEnvIfNoCase Request_URI .(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary AddOutputFilterByType DEFLATE text/* #设置对文件是文本的内容进行压缩,例如text/html text/css text/plain等 AddOutputFilterByType DEFLATE application/ms* application/vnd* application/postscript application/javascript application/x-javascript #这段代码你只需要了解application/javascript application/x-javascript这段就可以了,这段的意思是对javascript文件进行压缩 AddOutputFilterByType DEFLATE application/x-httpd-php application/x-httpd-fastphp #这段是告诉apache对php类型的文件进行压缩 BrowserMatch ^Mozilla/4 gzip-only-text/html # Netscape 4.x 有一些问题,所以只压缩文件类型是text/html的 BrowserMatch ^Mozilla/4.0[678] no-gzip # Netscape 4.06-4.08 有更多的问题,所以不开启压缩 BrowserMatch \bMSIE !no-gzip !gzip-only-text/html # IE浏览器会伪装成 Netscape ,但是事实上它没有问题教程中介绍在‘媒介’添加 企业微信,在v0.0.10.3里还没有看到
建议针对站点增加选项,让用户自己选择是HTTP/2还是HTTP/1.1
功能需求1:
描述:由于大多数的WAF存在一定的误杀率(正则匹配无法避免)会影响一定的功能的正常使用。
解决方式:1、大部分WAF的做法是存在一定的URL白名单。不进行WAF检查。
2、可定制WAF防护返回页面,为判断人机区别,增加验证码绕过功能。
功能需求2:
描述:防止爆破功能,大多数WAF必备的功能,针对某些包含用户登录、密码重置、短信发送等应用,设定独立的放爆破规则
解决方式:增加防爆破规则集,针对指定URL有频次限制,有的时候是爆破密码,有的时候是爆破用户名,比如密码123456,尝试不同的username进行正确的登陆。
功能需求3:
描述:网站攻击经常发生,一般流量异常,都是存在一些攻击行为,如何快速识别和剁掉异常流量
解决方式:1、增加防DDoS、Dos识别,通过自动学习或者规则判断,自动剁掉异常流量
2、增加非正常爬虫识别,正常爬虫一般都会有相对固定的IP地址池,有自己的UserAgent,非正常爬虫一般可能是竞争对手公司、黑客窃取数据、非法大数据信息采集等。这种非正常手段爬取网站数据的应该主动屏蔽(验证码可以相对识别非正常流量是人还是机器人)。
功能需求4:第三方软硬防火墙接口调用功能
解决方式:增加接口调用功能,由于WAF工作在7层(工作负载相对较大),希望能够增加API调用功能,可以调用第三方API进行前置防火墙的接口调用,直接通过2、3层防火墙剁掉攻击者IP。
你安装的TeaWeb版本:
0.1.6.1
你的操作系统:
CentOS, Windows
你的问题简介:
Agent数据源Ping在Linux和Windows不能正常工作
问题详细描述:
可能是因为udp权限问题。需要研究是否优先通过系统提供的ping命令来执行。
你安装的TeaWeb版本:0.1.6.1
你的操作系统:win2008
你的问题简介:agent监控项支持DNS A类返回,不支持AAAA类
问题详细描述:由于IPV6使用扩展,需要支持AAAA类地址的返回。
你安装的TeaWeb版本:
0.1.6.1
你的操作系统:
Linux
你的问题简介:
没有安装MongoDB时,CPU有时占用30%以上。
问题详细描述:
估计的问题可能有:
1、不停地尝试新连接
2、在监控回报数据等地方一直长时间尝试连接,导致CPU时间被占用。
你安装的TeaWeb版本:v0.1.5
你的操作系统:centos7
你的问题简介:管理页面宕机,网站无法正常打卡
问题详细描述:页面打开后显示
open /opt/teaweb-v0.1.5/web/views/@default/dashboard/index.html: too many open files
解决方式是增加在进程启动时增加了ulimit
centos7,修改相关参数,不清楚直接在/etc/init.d/teaweb 中修改ulimit -n 设置是否有效。
vi /etc/systemd/system.conf
DefaultLimitNOFILE=1024000 #这里需要修改
DefaultLimitNPROC=1024000 #这里也需要修改
重启后,查看ulimit
[yl@TeaWeb ~]$ ps -aux |grep teaweb
root 10663 2.3 2.6 259764 108208 ? Sl 09:08 2:39 /opt/teaweb/bin/teaweb
root 10677 0.1 0.4 119468 18328 ? Sl 09:08 0:09 /opt/teaweb-v0.1.5.1/plugins/agent.tea
yl 10940 0.0 0.0 112708 976 pts/0 S+ 11:01 0:00 grep --color=auto teaweb
[yl@TeaWeb ~]$ cat /proc/10663/limits
Limit Soft Limit Hard Limit Units
Max cpu time unlimited unlimited seconds
Max file size unlimited unlimited bytes
Max data size unlimited unlimited bytes
Max stack size 8388608 unlimited bytes
Max core file size 0 unlimited bytes
Max resident set unlimited unlimited bytes
Max processes 1024000 1024000 processes
Max open files 65536 65536 files
Max locked memory 65536 65536 bytes
Max address space unlimited unlimited bytes
Max file locks unlimited unlimited locks
Max pending signals 15708 15708 signals
Max msgqueue size 819200 819200 bytes
Max nice priority 0 0
Max realtime priority 0 0
Max realtime timeout unlimited unlimited us
没有修改ulimit,ulimit 是1024 或者4096
自解决
你安装的TeaWeb版本:0.1.6.1
你的操作系统:win7
你的问题简介:安装service失败
问题详细描述:安装service报错。createing A system shutdown is in process。利用管理员身份启动一样。
还有现有支持的dns api较少,可否添加其他的api ,比如nsupdate(rfc2136) https://github.com/go-acme/lego 这个库有直接的各种dns的api实现
另可否添加acme http-challenges签发方式
你安装的TeaWeb版本:
0.16.2
你的操作系统:
win2012r2
你的问题简介:
建议增加备份周期选择
问题详细描述:
设置中备份选项目前是一天一次,建议修改为可自定义备份周期选择,按照天、周、月等,备份策略更加灵活。
你安装的TeaWeb版本:
v0.1.5
你的操作系统:
你的问题简介:
建议路径规则里配置缓存可以配置有效期
问题详细描述:
建议路径规则里配置缓存可以配置有效期
每个路径的缓存时间可能不一样,这样的话就多个路径规则要新建多个缓存规则,感觉很麻烦.
个人觉得 缓存规则可以配置缓存介质,内存 文件 Redis等, 有效期在路径规则里设置.
你安装的TeaWeb版本:
*
你的操作系统:
*
你的问题简介:
希望在路径规则里面增加一个关闭时候的页面的设置,这样可以单独设置某个路径规则的关闭状态。
问题详细描述:
你安装的TeaWeb版本:0.1.7.2
你的操作系统:windows2012 datacenter
你的问题简介:建议支持代理后端服务器下线通知功能
问题详细描述:运维的必备利器,随时随地掌握服务器动态
如果输入错的用户名和密码,会提示不正确。
如果输入对的。点登录后一直让重新输入
测试环境centos 7
用的二进制的版本
[root@builder-centos7 teaweb-v0.0.8]# cat logs/teaweb.log
2019/02/14 17:24:15 kill previous process 9965
2019/02/14 17:24:15 [plugin]load plugins
2019/02/14 17:24:15 [plugin][loader]load plugin 'agent.tea'
2019/02/14 17:24:15 load sessions from files /root/teaweb-v0.0.8/tmp
2019/02/14 17:24:15 start http server on 0.0.0.0:7777
2019/02/14 17:25:21 server selection timeout
/Users/liuxiangchao/Documents/Projects/pp/apps/TeaWebGit/build/src/github.com/TeaWeb/code/teaweb/actions/default/api/agent/push.go:142
2019/02/14 17:25:21 server selection timeout
/Users/liuxiangchao/Documents/Projects/pp/apps/TeaWebGit/build/src/github.com/TeaWeb/code/teaweb/actions/default/api/agent/push.go:142
2019/02/14 17:25:21 server selection timeout
/Users/liuxiangchao/Documents/Projects/pp/apps/TeaWebGit/build/src/github.com/TeaWeb/code/teaweb/actions/default/api/agent/push.go:142
2019/02/14 17:25:24 server selection timeout
访问日志也没有看到有。只有这个。
你安装的TeaWeb版本:v0.1.5
你的操作系统:CentOS7
你的问题简介:进入代理-默认的静态网站-设置-HTTPS,点击修改,页面空白
问题详细描述:以为是linux权限问题,不管用root还是用普通账户,目录也改了chown,都是一样的结果。
你安装的TeaWeb版本:0.1.4.1
你的操作系统:centos7
你的问题简介:对历史记录提供日志筛选功能
问题详细描述:目前日志筛选功能只能在实时日志里面使用,历史日志只能使用IP筛选功能
你安装的TeaWeb版本:0.1.6.1
你的操作系统:windows 2008 R2
你的问题简介:客户端关机agent已经离线,但是服务端还显示在线。
问题详细描述:服务端支持主动探测客户端agent是否在线
你安装的TeaWeb版本:0.1.5.2
你的操作系统:centos
你的问题简介:完善的权限管理
问题详细描述:
目前只能使用单个账号,没有较完善的权限管理功能
例如只想开放出日志查看权限给开发
还有就是公用账号涉及到https证书安全的问题
本地服务检测,检测不到。不管是nginx redis 等
你安装的TeaWeb版本:
v0.1.7
1、代理的后端服务器 > 健康检查 >错误次数阀值设定后,确实是下线了,但是没有有效的通过 “通知” 功能,将结果通过webhook或其他方式发送到指定人。应用的场景:服务器宕机 或 服务异常 通知给管理员,这个用的还是比较多的。
2、如果后期有多级权限,高级权限(目前是管理员)可以增加一个清理日志的功能。我这里添加了3个代理,日志文件夹有900M。
比如按天清理或按ip清理,因为一些攻击者可能暴力跑url产生了大量日志,占用磁盘空间。
3、可在 代理服务 > 日志(选项卡) > 实时 今日 昨日 历史 (子集选项卡 )
在子集里面再加一个 “删除”选项。
按ip删除 或 按url删除 (比如包含wwwroot.zip的) ,这些删除后再使用 已经有的 “路径规则”-安全ip黑名单功能拦截恶意ip.
这样可以有针对性的清洗日志。
比如配置代理转发的前缀匹配为/demo,我请求的路径是/demo/aaa。我希望发给后端服务器的请求地址是/aaa,目前请求URI配置为${requestURI}实际上是全路径/demo/aaa,不是我想要的,看是否增加一个变量来表示,我觉得这个需求应该是非常有必要,目前ngnix那边配置location,传到后端的话,就是会排除前缀的。
能否定位非开发环境的场景,考虑性能方向。这样就可以代替haproxy 了。线上跑跑。
如果能有个WAF ,就prefect了
打算尝试用于开发环境管理,能记录响应Body数据的话 可以用来定位一些具体的接口问题
检查相对路径teaweb/configs/ssl.oq83bY0WtT2BJGgY.cer 文件存在
但重启后控制台报错
teaweb | 2019/05/03 06:25:15 open configs/ssl.oq83bY0WtT2BJGgY.cer: no such file or directory
teaweb | /Users/liuxiangchao/Documents/Projects/pp/apps/TeaWebGit/build/src/github.com/iwind/TeaGo/server.go:338
你安装的TeaWeb版本:
0.1.7.1
你的操作系统:
Linux
你的问题简介:
目前代理有总的访问次数限制,但没有对同一个客户端的访问限制。
问题详细描述:
目前代理有总的访问次数限制,但没有对同一个客户端的访问进行限制。在常规业务中经常会出现某个客户端过渡的请求情况,可能是合法的请求也可能是非法的攻击请求。希望可以增加对同一个客户端的请求次数进行限制,限流保护后端服务。
你安装的TeaWeb版本:v0.1.6.1
你的操作系统:CentOS7
你的问题简介:https,ACME方式获取Letsencrypt证书,自动更新的问题。
问题详细描述:似乎更新证书需要自助修改_acme-challenge的txt记录,由于无法自助修改,所以自动更新报错,手动点更新证书仍然报错。
acme: error: 403 :: urn:ietf:params:acme:error:unauthorized :: Incorrect TXT record
使用 acme.sh管理并更新证书,需要设置正确的aliyun的accesskey,每次更新似乎都有删除旧记录,添加新的纪录的过程。
acme.sh的方式收到的邮件
尊敬的用户 @aliyun.com :
您对域名*.com进行了解析记录的删除操作。
所以,看看是不是要为了自动更新,设置accesskey等信息。
你安装的TeaWeb版本:
最新版本
你的操作系统:
linux
你的问题简介:
可以加个 captcha 验证 不通过的IP。 直接 丢到 ipset 给iptables drop
问题详细描述:
添加个 captcha 来防止 http flood 攻击
有些场景下需要对任务的执行结果进行监控,来确保知道当前任务是否正确执行的。
可能的思路:
stderr
是否有输出来判断done
ok
, success
, fail
sh build-index.sh
wget "http://192.168.1.100:7777/api/task/report?taskId=12345"
欢迎大家发表自己的意见。
GOPATH设置生效后 执行:
[xuyukun@MacOS ]teaweb-v0.0.4 $bin/teaweb start
2018/12/07 12:06:36 open /Users/xuyukun/teaweb-v0.0.4/src/main/resources/regexes.yaml: no such file or directory
Users/liuxiangchao/Documents/Projects/pp/apps/TeaWebGit/build/src/github.com/TeaWeb/code/tealogs/access_log.go:146
2018/12/07 12:06:36 open /Users/xuyukun/teaweb-v0.0.4/src/main/resources/GeoLite2-City/GeoLite2-City.mmdb: no such file or directory
Users/liuxiangchao/Documents/Projects/pp/apps/TeaWebGit/build/src/github.com/TeaWeb/code/tealogs/access_log.go:151
2018/12/07 12:06:36 [FATAL]'mongo.conf' not found
功能需求1:
描述:由于大多数的WAF存在一定的误杀率(正则匹配无法避免)会影响一定的功能的正常使用。
解决方式:1、大部分WAF的做法是存在一定的URL白名单。不进行WAF检查。
2、可定制WAF防护返回页面,为判断人机区别,增加验证码绕过功能。
功能需求2:
描述:防止爆破功能,大多数WAF必备的功能,针对某些包含用户登录、密码重置、短信发送等应用,设定独立的放爆破规则
解决方式:增加防爆破规则集,针对指定URL有频次限制,有的时候是爆破密码,有的时候是爆破用户名,比如密码123456,尝试不同的username进行正确的登陆。
功能需求3:
描述:网站攻击经常发生,一般流量异常,都是存在一些攻击行为,如何快速识别和剁掉异常流量
解决方式:1、增加防DDoS、Dos识别,通过自动学习或者规则判断,自动剁掉异常流量
2、增加非正常爬虫识别,正常爬虫一般都会有相对固定的IP地址池,有自己的UserAgent,非正常爬虫一般可能是竞争对手公司、黑客窃取数据、非法大数据信息采集等。这种非正常手段爬取网站数据的应该主动屏蔽(验证码可以相对识别非正常流量是人还是机器人)。
功能需求4:第三方软硬防火墙接口调用功能
解决方式:增加接口调用功能,由于WAF工作在7层(工作负载相对较大),希望能够增加API调用功能,可以调用第三方API进行前置防火墙的接口调用,直接通过2、3层防火墙剁掉攻击者IP。
可以参考 Jenusec 项目中的 waf 规则
可以对后端返回状态码筛选记录,如只记录5xx状态码,忽略正常返回的200 301 302 404等
监控项里面的刷新间隔,以后是否考虑Cron 这种格式,
run.sh
,应当使用 Docker Compose 代替。docker pull
即可;同时也可以节省你服务器的带宽。build.sh
。MAINTAINER
字段已经废弃。RUN
的多行形式,请使用以下两种格式任选其一:
RUN set -xe; \
echo foo; \
echo bar;
RUN echo foo \
&& echo bar \
&& echo more
set -xe
和 &&
,这是最普遍的写法。注意 set -xe
中的 -e
,如果不使用该参数,将会导致多条脚本运行过程中出现错误依旧会继续执行,导致构建出的镜像异常。更多信息:https://vaneyckt.io/posts/safer_bash_scripts_with_set_euxo_pipefail/teaweb.sh
是个长期运行的进程,因此不应当使用 ENTRYPOINT
,使用 CMD
指定容器启动时的默认命令更加合适。若坚持使用 ENTRYPOINT,请确保 bin/teaweb
是 Daemon 运行且 teaweb.sh
末尾添加 exec $@
。你安装的TeaWeb版本:0.1.6.1
你的操作系统:windows 2008R2
你的问题简介:服务器时间不对,客户端时间正确。逻辑好像不太对
问题详细描述:客户端提交的数据存储日志时按照服务端时间存储,貌似应该记录客户机时间。
你安装的TeaWeb版本:0.1.7.2
你的操作系统:windows2012 datacenter
你的问题简介:建议支持图表模板私有
问题详细描述:目前图表新建完了以后,每个代理都可以使用。有的图表筛选过滤只适合当前的代理,建议设置私有开关。
你安装的TeaWeb版本:
v0.1.6.1
你的操作系统:
All
你的问题简介:
提议增加iostat数据源,用来监控磁盘读写性能
你安装的TeaWeb版本:
你的操作系统:
你的问题简介:
问题详细描述:
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.