精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Kubernetes 策略引擎 Kyverno 使用

云計算 云原生 開源
Kyverno 的高可用安裝可以通過運行多個副本來完成,并且 Kyverno 的每個副本將具有多個執(zhí)行不同功能的控制器。Webhook 處理來自 Kubernetes APIServer 的 AdmissionReview 請求,其 Monitor 組件創(chuàng)建和管理所需的配置。

Kyverno 是來自 Nirmata 的開源項目,后來捐贈給了 CNCF。Kyverno 是一個具有驗證和變異能力的 Kubernetes 策略引擎,但是它還有生成資源的功能,還加入了 API 對象查詢的能力。Kyverno 原本就是為 Kubernetes 編寫的,除了對象生成功能之外,還無需專用語言即可編寫策略。

同樣 Kyverno 在 Kubernetes 集群中也是作為動態(tài)準入控制器運行的。Kyverno 從 kube-apiserver 接收驗證和修改準入 webhook HTTP 回調,并應用匹配策略返回執(zhí)行準入策略或拒絕請求的結果。Kyverno 策略可以使用資源 Kind、name 和標簽選擇器匹配資源,而且名稱中支持通配符。

策略執(zhí)行是通過 Kubernetes events 來捕獲的,Kyverno 還報告現(xiàn)有資源的策略違規(guī)行為。下圖顯示了 Kyverno 的整體架構:

圖片

Kyverno架構

Kyverno 的高可用安裝可以通過運行多個副本來完成,并且 Kyverno 的每個副本將具有多個執(zhí)行不同功能的控制器。Webhook 處理來自 Kubernetes APIServer 的 AdmissionReview 請求,其 Monitor 組件創(chuàng)建和管理所需的配置。PolicyController watch 策略資源并根據(jù)配置的掃描間隔啟動后臺掃描,GenerateController 管理生成資源的生命周期。

安裝

首先需要保證你的 Kubernetes 集群版本必須高于 v1.14,要安裝的版本也和 Kubernetes 版本有關系。

圖片

兼容版本

我們這里已經是 v1.26.x 版本了,所以選擇安裝最新的 1.9.2 版本即可。

你可以選擇直接從最新版本的資源清單安裝 Kyverno,直接執(zhí)行下面的命令即可:

? kubectl create -f https://github.com/kyverno/kyverno/releases/download/v1.9.2/install.yaml

此外同樣可以使用 Helm 來進行一鍵安裝:

? helm repo add kyverno https://kyverno.github.io/kyverno/
? helm repo update
# Install the Kyverno Helm chart into a new namespace called "kube-kyverno"
? helm upgrade --install kyverno kyverno/kyverno -n kube-kyverno --create-namespace
Release "kyverno" does not exist. Installing it now.
NAME: kyverno
LAST DEPLOYED: Tue Apr 11 15:51:30 2023
NAMESPACE: kube-kyverno
STATUS: deployed
REVISION: 1
NOTES:
Chart version: 2.7.2
Kyverno version: v1.9.2

Thank you for installing kyverno! Your release is named kyverno.
?? WARNING: Setting replicas count below 3 means Kyverno is not running in high availability mode.

?? Note: There is a trade-off when deciding which approach to take regarding Namespace exclusions. Please see the documentation at https://kyverno.io/docs/installation/#security-vs-operability to understand the risks.

安裝完成會創(chuàng)建一個 kube-kyverno 命名空間,同樣也包含一些相關的 CRD:

? kubectl get pods -n kube-kyverno
NAME READY STATUS RESTARTS AGE
kyverno-8657b8cfcf-mgtsr 1/1 Running 0 2m25s
kyverno-cleanup-controller-5c964d77dc-5s5zp 1/1 Running 0 2m25s
? kubectl get validatingwebhookconfiguration
NAME WEBHOOKS AGE
kyverno-cleanup-validating-webhook-cfg 1 44m
kyverno-exception-validating-webhook-cfg 1 16m
kyverno-policy-validating-webhook-cfg 1 16m
kyverno-resource-validating-webhook-cfg 0 16m
? kubectl get mutatingwebhookconfigurations
NAME WEBHOOKS AGE
kyverno-policy-mutating-webhook-cfg 1 17m
kyverno-resource-mutating-webhook-cfg 0 17m
kyverno-verify-mutating-webhook-cfg 1 17m
? kubectl get crd |grep kyverno
admissionreports.kyverno.io 2023-04-11T07:51:33Z
backgroundscanreports.kyverno.io 2023-04-11T07:51:33Z
cleanuppolicies.kyverno.io 2023-04-11T07:51:33Z
clusteradmissionreports.kyverno.io 2023-04-11T07:51:33Z
clusterbackgroundscanreports.kyverno.io 2023-04-11T07:51:33Z
clustercleanuppolicies.kyverno.io 2023-04-11T07:51:33Z
clusterpolicies.kyverno.io 2023-04-11T07:51:34Z
generaterequests.kyverno.io 2023-04-11T07:51:33Z
policies.kyverno.io 2023-04-11T07:51:34Z
policyexceptions.kyverno.io 2023-04-11T07:51:33Z
updaterequests.kyverno.io 2023-04-11T07:51:33Z

