国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁 > news >正文

大連市建設(shè)工程網(wǎng)官網(wǎng)seo快速整站上排名教程

大連市建設(shè)工程網(wǎng)官網(wǎng),seo快速整站上排名教程,wordpress功能插件,電商網(wǎng)站有哪些類型目錄 一、Docker-compose快速拉起demo測試環(huán)境 二、原生部署流程 安裝MySQL:5.7數(shù)據(jù)庫 安裝openLDAP 修改域名,新增con.ldif 創(chuàng)建一個組織 安裝OpenResty 下載后端 下載前端 部署后端 部署前端 三、管理動態(tài)字段 釘釘 企業(yè)微信 飛書 四、…

目錄

一、Docker-compose快速拉起demo測試環(huán)境

二、原生部署流程

安裝MySQL:5.7數(shù)據(jù)庫

安裝openLDAP

?修改域名,新增con.ldif

創(chuàng)建一個組織

安裝OpenResty

下載后端

下載前端

部署后端

部署前端

三、管理動態(tài)字段

釘釘

企業(yè)微信

飛書

四、部分報錯


Go-Ldap-Admin官網(wǎng):Go-Ldap-Admin

本文用于記錄整個安裝部署過程以及過程中遇到的坑。?

首先準備一臺干凈的服務(wù)器,配置最好不低于2C4G,當(dāng)然如果MySQL不在本機部署,那可以將配置降為1C2G。(CentOS7)我也不喜歡用這玩意兒,但是官網(wǎng)是按照這個來的。


一、Docker-compose快速拉起demo測試環(huán)境

僅僅是一個測試用的demo環(huán)境!不支持IM以進行數(shù)據(jù)同步。

docker和docker-compose默認你有,端口映射情況:

ServicePort(宿主機端口:容器端口)
MySQL3307:3306
openLDAP389:389
phpldapadmin8091:80
go-ldap-admin8090:80,8888:8888

拉取:

git clone https://github.com/eryajf/go-ldap-admin.git

進入到docker-compose目錄之后,目錄層級與內(nèi)容如下:

tree -N docker-compose
docker-compose
├── config
│   ├── init.ldif
│   └── my.cnf
└── docker-compose.yaml1 directory, 3 files

拉起:

cd docs/docker-compose
docker-compose up -d

當(dāng)看到容器都正常運行之后,可以在本地進行訪問:http://localhost:8090,用戶名/密碼:admin/123456

如果想要訪問PhpLdapAdmin,則可訪問:http://localhost:8091,用戶名/密碼:cn=admin,dc=eryajf,dc=net/123456?

注意:這里有個小坑,在此測試環(huán)境中是無法進行釘釘?shù)葢?yīng)用架構(gòu)同步的,報錯如下:

41001: access_token missing, hint: [1681804729372880375054761], from ip: *, more info at?https://open.work.weixin.qq.com/devtool/query?e=41001

直到看見作者在GitHub的評論才知道是不支持。


二、原生部署流程

隨手關(guān)一下:

systemctl disable firewalld.service --now

安裝MySQL:5.7數(shù)據(jù)庫

俺也沒試過8.0,官網(wǎng)建議使用5.7。

由于CentOS的yum源中沒有mysql,需要到mysql的官網(wǎng)下載yum repo配置文件:

wget https://dev.mysql.com/get/mysql80-community-release-el7-5.noarch.rpm

然后進行repo的安裝:

rpm -ivh mysql80-community-release-el7-5.noarch.rpm

根據(jù)自己的需要,關(guān)閉,或者開啟想要的版本:

# 關(guān)閉8.0
yum-config-manager --disable mysql80-community# 開啟5.7
yum-config-manager --enable mysql57-community

開始安裝:

yum install mysql-server -y

Mysql,啟動!

systemctl start mysqld

第一次登錄查看臨時密碼:

grep 'temporary password' /var/log/mysqld.log

登錄后對密碼進行修改:

alter user 'root'@'localhost' identified by 'Abc@1234';

隨手執(zhí)行一下:

use mysql;
update user set host = '%' where user ='root';

創(chuàng)建數(shù)據(jù)庫:

CREATE USER 'ldap'@'localhost' IDENTIFIED BY 'Eryajf@123';CREATE DATABASE IF NOT EXISTS `go_ldap_admin` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;GRANT ALL PRIVILEGES on `go_ldap_admin`.* to 'ldap'@'localhost';FLUSH privileges;

