kubelet默认会开放10255只读端口,例如:ip:10255/pods,用于查询解点pods信息,但这些信息中会包含环境变量,健康探针,启动钩子等等,这些很多都是敏感信息,所以不能对外暴露该只读接口。
1
参考官网
kubelet增加启动参数:--read-only-port=0
2 每台节点安全组绕过10255端口
3 对于每台节点设置iptables拒绝10255进来的流量
最终采用修改iptables的方案,对于input走本地10255端口的流量丢弃:
iptables -I INPUT -p tcp --dport 10255 -j DROP
service iptables save
端口号的范围是从1~65535。
其中1~1024是被RFC 3232规定好了的,被称作“众所周知的端口”(Well Known Ports);
从1025~65535的端口被称为动态端口(Dynamic Ports),可用来建立与其它主机的会话,也可由用户自定义用途。
kubelet
CPU 使用率过高问题排查
客户的k8s集群环境,发现所有的worker节点的
kubelet
进程的CPU使用率长时间占用过高,通过pidstat可以看到CPU使用率高达100%。针对此问题对
kubelet
进程的异常进行问题排查。
常见服务端口
FTP(file Transfer Protocol)文件传输协议 1.匿名访问——未授权访问 2.弱密码 3.配置不当 直接 cd / && dir 4.FTP使用明文传输技术-嗅探 5.木马Doly Trojan、Fore、Invisible FTP、WebEx、WinCrash和Blade Runner所开放的端口。
21端口是默认的FTP端口,利用方式:弱口令探测/溢出 目前我还没看到远程溢出的,SERU的本地溢出
漏洞
风靡一时,曾经很多
服务器
就在沦丧于这个
文章目录1. serviceaccount2. RBAC3. sercret4. ConfigMap5. cgroup、Procfs、Ptrace6. K8s Pod Security Policies参考文章
1. serviceaccount
本来只有节点机器可以访问api server,容器是无法访问apiserver的,如果在创建容器的时候给其配置了serviceaccount,那么这个容器也会有权限访问api server。
如果不配置serviceaccount,则会使用默认的default账号
kubernetes 是一个分布式的集群管理系统,在每个节点(node)上都要运行一个 worker 对容器进行生命周期的管理,这个 worker 程序就是
kubelet
。
简单地说,
kubelet
的主要功能就是定时从某个地方获取节点上
pod/conta