可以看出安裝完成后創(chuàng)建了幾個 validatingwebhookconfiguration 與 mutatingwebhookconfigurations 對象。

策略與規(guī)則

使用 Kyverno 其實就是對策略和規(guī)則的應用,Kyverno 策略是規(guī)則的集合,每個規(guī)則都包含一個 match 聲明、一個可選的 exclude 聲明以及 validate、mutate、generate 或 verifyImages 聲明之一組成,每個規(guī)則只能包含一個 validate、mutate、generate 或 verifyImages 子聲明。

圖片

Kyverno策略

策略可以定義為集群范圍的資源(ClusterPolicy)或命名空間級別資源(Policy)。

  • Policy 將僅適用于定義它們的 namespace 內的資源。
  • ClusterPolicy 應用于匹配跨所有 namespace 的資源。

策略定義

編寫策略其實就是定義 Policy 或者 ClusterPolicy 對象。

驗證資源

驗證規(guī)則基本上是我們使用最常見和最實用的規(guī)則類型,當用戶或進程創(chuàng)建新資源時,Kyverno 將根據(jù)驗證規(guī)則檢查該資源的屬性,如果驗證通過,則允許創(chuàng)建資源。如果驗證失敗,則創(chuàng)建被阻止。比如現(xiàn)在我們添加一個策略,要求所有的 pod 都包含一個 kyverno 的標簽:

# kyverno-require-label.yaml
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
name: require-label-policy
spec:
validationFailureAction: Enforce
rules:
- name: check-for-labels
match:
resources:
kinds:
- Pod
validate:
message: "label 'kyverno' is required"
pattern:
metadata:
labels:
kyverno: "?*"

上面策略文件中添加了一個 validatinotallow=[Audit, Enforce] 屬性:

  • 當處于 Audit 模式下,每當創(chuàng)建違反規(guī)則集的一個或多個規(guī)則的資源時,會允許 admission review 請求,并將結果添加到報告中。
  • 當處于 Enforce 模式下,資源在創(chuàng)建時立即被阻止,報告中不會有。

然后就是下面使用 rules 屬性定義的規(guī)則集合,match 用于表示匹配的資源資源,validate 表示驗證方式,這里我們定義 kyverno: "?*" 這樣的標簽表示必須有這樣的一個標簽 key。

直接應用上面的策略對象即可:

? kubectl apply -f kyverno-require-label.yaml
clusterpolicy.kyverno.io/require-label-policy created
? kubectl get clusterpolicy
NAME BACKGROUND VALIDATE ACTION READY AGE
require-label-policy true Enforce true 4m23s

現(xiàn)在我們添加一個不帶標簽 kyverno 的 Pod:

? kubectl run busybox --image=busybox:1.28.3  --restart=Never -- sleep 1000000
Error from server: admission webhook "validate.kyverno.svc-fail" denied the request:

policy Pod/default/busybox for resource violation:

require-label-policy:
check-for-labels: 'validation error: label ''kyverno'' is required. rule check-for-labels
failed at path /metadata/labels/kyverno/'

可以看到提示,需要一個 kyverno 標簽,同樣我們也可以通過查看 Events 事件來了解策略應用情況:

? kubectl get events -A -w
......
for-labels fail: validation error: label 'kyverno' is required. rule autogen-check-for-labels failed at path /spec/template/metadata/labels/kyverno/
qdrant-system 51s Warning PolicyViolation pod/qdrant-0 policy require-label-policy/check-for-labels fail: validation error: label 'kyverno' is required. rule check-for-labels failed at path /metadata/labels/kyverno/
qdrant-system 50s Warning PolicyViolation statefulset/qdrant policy require-label-policy/autogen-check-for-labels fail: validation error: label 'kyverno' is required. rule autogen-check-for-labels failed at path /spec/template/metadata/labels/kyverno/

如果創(chuàng)建的 Pod 帶有 kyverno 標簽則可以正常創(chuàng)建:

? kubectl run busybox --image=busybox:1.28.3 --labels kyverno=demo --restart=Never -- sleep 1000000
pod/busybox created

如果將 validationFailureAction 的值更改為 Audit,則即使我們創(chuàng)建的 Pod 不帶有 kyverno 標簽,也可以創(chuàng)建成功,但是我們可以在 PolicyReport 對象中看到對應的違規(guī)報告:

? kubectl get policyreports
NAME PASS FAIL WARN ERROR SKIP AGE
cpol-require-label-policy 0 1 0 0 0 4m42s
? kubectl describe policyreports |grep "Result: \+fail" -B10
UID: def28081-aa68-4e96-bb43-fdc73274df00
Results:
Message: validation error: label 'kyverno' is required. rule check-for-labels failed at path /metadata/labels/kyverno/
Policy: require-label-policy
Resources:
API Version: v1
Kind: Pod
Name: busybox
Namespace: default
UID: 9667e83d-62a3-4844-b5d7-da127e9cee2c
Result: fail

從上面的報告資源中可以看到違反策略的資源對象。

變更規(guī)則

變更規(guī)則可以用于修改匹配到規(guī)則的資源(比如規(guī)則設置了 metadata 字段可以和資源的 metadata 進行合并),就是根據(jù)我們設置的規(guī)則來修改對應的資源。

比如現(xiàn)在我們添加如下所示一個策略,給所有包含 nginx 鏡像的 pod 都加上一個標簽(kyverno=nginx):

# kyverno-mutate-label.yaml
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
name: nginx-label-policy
spec:
rules:
- name: nginx-label
match:
resources:
kinds:
- Pod
mutate:
patchStrategicMerge:
metadata:
labels:
kyverno: nginx
spec:
(containers):
- (image): "*nginx*" # 容器鏡像包含 nginx 即可

直接應用上面這個策略對象即可:

? kubectl apply -f kyverno-mutate-label.yaml
clusterpolicy.kyverno.io/nginx-label-policy created
? kubectl get clusterpolicy
NAME BACKGROUND VALIDATE ACTION READY AGE
nginx-label-policy true Audit true 6s

現(xiàn)在我們使用 nginx 鏡像直接創(chuàng)建一個 Pod:

? kubectl run --image=nginx:1.7.9 nginx
pod/nginx created
? kubectl get pod nginx --show-labels
NAME READY STATUS RESTARTS AGE LABELS
nginx 1/1 Running 0 11s kyverno=nginx,run=nginx

可以看到 Pod 創(chuàng)建成功后包含了一個 kyverno=nginx 標簽,由于有 kyverno 標簽,所以上面的驗證策略也是通過的,可以正常創(chuàng)建。

生成資源

生成規(guī)則可用于在創(chuàng)建新資源或更新源時創(chuàng)建其他資源,例如為命名空間創(chuàng)建新 RoleBindings 或 Secret 等。

比如現(xiàn)在我們一個需求是將某個 Secret 同步到其他命名空間中去(比如 TLS 密鑰、鏡像倉庫認證信息),手動復制這些 Secret 比較麻煩,則我們可以使用 Kyverno 來創(chuàng)建一個策略幫助我們同步這些 Secret。比如在 default 命名空間中有一個名為 regcred 的 Secret 對象,需要復制到另外的命名空間,如果源 Secret 發(fā)生更改,它還將向復制的 Secret 同步更新。

# kyverno-generate-secret.yaml
apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
name: sync-secrets-policy
spec:
rules:
- name: sync-image-pull-secret
match:
resources:
kinds:
- Namespace
generate: # 生成的資源對象
kind: Secret
name: regcred
namespace: "{{request.object.metadata.name}}" # 獲取目標命名空間
synchronize: true
clone:
namespace: default
name: regcred

先在 default 命名空間中準備我們的 Secret 對象:

? kubectl create secret docker-registry regcred --docker-server=DOCKER_REGISTRY_SERVER --docker-username=DOCKER_USER --docker-password=DOCKER_PASSWORD --docker-email=DOCKER_EMAIL
secret/regcred created

然后應用上面的同步 Secret 策略:

? kubectl apply -f kyverno-generate-secret.yaml
clusterpolicy.kyverno.io/sync-secrets-policy created
? kubectl get clusterpolicy
NAME BACKGROUND ACTION READY
sync-secrets-policy true Audit true 9s

現(xiàn)在我們創(chuàng)建一個新的命名空間:

? kubectl create ns test
namespace/test created
? kubectl get secret -n test
NAME TYPE DATA AGE
regcred kubernetes.io/dockerconfigjson 1 6s

可以看到在新建的命名空間中多了一個 regcred 的 Secret 對象。

更多的 Kyverno 策略可以直接查看官方網(wǎng)站:https://kyverno.io/policies,可以在該網(wǎng)站上面根據(jù)策略類型、分類、主題等進行篩選。Kyverno 在靈活、強大和易用之間取得了一個很好的平衡,不需要太多學習時間,就能夠提供相當方便的功能,官網(wǎng)提供了大量的針對各種場景的樣例,非常值得使用。

比如我們可以創(chuàng)建一個如下所示的策略限制 NGINX Ingress 的路徑值(CVE-2021-25745 安全問題,在 NGINX Ingress v1.2.0 中修復):

apiVersion: kyverno.io/v1
kind: ClusterPolicy
metadata:
name: restrict-ingress-paths
annotations:
policies.kyverno.io/title: Restrict NGINX Ingress path values
policies.kyverno.io/category: Security, NGINX Ingress
policies.kyverno.io/severity: high
policies.kyverno.io/subject: Ingress
policies.kyverno.io/minversion: "1.6.0"
kyverno.io/kyverno-version: "1.6.0"
kyverno.io/kubernetes-version: "1.23"
policies.kyverno.io/description: >-
This policy mitigates CVE-2021-25745 by restricting `spec.rules[].http.paths[].path` to safe values.
Additional paths can be added as required. This issue has been fixed in NGINX Ingress v1.2.0.
Please refer to the CVE for details.
spec:
validationFailureAction: enforce
rules:
- name: check-paths
match:
any:
- resources:
kinds:
- networking.k8s.io/v1/Ingress
validate:
message: "spec.rules[].http.paths[].path value is not allowed"
deny:
conditions:
any:
- key: "{{ request.object.spec.rules[].http.paths[].path.contains(@,'/etc') }}"
operator: AnyIn
value: [true]
- key: "{{ request.object.spec.rules[].http.paths[].path.contains(@,'/var/run/secrets') }}"
operator: AnyIn
value: [true]
- key: "{{ request.object.spec.rules[].http.paths[].path.contains(@,'/root') }}"
operator: AnyIn
value: [true]
- key: "{{ request.object.spec.rules[].http.paths[].path.contains(@,'/var/run/kubernetes/serviceaccount') }}"
operator: AnyIn
value: [true]
- key: "{{ request.object.spec.rules[].http.paths[].path.contains(@,'/etc/kubernetes/admin.conf') }}"
operator: AnyIn
value: [true]
責任編輯:姜華 來源: k8s技術圈
相關推薦

2024-04-18 07:21:41

KyvernoKubernetes策略引擎

2022-03-30 07:45:41

KyvernoAPI開源項目

2021-11-22 08:50:20

Kubernetes網(wǎng)絡策略云原生應用程序

2022-04-27 10:40:38

KubecostKyverno云原生

2016-06-15 10:35:59

云計算

2022-04-07 09:30:00

自動化LinodeKubernetes

2025-03-11 08:04:39

2022-02-23 09:00:00

Kubernetes集群容器

2019-06-03 09:00:25

Kubernetes部署金絲雀版本

2020-08-10 11:06:19

開放式策略代理OPA云原生

2020-09-15 10:28:42

Kubernetes容器

2024-01-03 08:54:17

Kubernetes策略工具

2023-11-08 00:23:08

網(wǎng)關API

2023-12-18 08:44:54

Dragonfly基座引擎引擎框架

2023-03-21 15:26:02

Kubernetes容器開發(fā)

2022-11-24 09:35:52

2022-05-16 08:27:20

KubernetePodLinux

2024-04-26 06:43:19

