{"id":664,"date":"2021-05-10T15:44:27","date_gmt":"2021-05-10T07:44:27","guid":{"rendered":"https:\/\/blog.espnlol.com\/?p=664"},"modified":"2022-04-20T18:19:44","modified_gmt":"2022-04-20T10:19:44","slug":"%e7%a6%85%e9%81%9312-3-3%e5%bc%80%e6%ba%90%e7%89%88%e9%9b%86%e6%88%90ldap","status":"publish","type":"post","link":"https:\/\/blog.espnlol.com\/?p=664","title":{"rendered":"\u7985\u905312.3.3\u5f00\u6e90\u7248\u96c6\u6210ldap"},"content":{"rendered":"\n<p>\u5b98\u65b9\u4e0d\u77e5\u9053\u4e3a\u4f55\u4e0b\u67b6\u4e8612.3\u7684ldap\u63d2\u4ef6\uff0c\u552f\u6709\u53bbgithub\u5bfb\u627e\u4e00\u9014\uff0c\u7ec8\u4e0d\u8d1f\u6709\u5fc3\u4eba\uff0c\u4eb2\u6d4b\u53ef\u7528<\/p>\n\n\n\n<p><a href=\"https:\/\/github.com\/anjia0532\/zentao-ldap\">https:\/\/github.com\/anjia0532\/zentao-ldap<\/a><\/p>\n\n\n\n<p>\u6211\u8fd9\u91cc\u5728k8s\u4e2d\u8fdb\u884c\u4e86\u5b89\u88c5\uff0c\u5b58\u50a8\u57fa\u4e8e\u672c\u5730\uff0c\u6570\u636e\u5e93\u7528\u7684\u8fdc\u7a0b\u7684\u4e2d\u592e\u5e93\uff0c\u5b89\u88c5\u4e0d\u8d58\u8ff0\uff0c\u8d34\u4e0byaml\u6587\u4ef6\u5427<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">apiVersion: apps\/v1beta2\nkind: Deployment\nmetadata:\n  annotations:\n    description: zentao\u7ba1\u7406\u5e73\u53f0\n  labels:\n    k8s-app: manage-zentao\n  name: manage-zentao\n  namespace: kube-ops\nspec:\n  minReadySeconds: 10\n  progressDeadlineSeconds: 600\n  replicas: 1\n  revisionHistoryLimit: 10\n  selector:\n    matchLabels:\n      k8s-app: manage-zentao\n  strategy:\n    rollingUpdate:\n      maxSurge: 0\n      maxUnavailable: 1\n    type: RollingUpdate\n  template:\n    metadata:\n      labels:\n        k8s-app: manage-zentao\n    spec:\n      affinity:\n        nodeAffinity:\n          requiredDuringSchedulingIgnoredDuringExecution:\n            nodeSelectorTerms:\n            - matchExpressions:\n              - key: kubernetes.io\/hostname\n                operator: In\n                values:\n                - 10.88.10.90\n      containers:\n        name: manage-zentao\n        image: easysoft\/zentao:12.3.3\n        imagePullPolicy: IfNotPresent\n        resources:\n          limits:\n            cpu: \"2\"\n            memory: 8Gi\n          requests:\n            cpu: \"400m\"\n            memory: 8Gi\n        securityContext:\n          privileged: false\n          procMount: Default\n        volumeMounts:\n        - mountPath: \/www\/zentaopms\n          name: manage-zentao-home\n        - mountPath: \/var\/lib\/mysql\n          name: manage-zentao-mysql\n      dnsPolicy: ClusterFirst\n      restartPolicy: Always\n      schedulerName: default-scheduler\n      terminationGracePeriodSeconds: 30\n      volumes:\n      - hostPath:\n          path: \/data\/k8s\/manage-zentao-home\/data\/\n        name: manage-zentao-home\n      - hostPath:\n          path: \/data\/k8s\/manage-zentao-home\/mysqldata\/\n        name: manage-zentao-mysql\n---\napiVersion: v1\nkind: Service\nmetadata:\n  name: manage-zentao\n  namespace: kube-ops\nspec:\n  ports:\n  - name: tcp-80-80\n    port: 80\n    protocol: TCP\n    targetPort: 80\n  selector:\n    k8s-app: manage-zentao\n  sessionAffinity: ClientIP\n  sessionAffinityConfig:\n    clientIP:\n      timeoutSeconds: 3600\n  type: NodePort\n---\napiVersion: extensions\/v1beta1\nkind: Ingress\nmetadata:\n  name: zentao-nginx-ingress\n  namespace: kube-ops\n  annotations:\n    kubernetes.io\/ingress.class: \"nginx\"\n    nginx.ingress.kubernetes.io\/keep-alive: \"1800\"\n    nginx.ingress.kubernetes.io\/proxy-read-timeout: \"1800\"\n    nginx.ingress.kubernetes.io\/proxy-send-timeout: \"1800\"\n    nginx.ingress.kubernetes.io\/proxy-body-size: 5000m\n    nginx.ingress.kubernetes.io\/client-header-timeout: \"1800\"\n    nginx.ingress.kubernetes.io\/client-body-timeout: \"1800\"\n    nginx.ingress.kubernetes.io\/proxy-connect-timeout: \"60\"\nspec:\n  tls:\n  - hosts: \n    - zt.espnlol.com\n    secretName: espnlol.com\n  rules:\n  - host: zt.espnlol.com\n    http: \n      paths:\n      - path: \/\n        backend:\n          serviceName: manage-zentao\n          servicePort: 80<\/pre>\n\n\n\n<p>\u5269\u4e0b\u7684\u521d\u59cb\u5316\u64cd\u4f5c\u770b\u4e0b\u5b98\u65b9\u6587\u6863\u5c31\u597d\u4e86\uff0c\u975e\u5e38\u7b80\u5355\uff0c\u5199\u7684\u4e5f\u5f88\u6e05\u695a<\/p>\n\n\n\n<p><a href=\"https:\/\/www.zentao.net\/book\/zentaopmshelp\/405.html\">https:\/\/www.zentao.net\/book\/zentaopmshelp\/405.html<\/a><\/p>\n\n\n\n<p>\u5c06\u4e0a\u9762\u7684ldap\u63d2\u4ef6\u4e0b\u8f7d\u4e0b\u6765\uff1azentao-ldap-12.3-stable.tar.gz<\/p>\n\n\n\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">\u653e\u5728\u670d\u52a1\u5668\u7684\/tmp\u4e0b\uff0c\u89e3\u538b\u4e4b\u540e\u4e3a:zentao-ldap-12.3-stable,\u8fdb\u5165\u76ee\u5f55\u6267\u884crsync -av ldap\/module\/ \/data\/k8s\/manage-zentao-home\/data\/module\/\u5c06\u6587\u4ef6\u540c\u6b65\u8fdbmodule\u76ee\u5f55\uff0c\u8d4b\u4e88\u6743\u9650chmod -R 777 \/data\/k8s\/manage-zentao-home\/data\/module,\u4e0d\u8d4b\u6743\u53ef\u80fd\u4f1a\u63d0\u793a\u627e\u4e0d\u5230\u6587\u4ef6\u54e6\uff0c\u540c\u6b65\u5b8c\u6210\u540e\u8fdb\u5165\u540e\u53f0\uff0c\u5c31\u53ef\u4ee5\u770b\u5230LDAP\u4e86<\/pre>\n\n\n\n<figure class=\"wp-block-image\"><img loading=\"lazy\" decoding=\"async\" width=\"723\" height=\"218\" src=\"https:\/\/blog.espnlol.com\/wp-content\/uploads\/2021\/05\/image.png\" alt=\"\" class=\"wp-image-665\" srcset=\"https:\/\/blog.espnlol.com\/wp-content\/uploads\/2021\/05\/image.png 723w, https:\/\/blog.espnlol.com\/wp-content\/uploads\/2021\/05\/image-300x90.png 300w\" sizes=\"auto, (max-width: 723px) 100vw, 723px\" \/><\/figure>\n\n\n\n<p>\u8fdb\u5165ldap\u5c06\u76f8\u5173\u914d\u7f6e\u8f93\u5165\u5373\u53ef<\/p>\n\n\n\n<table class=\"wp-block-table\"><thead><tr><th>\u9009\u9879<\/th><th>\u793a\u4f8b\u503c<\/th><\/tr><\/thead><tbody><tr><td>LDAP\u670d\u52a1\u5668<\/td><td>ldap:\/\/192.168.216.200:389<\/td><\/tr><tr><td>\u534f\u8bae\u7248\u672c<\/td><td>3<\/td><\/tr><tr><td>BindDN<\/td><td>cn=admin,dc=espnlol,dc=com<\/td><\/tr><tr><td>BindDN \u5bc6\u7801<\/td><td>xxxxxxx<\/td><\/tr><tr><td>BaseDN:<\/td><td>ou=users,dc=espnlol,dc=com<\/td><\/tr><tr><td>Search filter<\/td><td>(objectClass=inetOrgperson)<\/td><\/tr><tr><td>\u8d26\u53f7\u5b57\u6bb5<\/td><td>uid<\/td><\/tr><tr><td>EMail \u5b57\u6bb5<\/td><td>Email<\/td><\/tr><tr><td>\u59d3\u540d\u5b57\u6bb5<\/td><td>sn<\/td><\/tr><\/tbody><\/table>\n\n\n\n<p>\u8f93\u5165\u5b8c\u6210\uff0c\u70b9\u51fb\u4fdd\u5b58\uff0c\u624b\u52a8\u540c\u6b65\u5373\u53ef\u628a\u6240\u6709\u8d26\u53f7\u540c\u6b65\u8fdb\u6765\uff0c\u5f00\u542fldap\u4e4b\u540e\u9ed8\u8ba4\u767b\u5f55\uff0c\u9700\u8981\u5728\u8d26\u53f7\u524d\u52a0$\uff0c\u6bd4\u5982$admin<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5b98\u65b9\u4e0d\u77e5\u9053\u4e3a\u4f55\u4e0b\u67b6\u4e8612.3\u7684ldap\u63d2\u4ef6\uff0c\u552f\u6709\u53bbgithub\u5bfb\u627e\u4e00\u9014\uff0c\u7ec8\u4e0d\u8d1f\u6709 &hellip; <a href=\"https:\/\/blog.espnlol.com\/?p=664\">\u7ee7\u7eed\u9605\u8bfb <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[29],"tags":[],"class_list":["post-664","post","type-post","status-publish","format-standard","hentry","category-versionmanagement"],"_links":{"self":[{"href":"https:\/\/blog.espnlol.com\/index.php?rest_route=\/wp\/v2\/posts\/664","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.espnlol.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.espnlol.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.espnlol.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.espnlol.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=664"}],"version-history":[{"count":1,"href":"https:\/\/blog.espnlol.com\/index.php?rest_route=\/wp\/v2\/posts\/664\/revisions"}],"predecessor-version":[{"id":666,"href":"https:\/\/blog.espnlol.com\/index.php?rest_route=\/wp\/v2\/posts\/664\/revisions\/666"}],"wp:attachment":[{"href":"https:\/\/blog.espnlol.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=664"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.espnlol.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=664"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.espnlol.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=664"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}