[svc]容器网络学习索引及网络监控

整理的可能有些误失,抽时间在细细的分类完善下. 发现这篇对于网络从低到高层协议整理的还不错

每层都有一些有意思的话题

一些协议有一些设计上的弱点, 所以产生了种种的网络层安全问题

一般我们学一些

  • 1,以太网2的数据格式
  • 2,ip 数据格式
  • 3,tcp/udp数据格式 .玩明白这些后,会晚一些有用

网络里有意思的大概有这些.

二层的广播,arp(代理arp,免费arp)

ip层的ping的ttl(多窗口ping回包问题(win给所有包统一编号/unix每个窗口进程号)), mtu分片

基于ip的icmp(1,端口不可达 2,目标不可达u,回包可告知到哪里unreachable,可关. 默认路由+ping不存在的ip) RTT(对端收到后将时间戳原本拷贝到数据包回传) ping的频率也可以被限制

tcp层的端口号
udp的traceroute程序(ttl递增 不是我,回icmp超时, 是我回icmp端口不可达): 参考: http://www.freebuf.com/articles/network/118221.html
dns/tftp/语音视频

必有有趣的有代理(不算arp代理了),如ccproxy或一些ss等原理


可能会感兴趣一些https  vpn 内网穿透啊 这类


参考: frp工具实现内网穿透

[tcp的13]

TCP半连接与SYN攻击
TCP连接的“三次握手”与“四次挥手”

可以发现一些协议的弱点.这个工具钻了一些协议的空子.
yersinia

dhcp防爆防御

监控web连接数(tcp的11种状态)

跟着zabbix使用脚本监控
(包含里面的参考链接)溜一遍,zabbix的本末就在脑海里有个影子了.

高性能web要求监控:

  • 系统监控: 一般系统安装完毕,需要加入zabbix,

  • 网络监控: smokping/站长工具 监控宝/听云/安全宝/流量宝/易日志

  • 应用监控: 需要监控他的端口,及系统总的tcp的的11种状态, 每个app的tcp连接状态.

原来zabbix监控进程与端口是如此的简单!
Zabbix监控(十二):自动监控Linux端口
Zabbix监控端口服务TCP连接状态

网络基础

文字标题 链接
二三层数据格式&&三层数据如何匹配路由 http://www.cnblogs.com/iiiiher/p/8081252.html
arp协议的细枝末节 http://www.cnblogs.com/iiiiher/p/8085415.html
dhcp细枝末节 http://www.cnblogs.com/iiiiher/p/8080314.html
gns3模拟器及探讨几个bgp问题 http://www.cnblogs.com/iiiiher/p/8075349.html

docker&k8s网络原理

文字标题 链接
docker4种网络最佳实战 http://www.cnblogs.com/iiiiher/p/8047114.html
k8s pod的3种网络模式最佳实战 http://www.cnblogs.com/iiiiher/p/8051947.html

二层网络

文字标题 链接
linux的ip命令操作接口和路由表 http://www.cnblogs.com/iiiiher/p/8056930.html
通过bridge连接单机的多个网络namespace http://www.cnblogs.com/iiiiher/p/8057922.html
linux下网桥-docker网桥 http://www.cnblogs.com/iiiiher/p/8052974.html
macvlan最佳实战: http://www.cnblogs.com/iiiiher/p/8059032.html
macvlan实现双vlan互通 http://www.cnblogs.com/iiiiher/p/8067226.html

三层网络

文字标题 链接
linux iptables实战 http://www.cnblogs.com/iiiiher/p/8066036.html
docker网络-直接路由模式 http://www.cnblogs.com/iiiiher/p/8065415.html
linux上vxlan实战 http://www.cnblogs.com/iiiiher/p/8082779.html
docker自带的overlay网络实战 http://www.cnblogs.com/iiiiher/p/8120300.html
使用quaaga实现(rip ospf)实现主机间容器互通 http://www.cnblogs.com/iiiiher/p/8076257.html
docker calico网络&docker cluster-store http://www.cnblogs.com/iiiiher/p/8110617.html

