当前位置: 首页 > news >正文

网站备案 湖北鹿泉城乡建设局网站

网站备案 湖北,鹿泉城乡建设局网站,展示型网站建设多少钱,网站开发流程管理1、集群安全机制概述 1.1 访问k8s的三个步骤 1、认证 2、鉴权(授权) 3、准入控制 进行访问的时候#xff0c;过程中都需要经过apiserver#xff0c;apiserver做统一协调#xff0c;比如门卫。且访问过程中需要证书、token、或者用户名密码。如果需要访问pod#xff0c;…1、集群安全机制概述 1.1 访问k8s的三个步骤 1、认证 2、鉴权(授权) 3、准入控制 进行访问的时候过程中都需要经过apiserverapiserver做统一协调比如门卫。且访问过程中需要证书、token、或者用户名密码。如果需要访问pod需要serviceAccount。 1.2 认证 传输安全对外不会暴露8080端口只能内部访问。对外使用端口6443认证客户端身份认证的常用方式有三种 1https证书认证基于ca证书。2 httptoken认证通过token识别用户。3http基本认证用户名密码不常用前两种更安全 1.3 鉴权 基于RBAC进行鉴权操作基于角色进行访问控制 1.4 准入控制 就是准入控制器的列表如果该列表有请求内容通过。没有则拒绝。 2、RBAC基于角色的访问控制 2.1 角色 Role特定命名空间具体操作。 ClusterRole所有命名空间访问权限 [rootmaster ~]# kubectl get ns # 查看命名空间 [rootmaster ~]# kubectl create ns role namespace/role created [rootmaster ~]# kubectl get ns NAME STATUS AGE default Active 63d kube-node-lease Active 63d kube-public Active 63d kube-system Active 63d role Active 3s [rootmaster ~]# kubectl delete ns role namespace role deleted 2.2 角色绑定 roleBinding: 将角色绑定到主体上ClusterroleBinding: 将集群角色绑定到主体 2.3 主体 user 用户group: 用户组serviceAcoount: 服务账号。用于pod访问 3、RBAC实现鉴权 3.1 生成证书文件 #下载并使用cfssl证书生成工具 wget https://pkg.cfssl.org/R1.2/cfssl_linux-amd64 wget https://pkg.cfssl.org/R1.2/cfssljson_linux-amd64 wget https://pkg.cfssl.org/R1.2/cfssl-certinfo_linux-amd64 chmod x cfssl_linux-amd64 cfssljson_linux-amd64 cfssl-certinfo_linux-amd64 mv cfssl_linux-amd64 /usr/local/bin/cfssl mv cfssljson_linux-amd64 /usr/local/bin/cfssljson mv cfssl-certinfo_linux-amd64 /usr/bin/cfssl-certinfo# 生成自签证书 [rootmaster mary]# cat ca-config.json {signing: {default: {expiry: 87600h},profiles: {kubernetes: {expiry: 87600h,usages: [signing,key encipherment,server auth,client auth]}}} } [rootmaster mary]# cat ca-csr.json {CN: kubernetes,key: {algo: rsa,size: 2048},names: [{C: CN,L: Beijing,ST: Beijing,O: k8s,OU: System}] } [rootmaster mary]# cfssl gencert -initca ca-csr.json | cfssljson -bare ca - #生成自签证书 2022/05/13 13:47:19 [INFO] generating a new CA key and certificate from CSR 2022/05/13 13:47:19 [INFO] generate received request 2022/05/13 13:47:19 [INFO] received CSR 2022/05/13 13:47:19 [INFO] generating key: rsa-2048 2022/05/13 13:47:19 [INFO] encoded CSR 2022/05/13 13:47:19 [INFO] signed certificate with serial number 533587145625742162082018478504710590695605538243 [rootmaster mary]# ls ca-config.json ca.csr ca-csr.json ca-key.pem ca.pem mary-csr.json rabc-user.sh 3.2 创建命名空间和对应得pod [rootmaster ~]# kubectl create ns roledemo namespace/roledemo created[rootmaster ~]# kubectl get ns NAME STATUS AGE roledemo Active 3s[rootmaster ~]# kubectl run nginx --imagenginx -n roledemo pod/nginx created [rootmaster ~]# kubectl get pod -n roledemo NAME READY STATUS RESTARTS AGE nginx 1/1 Running 0 36s 3.3 创建角色 [rootmaster Roledemo]# vim rbac-role.yaml [rootmaster Roledemo]# cat rbac-role.yaml kind: Role apiVersion: rbac.authorization.k8s.io/v1 metadata:namespace: roledemoname: pod-reader rules: - apiGroups: [] #组resources: [pods] #资源verbs: [get,watch,list] #角色权限[rootmaster Roledemo]# kubectl apply -f rbac-role.yaml role.rbac.authorization.k8s.io/pod-reader created[rootmaster Roledemo]# kubectl get role -n roledemo NAME CREATED AT pod-reader 2022-05-13T04:13:46Z 3.4 创建角色绑定 [rootmaster Roledemo]# vim rbac-rolebinding.yaml [rootmaster Roledemo]# cat rbac-rolebinding.yaml kind: RoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: name: read-podsnamespace: roledemo subjects: - kind: Username: mary # Name is case sensitiveapiGroup: rbac.authorization.k8s.io roleRef:kind: Role #this must be Role or ClusterRolename: pod-reader # this must match the name of the Role or ClusterRole you wish to bind toapiGroup: rbac.authorization.k8s.io[rootmaster Roledemo]# kubectl apply -f rbac-rolebinding.yaml rolebinding.rbac.authorization.k8s.io/read-pods created [rootmaster Roledemo]# kubectl get role,rolebinding -n roledemo #查看角色和角色绑定 NAME CREATED AT role.rbac.authorization.k8s.io/pod-reader 2022-05-13T04:13:46ZNAME ROLE AGE rolebinding.rbac.authorization.k8s.io/read-pods Role/pod-reader 25s 3.5 使用证书识别身份 [rootmaster ~]# mkdir mary #充当用户文件夹 [rootmaster ~]# cd mary/ #目录下需要所有的ca文件 [rootmaster mary]# cat mary-csr.json {CN: mary,hosts: [],key: {algo: rsa,size: 2048},names: [{C: CN,L: BeiJing,ST: BeiJing}] }[rootmaster mary]# vim rabc-user.sh ##rbac鉴权文件 [rootmaster mary]# cat rabc-user.sh cat mary-csr.json EOF {CN: mary,hosts: [],key: {algo: rsa,size: 2048},names: [{C: CN,L: BeiJing,ST: BeiJing}] } EOFcfssl gencert -caca.pem -ca-keyca-key.pem -configca-config.json -profilekubernetes mary-csr.json | cfssljson -bare mary kubectl config set-cluster kubernetes \--certificate-authorityca.pem \--embed-certstrue \--serverhttps://192.168.172.128:6443 \--kubeconfigmary-kubeconfigkubectl config set-credentials mary \--client-keymary-key.pem \--client-certificatemary.pem \--embed-certstrue \--kubeconfigmary-kubeconfigkubectl config set-context default \--clusterkubernetes \--usermary \--kubeconfigmary-kubeconfigkubectl config use-context default --kubeconfigmary-kubeconfig## 执行 [rootmaster mary]# bash rabc-user.sh 2022/05/13 13:53:26 [INFO] generate received request 2022/05/13 13:53:26 [INFO] received CSR 2022/05/13 13:53:26 [INFO] generating key: rsa-2048 2022/05/13 13:53:26 [INFO] encoded CSR 2022/05/13 13:53:26 [INFO] signed certificate with serial number 697056282839922252602077574108282807182420364565 2022/05/13 13:53:26 [WARNING] This certificate lacks a hosts field. This makes it unsuitable for websites. For more information see the Baseline Requirements for the Issuance and Management of Publicly-Trusted Certificates, v.1.1.6, from the CA/Browser Forum (https://cabforum.org); specifically, section 10.2.3 (Information Requirements). Cluster kubernetes set. User mary set. Context default created. Switched to context default. [rootmaster mary]# ls ##生成了mary-kubeconfig文件 ca-config.json ca-csr.json ca.pem mary-csr.json mary-kubeconfig rabc-user.sh ca.csr ca-key.pem mary.csr mary-key.pem mary.pem[rootmaster mary]# cat mary-kubeconfig ##里面是证书内容 3.6测试 #只有查看pod得权限所以查看svc是没有任何东西的(不对) #应该是这里只是使用了文件夹模拟所以出错。需要真实得用户 [rootmaster mary]# kubectl get pod -n roledemo NAME READY STATUS RESTARTS AGE nginx 1/1 Running 0 140m [rootmaster mary]# kubectl create service clusterip test --clusteripNone -n roledemo# 创建svc测试 [rootmaster mary]# kubectl get svc -n roledemo # 但是不对 NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE test ClusterIP None none none 25m
http://www.hkea.cn/news/14536686/