安裝openLDAP

以yum方式安裝:

yum install openldap openldap-clients openldap-servers -y

復(fù)制一個默認配置到指定目錄下,并授權(quán),這一步一定要做,然后再啟動服務(wù),不然生產(chǎn)密碼時會報錯:

cp /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG

授權(quán):

chown -R ldap /var/lib/ldap/DB_CONFIG

啟動:

systemctl enable slapd --now

初始化配置,生成密碼,這里自己的記錄一下{SSHA}這一串,后面需要用到:

slappasswd -s 123456

新增修改密碼文件,ldif為后綴,文件名隨意,不要在/etc/openldap/slapd.d/目錄下創(chuàng)建類似文件 生成的文件為需要通過命令去動態(tài)修改ldap現(xiàn)有配置,如下,我在家目錄下,創(chuàng)建文件(記得修改{SSHA}密碼為上面拿到的那一串)

cd ~
vim changepwd.ldif
dn: olcDatabase={0}config,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}LSgYPTUW4zjGtIVtuZ8cRUqqFRv1tWpE# 這里解釋一下這個文件的內(nèi)容:
# 第一行執(zhí)行配置文件,這里就表示指定為 cn=config/olcDatabase={0}config 文件。
# 你到/etc/openldap/slapd.d/目錄下就能找到此文件
# 第二行 changetype 指定類型為修改
# 第三行 add 表示添加 olcRootPW 配置項
# 第四行指定 olcRootPW 配置項的值
# 在執(zhí)行下面的命令前,你可以先查看原本的olcDatabase={0}config文件,
# 里面是沒有olcRootPW這個項的,執(zhí)行命令后,你再看就會新增了olcRootPW項,
# 而且內(nèi)容是我們文件中指定的值加密后的字符串

執(zhí)行命令以修改配置:

ldapadd -Y EXTERNAL -H ldapi:/// -f changepwd.ldif

切記不能直接修改/etc/openldap/slapd.d/目錄下的配置。

我們需要向 LDAP 中導(dǎo)入一些基本的 Schema。這些 Schema 文件位于/etc/openldap/schema/目錄中,schema控制著條目擁有哪些對象類和屬性,可以自行選擇需要的進行導(dǎo)入(注意依次執(zhí)行)

ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/cosine.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/nis.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/inetorgperson.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/collective.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/corba.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/duaconf.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/dyngroup.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/java.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/misc.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/openldap.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/pmi.ldif
ldapadd -Y EXTERNAL -H ldapi:/// -f /etc/openldap/schema/ppolicy.ldif

?修改域名,新增con.ldif

這里官方自定義的域名為 eryajf.net,管理員用戶賬號為admin。 如果要修改,則修改文件中相應(yīng)的dc=eryajf,dc=net為自己的域名,密碼切記改成上面重新生成的哪個。

vim con.ldif
dn: olcDatabase={1}monitor,cn=config
changetype: modify
replace: olcAccess
olcAccess: {0}to * by dn.base="gidNumber=0+uidNumber=0,cn=peercred,cn=external,cn=auth" read by dn.base="cn=admin,dc=eryajf,dc=net" read by * nonedn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcSuffix
olcSuffix: dc=eryajf,dc=netdn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=admin,dc=eryajf,dc=netdn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootPW
olcRootPW: {SSHA}LSgYPTUW4zjGtIVtuZ8cRUqqFRv1tWpEdn: olcDatabase={2}hdb,cn=config
changetype: modify
add: olcAccess
olcAccess: {0}to attrs=userPassword,shadowLastChange by dn="cn=admin,dc=eryajf,dc=net" write by anonymous auth by self write by * none
olcAccess: {1}to dn.base="" by * read
olcAccess: {2}to * by dn="cn=admin,dc=eryajf,dc=net" write by * read

執(zhí)行命令以修改:

ldapmodify -Y EXTERNAL -H ldapi:/// -f con.ldif

確認這里有5條輸出,因為進行了5項修改:

啟用memberof功能,新增add-memberof.ldif:

vim add-memberof.ldif
dn: cn=module{0},cn=config
cn: modulle{0}
objectClass: olcModuleList
objectclass: top
olcModuleload: memberof.la
olcModulePath: /usr/lib64/openldapdn: olcOverlay={0}memberof,olcDatabase={2}hdb,cn=config
objectClass: olcConfig
objectClass: olcMemberOf
objectClass: olcOverlayConfig
objectClass: top
olcOverlay: memberof
olcMemberOfDangling: ignore
olcMemberOfRefInt: TRUE
olcMemberOfGroupOC: groupOfUniqueNames
olcMemberOfMemberAD: uniqueMember
olcMemberOfMemberOfAD: memberOf

新增refint1.ldif文件:

vim refint1.ldif
dn: cn=module{0},cn=config
add: olcmoduleload
olcmoduleload: refint

新增refint2.ldif文件:

vim refint2.ldif
dn: olcOverlay=refint,olcDatabase={2}hdb,cn=config
objectClass: olcConfig
objectClass: olcOverlayConfig
objectClass: olcRefintConfig
objectClass: top
olcOverlay: refint
olcRefintAttribute: memberof uniqueMember  manager owner

依次執(zhí)行以下命令,順序不要錯:

ldapadd -Q -Y EXTERNAL -H ldapi:/// -f add-memberof.ldif
ldapmodify -Q -Y EXTERNAL -H ldapi:/// -f refint1.ldif
ldapadd -Q -Y EXTERNAL -H ldapi:/// -f refint2.ldif


創(chuàng)建一個組織

到此,配置修改完了,在上述基礎(chǔ)上,我們來創(chuàng)建一個叫做 eryajf company 的組織(官網(wǎng)叫這個,根據(jù)需求,自行修改),并在其下創(chuàng)建一個 admin 的組織角色(該組織角色內(nèi)的用戶具有管理整個 LDAP 的權(quán)限)和 一些初始化必須的組織:

vim base.ldif
dn: dc=eryajf,dc=net
objectClass: top
objectClass: dcObject
objectClass: organization
o: Eryajf Company
dc: eryajfdn: cn=admin,dc=eryajf,dc=net
objectClass: organizationalRole
cn: admindn: ou=people,dc=eryajf,dc=net
ou: people
description: 用戶根目錄
objectClass: organizationalUnitdn: ou=dingtalkroot,dc=eryajf,dc=net
ou: dingtalkroot
description: 釘釘根部門
objectClass: top
objectClass: organizationalUnitdn: ou=wecomroot,dc=eryajf,dc=net
ou: wecomroot
description: 企業(yè)微信根部門
objectClass: top
objectClass: organizationalUnitdn: ou=feishuroot,dc=eryajf,dc=net
ou: feishuroot
description: 飛書根部門
objectClass: top
objectClass: organizationalUnit

執(zhí)行命令,添加配置, 這里要注意修改域名為自己配置的域名,然后需要輸入上面我們生成的密碼123456

ldapadd -x -D cn=admin,dc=yaobili,dc=com -W -f base.ldif


安裝OpenResty

配置阿里和openresty的yum源:

yum -y install yum-utils
yum-config-manager --add-repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum-config-manager --add-repo https://openresty.org/package/centos/openresty.repo

安裝:

yum install openresty -y

創(chuàng)建一些軟鏈,便于維護或者規(guī)范:

ln -snf /usr/local/openresty/nginx/sbin/nginx /usr/sbin/nginx
ln -snf /usr/local/openresty/nginx/conf /etc/nginx

啟動服務(wù):

systemctl enable openresty --now

下載后端

官網(wǎng)上給的下載版本是0.5.9,但是我強烈建議安裝0.5.10:

wget https://github.com/eryajf/go-ldap-admin/releases/download/v0.5.10/go-ldap-admin-v0.5.10-linux-amd64.tar.gz
mkdir go-ldap-admin && tar xf go-ldap-admin-v0.5.10-linux-amd64.tar.gz -C go-ldap-admin

下載前端

wget https://github.com/eryajf/go-ldap-admin-ui/releases/download/v0.5.13/go-ldap-admin-ui-v0.5.13.tar.gz
tar xf go-ldap-admin-ui-v0.5.13.tar.gz

部署后端

mkdir -p /data/www && mv go-ldap-admin /data/www

根據(jù)實際情況進行修改:

vim /data/www/go-ldap-admin/config.yml

應(yīng)用相關(guān)信息獲取查看這里:

釘釘:配置釘釘同步 | Go-Ldap-Admin

