作者存档: SK - 第2页

开源APM业务性能剖析系统架构

开源APM业务性能剖析系统架构

 

以前用过不少apm产品,最近我们开始使用elastic出品的免费开源APM。架构比较简单,由elasticsearch+kibana+APM-server+apm_agent构成
APM它是应用程序性能监控系统,主要是监控软件服务和应用程序实时性能、访问参数、接口响应时间、数据库查询请求、调用缓存以及内外部api接口性能、采集性能信息并存储到es集群。然后通过kibana进行展示或者做可视化分析。这样可以轻松快速的跟踪到问题点,并修复性能相关问题。
主要组件是:
APM agents
APM Server
Elasticsearch
Kibana APM UI

目前支持Nodejs,Python,Ruby,js,Go,java的性能追踪。暂时还没有php的探针支持。

 

架构如下:

elk

动态ARP检测原理及应用

在一个局域网中,网络安全可以通过多种方式来实现,而采取DHCP snooping(DHCP 防护)及DAI 检测(ARP 防护)这种技术,保护接入交换机的每个端口,可以让网络更加安全,更加稳定,尽可能的减小中毒范围,不因病毒或木马导致全网的瘫痪。 下面将详细的对这种技术的原理和应用做出解释。 继续阅读 »

Gradle 5.0 正式版发布!史上最快、最安全和最强大的版本

Gradle 5.0 正式版发布了!官方表示这是史上最快、最安全,最强大的版本。

改进的增量编译和增量注释处理构建在已经具有构建缓存和最新检查功能的可靠性能基础之上。

依赖约束 —— 依赖对齐和版本锁定提供了可扩展且灵活的依赖管理模型。

通过新的性能和依赖关系管理、日志记录和弃用的 API 使用检查,构建扫描得到了显著的改进。

静态类型的 Kotlin DSL 可在创建构建逻辑时提供代码完成、重构和其他的 IDE 辅助。

主要改进可分为以下几类:

最后,可以了解如何进一步升级到 Gradle 5.0

值得关注的新特性:

企业私有Harbor仓库

我们在研发、测试、生产环境使用Harbo已经1年多了,现在推荐给大家使用。

一、Harbor介绍
     Harbor是一个英文单词,意思是港湾,港湾是干什么的呢,就是停放货物的,而货物呢,是装在集装箱中的,说到集装箱,就不得不提到Docker容器,因为docker容器的技术正是借鉴了集装箱的原理。所以,Harbor正是一个用于存储Docker镜像的企业级Registry服务。
Registry是Dcoker官方的一个私有仓库镜像,可以将本地的镜像打标签进行标记然后push到以Registry起的容器的私有仓库中。企业可以根据自己的需求,使用Dokcerfile生成自己的镜像,并推到私有仓库中,这样可以大大提高拉取镜像的效率。
二、Harbor核心组件解释
 Proxy:他是一个nginx的前端代理,代理Harbor的registry,UI, token等服务。
 db:负责储存用户权限、审计日志、Dockerimage分组信息等数据。
 UI:提供图形化界面,帮助用户管理registry上的镜像, 并对用户进行授权。
 jobsevice:jobsevice是负责镜像复制工作的,他和registry通信,从一个registry pull镜像然后push到另一个registry,并记录job_log。
 Adminserver:是系统的配置管理中心附带检查存储用量,ui和jobserver启动时候回需要加载adminserver的配置。
 Registry:镜像仓库,负责存储镜像文件。
 Log:为了帮助监控Harbor运行,负责收集其他组件的log,供日后进行分析。
三、Harbor获取版本和安装文档
  https://github.com/goharbor/harbor

Mikrotik路由安全防范设置

  1. 将默认用户名admin更改为其他名称
    /user set 0 name=superrootman
  2. 设置高强度的密码
    /user set 0 password=”zhegemimahenchanghenchang!@#”
  3. 通过IP地址访问
    /user set 0 allowed-address=xxxx/yy
  4. 只保留安全的服务
    /ip service disable telnet,f​​tp,www,api,api-ssl
    注意:该操作会禁用Telnet,FTP,WWW,API,API-SSL
  5. 更改默认端口,这将立即停止大多数随机SSH暴力登录尝试
    /ip service set ssh port=220
  6. 设置Winbox允许登陆的网段
    /ip service set winbox address=192.168.0.0/16
  7. 禁用mac-telnet服务
    /tool mac-server set allowed-interface-list=none
  8. 禁用mac-winbox服务
    /tool mac-server mac-winbox set allowed-interface-list=none
  9. 禁用mac-ping服务
    /tool mac-server ping set enabled=no
  10. 邻居发现
    MikroTik邻居发现协议用于显示和识别网络中的其他MikroTik设备,禁用所有接口上的邻居发现
    禁用IPv4 的邻居发现协议
    /ip neighbor discovery-settings set discover-interface-list=none
    禁用IPv6 的邻居发现协议
    /ipv6 nd set [find] disabled=yes
  11. 带宽服务器用于测试两个MikroTik路由器之间的吞吐量,请在测试后禁用它。
    /tool bandwidth-server set enabled=no
  12. DNS缓存
    /ip dns set allow-remote-requests=no
  13. 设置更安全的SSH访问,打开SSH强加密
    /ip ssh set strong-crypto=yes
  14. 关闭 Proxy,Socks代理
    /ip proxy set enabled=no
    /ip socks set enabled=no
  15. MikroTik UPnP服务(通用即插即用协议)
    /ip upnp set enabled=no
  16. MikroTik自带的DDNS服务器(动态域名解析)
    如果不是使用的话请用以下命令禁用
    /ip cloud set ddns-enabled=no update-time=no
  17. 某些型号的RouterBOARD有LCD模块用于信息显示。
    /lcd set enabled=no
  18. 如果你的路由器不提供VPN服务,请用以下命令关闭VPN
    /interface l2tp-server server set enabled=no
    /interface pptp-server server set enabled=no
    /interface sstp-server server set enabled=no
    /interface ovpn-server server set enabled=no
  19. 禁用在设备上使用Radius进行授权
    /user aaa set use-radius=no
  20. 禁ping