附: edis-memcached-nginx-tcp11监控脚本

参考

具体集成到zabbix,参考

$ cat zabbix_linux_plugins.sh

#!/bin/bash
############################################################
# $Name:         zabbix_linux_plugins.sh
# $Version:      v1.2
# $Function:     zabbix plugins
# $Author:       Maotai
# $organization: http://www.cnblogs.com/iiiiher/
# $Create Date:  2018-03-03
# $Description:  Monitor Linux Service Status
############################################################
tcp_status_fun(){
	TCP_STAT=$1
	#netstat -n | awk '/^tcp/ {++state[$NF]} END {for(key in state) print key,state[key]}' > /tmp/netstat.tmp
	ss -ant | awk 'NR>1 {++s[$1]} END {for(k in s) print k,s[k]}' > /tmp/netstat.tmp
	TCP_STAT_VALUE=$(grep "$TCP_STAT" /tmp/netstat.tmp | cut -d ' ' -f2)
	if [ -z $TCP_STAT_VALUE ];then
		TCP_STAT_VALUE=0
	fi
	echo $TCP_STAT_VALUE
}

nginx_status_fun(){
	NGINX_PORT=$1
	NGINX_COMMAND=$2
	nginx_active(){
        /usr/bin/curl "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" 2>/dev/null| grep 'Active' | awk '{print $NF}'
        }
	nginx_reading(){
        /usr/bin/curl "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" 2>/dev/null| grep 'Reading' | awk '{print $2}'
       }
	nginx_writing(){
        /usr/bin/curl "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" 2>/dev/null| grep 'Writing' | awk '{print $4}'
       }
	nginx_waiting(){
        /usr/bin/curl "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" 2>/dev/null| grep 'Waiting' | awk '{print $6}'
       }
	nginx_accepts(){
        /usr/bin/curl "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" 2>/dev/null| awk NR==3 | awk '{print $1}'
       }
	nginx_handled(){
        /usr/bin/curl "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" 2>/dev/null| awk NR==3 | awk '{print $2}'
       }
	nginx_requests(){
        /usr/bin/curl "http://127.0.0.1:"$NGINX_PORT"/nginx_status/" 2>/dev/null| awk NR==3 | awk '{print $3}'
       }
  	case $NGINX_COMMAND in
		active)
			nginx_active;
			;;
		reading)
			nginx_reading;
			;;
		writing)
			nginx_writing;
			;;
		waiting)
			nginx_waiting;
			;;
		accepts)
			nginx_accepts;
			;;
		handled)
			nginx_handled;
			;;
		requests)
			nginx_requests;
		esac 
}

memcached_status_fun(){
	M_PORT=$1
	M_COMMAND=$2
	echo -e "stats\nquit" | nc 127.0.0.1 "$M_PORT" | grep "STAT $M_COMMAND " | awk '{print $3}'
}

redis_status_fun(){
	R_PORT=$1
	R_COMMAND=$2
	(echo -en "INFO \r\n";sleep 1;) | nc 127.0.0.1 "$R_PORT" > /tmp/redis_"$R_PORT".tmp
	REDIS_STAT_VALUE=$(grep ""$R_COMMAND":" /tmp/redis_"$R_PORT".tmp | cut -d ':' -f2)
 	echo $REDIS_STAT_VALUE	
}

main(){
	case $1 in
		tcp_status)
			tcp_status_fun $2;
			;;
		nginx_status)
			nginx_status_fun $2 $3;
			;;
		memcached_status)
			memcached_status_fun $2 $3;
			;;
		redis_status)
			redis_status_fun $2 $3;
			;;
		*)
			echo $"Usage: $0 {tcp_status key|memcached_status key|redis_status key|nginx_status key}"
	esac
}

main $1 $2 $3

各种攻击类型

https://mochazz.github.io/2017/09/11/DDOS1/

各类泛洪攻击-华为文档

posted @ 2017-12-26 22:40  _毛台  阅读(829)  评论(0编辑  收藏  举报