企業(yè)微信:配置企業(yè)微信同步 | Go-Ldap-Admin

飛書:配置飛書同步 | Go-Ldap-Admin

?添加系統(tǒng)服務(wù):

vim /usr/lib/systemd/system/go-ldap-admin.service
[Unit]
Description=Go Ldap Admin Service[Service]
WorkingDirectory=/data/www/go-ldap-admin/
ExecStart=/data/www/go-ldap-admin/go-ldap-admin[Install]
WantedBy=multi-user.target

啟動:

systemctl daemon-reload && systemctl start go-ldap-admin

部署前端

移動制品:

mv go-ldap-admin-ui /data/www//demo-go-ldap-admin.eryajf.net

在OpenResty中添加如下配置,代理本項目:

mkdir /etc/nginx/conf && vim /etc/nginx/conf/nginx.conf
server {listen 80;server_name demo-go-ldap-admin.eryajf.net;root /data/www//demo-go-ldap-admin.eryajf.net/dist;location / {try_files $uri $uri/ /index.html;add_header Cache-Control 'no-store';}location /api/ {proxy_set_header Host $http_host;proxy_set_header  X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;proxy_pass http://127.0.0.1:8888;}
}

記得自己去 include 一下配置文件,默認你懂。

nginx -t
nginx -s reload

確保一下服務(wù)都起來了:

systemctl status mysqld
systemctl status slapd
systemctl status go-ldap-admin
systemctl status openresty

都啟動之后,就可以打開web管理頁面

http:ip:端口

http://你的IP/phpldapadmin#/dashboard

默認用戶名:admin,默認密碼是LDAP設(shè)置的密碼123456。


三、管理動態(tài)字段

在進行同步之前需要先去先建立字段映射:

下面有圖片示例。?

釘釘

創(chuàng)建分組的動態(tài)關(guān)系:

{"flag": "dingtalk_group",  // 字段標識"attributes": {  // 字段屬性"groupName":"custom_name_pinyin",  // 分組名稱(通常為分組名的拼音)"remark":"name",  // 分組描述"sourceDeptId":"id",  // 部門ID"sourceDeptParentId":"parentid" // 父部門ID}
}

?創(chuàng)建用戶的動態(tài)關(guān)系:

{"flag": "dingtalk_user", // 字段標識"attributes": { // 字段屬性"username":"custom_name_pinyin", // 用戶名(通常為用戶名拼音)"nickname":"name",  // 中文名字"givenName":"name", // 花名"mail":"email",  // 郵箱"jobNumber":"job_number", // 工號"mobile":"mobile", // 手機號"avatar":"avatar", // 頭像"postalAddress":"work_place", // 地址"position":"title", // 職位"introduction":"remark", // 說明"sourceUserId":"userid", // 源用戶ID"sourceUnionId":"unionid" // 源用戶唯一ID}
}

企業(yè)微信

?創(chuàng)建分組的動態(tài)關(guān)系:

{"flag": "wecom_group","attributes": {"groupName":"custom_name_pinyin","remark":"name","sourceDeptId":"id","sourceDeptParentId":"parentid"}
}

創(chuàng)建用戶的動態(tài)關(guān)系:

{"flag": "wecom_user","attributes": {"username":"custom_name_pinyin","nickname":"name","givenName":"alias","mail":"email","jobNumber":"mobile","mobile":"mobile","avatar":"avatar","postalAddress":"address","position":"external_position","introduction":"name","sourceUserId":"userid","sourceUnionId":"userid"}
}

飛書

創(chuàng)建分組的動態(tài)關(guān)系:

{"flag": "feishu_group","attributes": {"groupName":"department_id","remark":"name","sourceDeptId":"open_department_id","sourceDeptParentId":"parent_department_id"}
}

創(chuàng)建用戶的動態(tài)關(guān)系:

{"flag": "feishu_user","attributes": {"username":"custom_name_pinyin","nickname":"name","givenName":"name","mail":"email","jobNumber":"employee_no","mobile":"mobile","avatar":"avatar","postalAddress":"work_station","position":"job_title","introduction":"name","sourceUserId":"user_id","sourceUnionId":"union_id"}
}

以企業(yè)微信舉例,就這樣填進去即可:

然后去同步吧~但是需要注意!!!!!!

先同步分組,再同步用戶!!!!!


四、部分報錯