KubernetesPod識別

2020-05-14 16:35:21

Kubernetes網(wǎng)絡策略DNS

2021-03-12 06:44:09

Argo Workfl開源項目
點贊
收藏

51CTO技術棧公眾號

久久一区二区三区喷水| 91桃色在线| 日韩精彩视频在线观看| 亚洲欧美日韩成人| 大香煮伊手机一区| 精品三级久久久久久久电影聊斋| 视频一区二区中文字幕| 日韩欧美国产午夜精品| 少妇高潮流白浆| 国产情侣激情自拍| 久久大逼视频| 欧美成人性色生活仑片| 丰满少妇一区二区| 欧美成人黄色| 富二代精品短视频| 中文字幕久精品免| 青草久久伊人| 国产福利视频一区二区三区| 国产va免费精品高清在线观看| 国产大片免费看| 免费电影一区二区三区| 日韩一区二区三区四区| 色婷婷综合久久久久中文字幕 | 国产精品资源网| 欧美在线视频免费观看| 欧美日韩在线视频免费播放| 欧美人与牛zoz0性行为| 亚洲第一区在线| 男女污污视频网站| 欧美日韩视频免费观看| 五月天婷婷综合| 法国空姐在线观看免费| 国产成人天天5g影院在线观看| 成人av网站在线观看| 91丨九色丨国产在线| 少妇又紧又色又爽又刺激视频| 国产欧美大片| 51色欧美片视频在线观看| 久久久美女视频| 国产精品久久久久久久| 中文字幕亚洲一区二区三区五十路 | 亚洲精品乱码视频| 欧美色图另类| caoporen国产精品视频| 国产精品 日韩| 国产富婆一级全黄大片| 精品亚洲国内自在自线福利| 国产精品男人的天堂| 青青视频在线免费观看| 午夜影院日韩| 欧美在线激情网| 在线精品免费视| 新狼窝色av性久久久久久| 97久久精品国产| 欧美日韩免费一区二区| 中国成人一区| 色综合久久悠悠| 男人的天堂久久久| 欧美日韩国产探花| 欧美巨乳在线观看| 激情四射综合网| 亚洲网站视频| 国内偷自视频区视频综合| 日韩黄色三级视频| 国产亚洲高清视频| 欧美一区二区三区…… | 天堂午夜影视日韩欧美一区二区| 午夜精品视频在线| 国产一级片毛片| 日韩av中文字幕一区二区 | 66精品视频在线观看| 欧美成人一区二区三区片免费 | 欧美激情18p| 亚州国产精品视频| 欧美亚洲视频| 国产日韩欧美视频在线| 精品国产一级片| 成年人网站91| 欧美日韩在线精品| 日本在线观看网站| 一区二区免费在线播放| 国产视频九色蝌蚪| 亚洲精品粉嫩美女一区| 91精品国产一区二区三区香蕉| 中国男女全黄大片| 久久99国产精品视频| 日韩视频免费看| 久久久99精品| 日韩黄色免费电影| 91青青草免费观看| 欧美日韩在线精品一区二区三区激情综 | 97人人模人人爽视频一区二区| 成人久久久精品国产乱码一区二区| av网站一区二区三区| 免费试看一区| 免费黄色在线看| 亚洲成a人v欧美综合天堂 | 久久精品99久久久久久| 免费欧美在线| 51成人做爰www免费看网站| 日本中文字幕一区二区有码在线| 中文字幕一区二区三| 免费一级特黄毛片| 日韩欧乱色一区二区三区在线| 精品国产一区二区三区四区四| 亚洲一区视频在线播放| 欧美激情91| 国产精品老牛影院在线观看| 亚洲精品97久久中文字幕| 久久久精品综合| 国产精品va在线观看无码| 91大神在线观看线路一区| 日韩一区二区三| 天天摸日日摸狠狠添| 亚洲激情社区| 亚洲一区二区三区成人在线视频精品 | 日本福利视频一区| 91精品一区| 一本一本久久a久久精品牛牛影视 一本色道久久综合亚洲精品小说 一本色道久久综合狠狠躁篇怎么玩 | 香蕉网在线播放| 欧美日韩国产成人精品| 91九色蝌蚪国产| 成全电影播放在线观看国语| 高跟丝袜欧美一区| 扒开伸进免费视频| 一区二区三区国产精华| 国产在线观看不卡| 爱久久·www| 精品国产户外野外| 在线免费看黄色片| 国产在线日韩| 成人免费午夜电影| 最新av网站在线观看 | 2018日韩中文字幕| 人妻精品无码一区二区| 一区二区三区欧美| 黄色a级三级三级三级| 日韩av密桃| 国产精品久久久久久久天堂| 国产精品久久一区二区三区不卡| 色综合久久天天| 日本黄色网址大全| 国产精品一区毛片| 久久人人九九| 成人午夜视屏| 亚洲女人被黑人巨大进入al| 国产狼人综合免费视频| 国内精品久久久久久久久久久| 国产精品第五页| 91在线观看免费高清| 日韩理伦片在线| 9191国产精品| 欧洲第一无人区观看| 国产精品一区久久久久| 日本免费成人网| 盗摄牛牛av影视一区二区| 欧美精品福利视频| 天天干视频在线观看| 婷婷六月综合网| 国产精品jizz| 六月丁香婷婷久久| 潘金莲一级淫片aaaaa免费看| 国产精品视频首页| 久久久久久久久久久国产| 粉嫩av一区二区夜夜嗨| 欧美日韩精品在线| 亚洲av成人无码久久精品| 免费人成黄页网站在线一区二区| 亚洲蜜桃av| 日韩在线观看中文字幕| 久久久久久午夜| 黄色在线视频观看网站| 欧美日韩中文字幕精品| 少妇aaaaa| 99久久综合精品| 手机看片福利日韩| 91tv官网精品成人亚洲| 国产免费一区二区三区| 美女日韩欧美| 美女撒尿一区二区三区| 色呦呦免费观看| 欧美性大战xxxxx久久久| 小泽玛利亚一区二区免费| 成人免费黄色大片| 亚洲三级视频网站| 国一区二区在线观看| 六十路精品视频| 成人在线视频区| 欧美在线精品免播放器视频| 国产激情视频在线| 精品视频偷偷看在线观看| 欧美日韩 一区二区三区| 夜夜操天天操亚洲| 懂色av粉嫩av浪潮av| 国产v综合v亚洲欧| 噼里啪啦国语在线观看免费版高清版| 亚洲精品成人无限看| 久久国产主播精品| 国产精品美女久久久久人| 国产91成人video| 米奇精品一区二区三区| 日韩精品免费在线观看| 国产99对白在线播放| 在线观看国产日韩| 国语对白一区二区| 1000部国产精品成人观看| 国产伦精品一区二区三区妓女| 精品制服美女丁香| 老头吃奶性行交视频| 欧美视频在线观看| 一区二区三区四区免费视频| 亚洲+小说+欧美+激情+另类| 51成人做爰www免费看网站| 国产情侣一区二区三区| 国产91精品久久久久| 日本高清成人vr专区| 最近2019中文字幕大全第二页| 日日躁夜夜躁白天躁晚上躁91| 欧美精品成人一区二区三区四区| 中文字字幕在线中文| 亚洲精品欧美激情| 日本一级片免费| 国产亚洲欧美在线| 免费在线观看成年人视频| 国产91精品在线观看| 99视频在线观看视频| 奇米精品一区二区三区四区| 欧美污视频网站| 99日韩精品| 丁香花在线影院观看在线播放| 一区二区电影| 一级性生活视频| 亚洲视频电影在线| 日本黄色a视频| 999国产精品| 中文精品一区二区三区| 大胆日韩av| 亚洲人一区二区| 成久久久网站| 新呦u视频一区二区| 精品国产一区二区三区久久久樱花| 乱色588欧美| 伊人久久大香线蕉av不卡| 久久av免费一区| 人人精品亚洲| 欧美一区亚洲二区| 国产成人精品三级高清久久91| 欧美日韩一区二区三区在线视频| 麻豆成人入口| 久久久久久久久久久一区| 牛牛影视久久网| 欧美精品一区二区三区久久| 青青视频一区二区| 欧美极品一区二区| 欧美日韩久久精品| 影音先锋欧美在线| 欧美 亚欧 日韩视频在线| 777久久精品一区二区三区无码| 一区二区三区中文| 日韩美女爱爱视频| 亚洲激情婷婷| 北条麻妃在线一区| 麻豆精品国产91久久久久久| 亚洲自拍第三页| 国产风韵犹存在线视精品| 黄色免费视频网站| 久久夜色精品国产噜噜av | 国产高清视频免费观看| 日韩精品一区二| 无码国产色欲xxxx视频| 亚洲欧美日韩另类| 欧美三级理伦电影| 欧美精品999| 欧洲av一区二区| 亚洲一区二区三区视频| 精品人人人人| 亚洲 国产 欧美一区| 中文字幕日韩一区二区不卡| 毛片在线视频播放| 日韩av电影免费观看高清完整版| 免费黄频在线观看| av在线不卡电影| 性少妇xx生活| 亚洲成av人**亚洲成av**| 姑娘第5集在线观看免费好剧| 欧美一区二区人人喊爽| 日本一卡二卡四卡精品| 久久伊人精品一区二区三区| mm视频在线视频| 国产一区二中文字幕在线看| 大香伊人久久精品一区二区| 色乱码一区二区三在线看| 欧美日韩亚洲一区二区三区在线| 日本黄网站免费| 国产成人在线影院| 亚洲精品国产精品国自| 亚洲成年人网站在线观看| 在线免费观看视频网站| 亚洲精品成a人在线观看| 巨大荫蒂视频欧美另类大| 欧美最猛性xxxxx免费| 精品中文字幕一区二区三区| 日本视频精品一区| 黑人一区二区| 国产精品久久久毛片| 99精品国产视频| 无码人妻精品一区二区三区夜夜嗨| 色婷婷综合久久| 日本激情一区二区三区| 久久综合九色九九| 成人午夜sm精品久久久久久久| 国产日韩欧美一区二区三区四区| 91亚洲国产成人久久精品麻豆| 91免费小视频| 少妇无套高潮一二三区| 亚洲国产cao| 精品国产一级片| 俺去亚洲欧洲欧美日韩| 欧美韩国亚洲| 久久精品日产第一区二区三区乱码| 午夜精品网站| 超碰在线资源站| 国产精品免费网站在线观看| 天天干天天色综合| 日韩精品福利在线| 成人免费观看在线观看| 99久久99久久精品国产片| 99久久www免费| 国产区二区三区| 久久精品水蜜桃av综合天堂| 青青国产在线观看| 欧美精品一区二区三| 色呦呦在线视频| 亚洲xxxxx电影| 伊人久久大香线| 韩国一区二区在线播放| 亚洲视频在线一区观看| 国产原创中文av| 久久精品视频va| 国产精品高清一区二区| 久久av秘一区二区三区| 久久精品国产网站| 美国一级片在线观看| 欧美蜜桃一区二区三区| 老司机精品视频在线观看6| 国产日韩欧美夫妻视频在线观看 | 999视频在线| 国产亚洲视频在线| 国精品产品一区| 在线观看成人一级片| 久久国产精品99久久久久久老狼 | 韩国中文字幕2020精品| 国产精品高潮呻吟久久av黑人| 红桃成人av在线播放| 黄色三级视频在线| 自拍偷拍国产亚洲| www.国产视频| 91精品国产九九九久久久亚洲| 蜜桃a∨噜噜一区二区三区| 久久久久国产精品熟女影院| 国产精品久久久久永久免费观看| 97超碰人人草| 欧美人与性动交a欧美精品| 国产精品网址| 亚洲中文字幕无码不卡电影| 中文字幕第一区第二区| 97久久人国产精品婷婷| 久久久久九九九九| 亚洲精品国产setv| 孩娇小videos精品| 一区二区三区四区在线播放 | 亚洲精品不卡在线观看| 成年人午夜免费视频| 国产色综合一区| aa视频在线免费观看| 26uuu日韩精品一区二区| 国产探花视频在线播放| 午夜精品久久久久久| 韩国福利在线| 亚洲999一在线观看www| 伊人成年综合电影网| av网站免费在线看| 欧美一三区三区四区免费在线看| 国产v日韩v欧美v| 亚洲一区二区三区精品在线观看| 国产福利一区二区三区视频在线 | av片在线观看免费| 精品一区二区三区国产| 另类中文字幕网| 日韩精品成人一区| 中文字幕日韩av综合精品| 超碰在线一区| 欧美日韩中文不卡| 午夜电影网一区| 男女啪啪在线观看| 久久资源亚洲| 国产成人在线色| 一级特黄特色的免费大片视频| 欧美亚洲成人精品| 欧美另类专区|