相关文章:

  • 网站网页是怎么做的玉林做网站
  • 模板网站怎么优化最古老的网络营销方式
  • 网站服务器开发wordpress如何汉化
  • 织梦备份网站数据抖音小程序商城
  • 河北省住房和城乡建设网站公司地址怎么弄在百度上显示
  • 雅安网站开发广东营销型网站
  • 网站建设评判标准网站建设彩票
  • 关键词搜索爱站初学seo网站推广需要怎么做
  • 做网站那些好单位网站建设
  • 中国空间站对接成功安徽省网站备案快吗
  • 东阳哪里可以做网站贵州网站备案查询
  • 如何布局网站网站顶部广告素材
  • 鹿泉市建设局网站织梦 网站标题
  • 怎样黑进别人的网站地方网站运营方案
  • 潍坊外贸网站优化seo是做什么的
  • 网站建设中最重要的是什么彩票网站是静态动态
  • 备案需要网站建设方案书wordpress 国产主题
  • 国内网站做国外服务器网站导航
  • seo网站推广价格广州微信开发
  • 杭州网站建站公司做推广哪家网站好
  • 宁德营销型网站建设网站关键字没有排名
  • 如何查询网站的备案信息查询去马来西亚做网站网站
  • 外贸网站推广多少费用做那个的网页
  • 江门手机网站建设连云港吧
  • thinkphp5 做网站google地图嵌入网站
  • 简单的网站建设企业网站备案跟做哪个推广有关系吗
  • HTML5怎么做自适应网站建设银行官网网站首页
  • 在欣欣网上做网站效果如何互联网优化营销
  • 广州市恒嘉建设有限公司网站天猫入驻网站建设
  • 网站开发fsdpjq个人名下公司查询网