MikroTik路由器升级以及安全加固

最近<<20万台MikroTik路由器沦为挖矿帮凶>>,近日安全研究人员再次发现有20万台未更新固件的MikroTik路由器遭到挖矿恶意软件攻击。其中主要是CVE-2018-7445 MikroTik路由器系统缓冲区溢出漏洞。

漏洞概述

CVE-2018-7445 MikroTik RouterOS SMB 缓冲区溢出

参考信息:https://www.coresecurity.com/advisories/mikrotik-routeros-smb-buffer-overflow

路由器漏洞分析

http://www.freebuf.com/articles/wireless/168063.html

oday 工具地址

https://github.com/mrmtwoj/0day-mikrotik

Name Project :0day Mikrotik

Last version :1.0.0

Last updated : 25/07/2018

Programming language : Python

youtube : https://youtu.be/h6JSNFhQUN8

Company name : acyber (IT Security Lab Iran)

ros1

ros2
.我们今天来进行ros的升级和一些安全加固设置。

继续阅读 »

linux文件系统高级权限属性

最近在cu论坛看见有同学在问,如何给一个目录设定root都不能删除的权限。

其实linux有高级权限,除了0777的权限位还有更高级的权限控制。在Linux下我们可以用lstat命令查看文件的相关属性信息,除了这些属性之外,Linux下的文件还有一些隐藏的属性,我们可以用lsattr命令来查看:

root@sklinux:/opt# lsattr
——a——e– ./src
如上面的a\e权限

上面这条命令的输出表示src文件具有扩展属性a和e,即只能向该文件添加数据,而不能删除,并且该文件使用extends来映射磁盘块。显然,将那些只允许增长但不允许修改和删除的文件设置为这样的隐藏属性是非常有利于保护数据安全的。 继续阅读 »

apollo配置中心增加环境的方法

Apollo(阿波罗)是携程框架部门研发的开源配置管理中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性。

Apollo支持4个维度管理Key-Value格式的配置:

  1. application (应用)
  2. environment (环境)
  3. cluster (集群)
  4. namespace (命名空间)

 

配置结构图为:

apollo配置架构
一、portal启动参数如下: 继续阅读 »

如何防止CSRF攻击

背景

随着互联网的高速发展,信息安全问题已经成为企业最为关注的焦点之一,而前端又是引发企业安全问题的高危据点。在移动互联网时代,前端人员除了传统的 XSS、CSRF 等安全问题之外,又时常遭遇网络劫持、非法调用 Hybrid API 等新型安全问题。当然,浏览器自身也在不断在进化和发展,不断引入 CSP、Same-Site Cookies 等新技术来增强安全性,但是仍存在很多潜在的威胁,这需要前端技术人员不断进行“查漏补缺”。

前端安全

近几年,美团业务高速发展,前端随之面临很多安全挑战,因此积累了大量的实践经验。我们梳理了常见的前端安全问题以及对应的解决方案,将会做成一个系列,希望可以帮助前端同学在日常开发中不断预防和修复安全漏洞。本文是该系列的第二篇。

今天我们讲解一下 CSRF,其实相比XSS,CSRF的名气似乎并不是那么大,很多人都认为“CSRF不具备那么大的破坏性”。真的是这样吗?接下来,我们还是有请小明同学再次“闪亮”登场。

CSRF攻击

CSRF漏洞的发生

相比XSS,CSRF的名气似乎并不是那么大,很多人都认为CSRF“不那么有破坏性”。真的是这样吗? 继续阅读 »

为什么前后端分离了,你比从前更痛苦?—转载

你有没有遇到过:

  • 前端代码刚写完,后端的接口又变了。
  • 接口文档永远都是不对的。
  • 测试工作永远只能临近上线才能开始。

为什么前后端分离了,你比从前更痛苦?

  前后端分离早已经不是新闻,当真正分离之后确遇到了更多问题。要想解决现在的痛,就要知道痛的原因:

为什么接口会频繁变动?

  设计之初没有想好。 这需要提高需求的理解能力和接口设计能力。

  变动的成本较低。

  德国有句谚语:“朝汤里吐口水。” 只有这样,才能让人们放弃那碗汤,停止不合理的行为。前后端同学坐在一起工作的时候效率会有提升,当后端同学接口变化时,只需要口头上通知一下即可,我们没有文档,我们很敏捷啊。没错,我们需要承认这样配合开发的效率会很高,但是频繁的变动会导致不断返工,造成了另一种浪费,这种浪费是可以被减少,甚至是被消除的。

为什么接口文档永远都是不对的?

  接口文档在定接口时起到一定作用,写完接口就没有用了。后面接口的频繁变化,文档必定会永远落后于实际接口,维护文档的带来了一定的成本却没能带来价值。除非对外提供的接口,否则文档谁来看呢?没人看,用处又在哪?

  有些公司干脆丢掉接口文档,说我们要拥抱敏捷。

  所以接口文档落后的原因在于没有给我们带来价值

为什么测试工作永远只能临近上线才能开始?

继续阅读 »