errcode“:41001,“errmsg“:“access_token missing rid:

若你使用的是docker-compose直接拉起的,前面也提到了那對不起,demo版本不支持IM認證。若不是,則是你的自建應(yīng)用沒有設(shè)置ip白名單(拿企業(yè)微信舉例,沒錯就算你不設(shè)置,他也不會讓所有ip都正常訪問)。

訪問:企業(yè)微信

找到你的自建應(yīng)用并到這里配置:


LDAP Result Code 68 "Entry Already Exists"

說明ou已經(jīng)存在


This base cannot be created with PLA.

此根不能創(chuàng)建ou。找個干凈的目錄新建文件:base.ldif

vim base.ldif
dn: dc=改成你的,dc=改成你的
o: ldapit
objectclass: dcObject
objectclass: organization

?執(zhí)行,記得修改內(nèi)容:

ldapadd -f base.ldif -x -D cn=admin,dc=改成你的,dc=改成你的 -W

ldap_add: Invalid syntax (21)
? ? ? ? additional info: objectclass: value #0 invalid per syntax

配置文件格式或內(nèi)容存在錯誤


record not found

若你使用的是本文中的最新版本,則問題在于你的字段填寫,請檢查字段映射是否正確。若你使用的是官網(wǎng)中的安裝版本,建議替換到最新版本進行安裝。?

http://aloenet.com.cn/news/47202.html

相關(guān)文章:

  • 做外貿(mào)必應(yīng)網(wǎng)站產(chǎn)品曝光南京廣告宣傳公司seo
  • 洞口網(wǎng)站建設(shè)寧德seo公司
  • 蘭州做網(wǎng)站多少錢關(guān)鍵詞首頁排名優(yōu)化價格
  • 做網(wǎng)站需要的技術(shù) 規(guī)范北京百度關(guān)鍵詞推廣
  • 快速網(wǎng)站優(yōu)化哪家好推廣一單500
  • 開發(fā)一套網(wǎng)站系統(tǒng) 多少錢湘潭營銷型網(wǎng)站建設(shè)
  • 進行網(wǎng)站建設(shè)網(wǎng)頁制作學(xué)習(xí)
  • 贛州網(wǎng)站制作百度網(wǎng)站電話是多少
  • dedecms 網(wǎng)站訪問量重慶seo整站優(yōu)化系統(tǒng)
  • 寶雞做網(wǎng)站的公司磁力鏈 ciliba
  • 華為建站模板seo 網(wǎng)站推廣
  • 網(wǎng)站建設(shè)效果好不好seo對網(wǎng)店推廣的作用
  • 做網(wǎng)站要注意的撫州網(wǎng)站seo
  • 如何用服務(wù)器發(fā)布網(wǎng)站公司培訓(xùn)課程有哪些
  • 進下加強新聞宣傳網(wǎng)站建設(shè)上海百度seo
  • h5手機網(wǎng)站怎么做互聯(lián)網(wǎng)營銷師考試題庫
  • 西安最好的網(wǎng)站建設(shè)公司網(wǎng)絡(luò)營銷網(wǎng)站分析
  • 淄博政府網(wǎng)站建設(shè)公司百度商業(yè)賬號登錄
  • 做網(wǎng)站媒體內(nèi)蒙古seo優(yōu)化
  • 如何在淘寶上做自己的網(wǎng)站廣州疫情最新數(shù)據(jù)
  • 做一款app需要網(wǎng)站嗎鄭州百度公司地址
  • 做網(wǎng)站在哪里租服務(wù)器新網(wǎng)
  • 培訓(xùn)型網(wǎng)站建設(shè)網(wǎng)站搜索引擎優(yōu)化的基本內(nèi)容
  • 做網(wǎng)站認證違法嗎煙臺seo
  • 動態(tài)網(wǎng)站設(shè)計論文3000字seoul是哪個國家
  • 中國鐵建華南建設(shè)有限公司網(wǎng)站十大搜索引擎地址
  • wordpress文章標題字體大小東莞市網(wǎng)絡(luò)seo推廣服務(wù)機構(gòu)
  • 國外 上海網(wǎng)站建設(shè)google搜索網(wǎng)址
  • 常州網(wǎng)站建設(shè)多少錢收錄網(wǎng)站有哪些
  • 網(wǎng)站搭建培訓(xùn)學(xué)電腦培訓(xùn)班