2020年に、最新のチュートリアルでは、CentOS7で段階的にLDAPサーバを設定する方法を教えて

同期スクロール:

LDAPとは何ですか

LDAPとは何ですか?

概念を知るために、最も簡単な方法は、もちろん、ウィキペディアにウィキペディアことができます。

ライトウェイトディレクトリアクセスプロトコル(ライトウェイトディレクトリアクセスプロトコル)は、オープン、ニュートラル、業界標準のアプリケーションプロトコルでアクセス制御を提供し、IPプロトコルを介して情報を分散ディレクトリ情報を維持するためにLDAPが立っています。

理解するのは簡単LADPは、ツリー構造のデータを格納するデータベース、およびプロトコル、この契約による検索クエリデータとサードパーティ製の缶機能のセットが含まれています。

これは、標準のLDAP(Lightweight Directory Access Protocol)の使用X.500プロトコルに基づいたオープンなインターネット標準であるが、LADPプロトコルは、クロスプラットフォームInterntプロトコルです

結論のLDAPディレクトリでは、データベースシステムとアクセスのプロトコルのセットです。

なぜ使用のLDAP

理由を知るために、我々は、LDAPが問題を解決することができるかを理解する必要がありますか?

我々はすべて知っているように、各システムが異なることがあり、各システムのために自分のユーザー名、ユーザー名とパスワードを登録する必要があります場合は、時に会社の規模、数多くのシステムワークが存在します。個人にとっては、ビューの企業のITセキュリティの観点からも、より厄介で、イライラするものです。

だから、必要に応じて、統一認証、シングルサインオンがあります。

LDAPは、シングルサインオンでの使用に最も適したシステムです。

LDAPはオープン、ニュートラル、業界標準のアプリケーションプロトコルであるため、データ構成がシンプルで、クロスプラットフォームをサポートし、単一、高い安定性と、クエリのパフォーマンスを備え、開発コストとドッキングの重複を減らすために認証サービスを行うためにそれを使用します。

LDAP基本的なデータモデル

LDAP基本データモデルは、データの1デンドリマーを整理することですが、これらの名前は、ビットdumbfoundingです。LDAPを理解するには、少なくとも次の概念を理解します。

LDAPは、すべてのエントリ(またはオブジェクト)はツリー構造で定義され、ツリーデータ構造です。

エントリのツリーは、ディレクトリ情報ツリー(DIT)と呼ばれています。

一意に識別の名前に完全なエントリは、我々は識別名(DN)としてそれを呼び出します。

我々はRDUを呼び出すサブノードDN、単一のノードまたはパス。

典型的には、エントリ(またはオブジェクト)は、両方のタイプのオブジェクトに格納されます。

  1. コンテナ(コンテナ):このオブジェクト自体は、他のオブジェクトを含めることができます。例:ルート(ディレクトリツリーのルート要素、それは本当に存在していない)、C(国/地域)、OU(組織単位)、およびDC(ドメイン)。コンテナ(コンテナ)と、ファイルシステムディレクトリに匹敵します。

  2. (リーフノード)リーフ:このオブジェクトは他のオブジェクトを含むことができない、エンドノードが配置されています。例の人、InetOrgPersonの、はgroupofNamesください。

各オブジェクトは、オブジェクトに従わなければならないルールの数のプロパティの値を決定するプロパティが含まれていました。

最後に、我々は短いLDAPに覚えておく必要があります

  • O:組織(機構 - 株式会社)
  • OU:組織単位(OU - 部門)
  • C:COUNTRYNAME(国)
  • DC:domainComponent(ドメイン名)
  • SN:suer名(本名)
  • CN:共通名(一般名)

例:


私の例
私の例

例えば図にエントリをBABS:

DNます。uid = BABS、OU =人、dc = example、dc = comの

尊敬ます。ou = People、dc = RDNの例では、dc = comのノードます。uid = BABSのObjectClass:人

この記事は、ちょうどあなた自身の公式文書でキーLDAPの概念、より詳細で具体的な学習のいくつかを言及します。

LDAPサーバを設定します

環境の使用:OpenLDAPの2.4、Centos7.6

環境を更新するための最初のステップ

ファイル名を指定して実行:yumのアップデート

第二段階のインストールのOpenLDAP

インストールOpenLDAPと関連するインストールパッケージ

yumをOpenLDAPの-develの-サーバ - SQLをOpenLDAPのOpenLDAPの-サーバのOpenLDAPのcompat-openldapのはopenldap-クライアントをインストール-y

インストール
インストール
インストールは完了です
インストールは完了です

インストール後、サービスを開始することができますし、開始状態から直接サービスを設定します。次のコマンドを実行します。

systemctlスタートslapdは
slapdのを有効にsystemctl

仕上げを開始した後は、サービスがslapdのを実行しているかどうかを確認することができます

netstat -antup | grep -i 389

可看到如下图

安装成功
安装成功

第三步 创建LDAP的根密码

此密码用于整个安装过程,是LADP的管理员根密码,使用slappasswd 命令生成密码
输入slappasswd后提示输入密码与确认密码,系统会输出一串SSHA加密后的字符串,请Copy出来保存在记事本中。
我设置的密码是Ricman,加密后出来的字符串是
{SSHA}KUYZ4irDCPN8seoOg1zNNVzh70jVr1c8

设置密码
设置密码

第四步 配置LDAP服务

这是整个过程中最难的地方,目前整个网络上能搜索到的,几乎都是过时配置方式,Ricman也是踩着坑爬出来的,希望此文能给在今后的日子,能帮助道友们少走弯路。

要怎么修改配置,OPenLdap 2.4不再推荐直接使用配置文件方式,并且极容易出错,修改的所有过程,均使用ldapmodify完成

我们可以先看一下目前配置都有哪些文件,执行命令

cd /etc/openldap/slapd.d/cn=config
ls


i查看配置文件
i查看配置文件

输出如下图,可能些人的结果不一样,但是几乎差不多,注意文件的名称,一会修改配置的时候,会使用到。

当然,你可以使用cat 来查看文件内容,可以看到原始的内容。


文件内容
文件内容

我们要修改的字段有:

olcSuffix – 用于保存域信息,需要更新为自己的域

olcRootDN – 根的DN(唯一识别名),根的区别名,它用于根管理员在此节点下做所有的管理

olcRootPW – LDAP 管理员的根密码,用刚刚第三步创建出来的密码设置到这里

我们在任意目录下创建 db.ldif文件。Ricman的经验最好不要在/etc/openldap/slapd.d/cn=config目录下创建,因为这目录保存着原始的配置文件,当使用slaptest -u 测试配置时会报错。我偷懒,直接在根目录下创建,运行cd ~便可切换到根目录(在根目录下创建文件是不好行为,为方便说明安装过程,就暂时使用)

修改db文件

这db文件不是数据库文件,只是ldap中配置文件中一个,可能是mdb,也可能是各种*db,Ricman安装的是hdb。

运行 vi db.ldif

在此文件中编辑的内容如下

dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcSuffix
olcSuffix: dc=ricman,dc=localhost

dn: olcDatabase={2}hdb,cn=config
changetype: modify
replace: olcRootDN
olcRootDN: cn=Manager,dc=ricman,dc=localhost

dn: olcDatabase={2}hdb,cn=config
changetype: modify
add: olcRootPW
olcRootPW: {SSHA}KUYZ4irDCPN8seoOg1zNNVzh70jVr1c8

内容
内容

请注意上面内容中的olcSuffix, olcRootDN, olcRootPW这三个字段,是需要修改成自己的内容的。
特别需要注意是的olcRootPW字段,因为这个字段在刚刚查看olcDatabase={2}hdb.ldif中是不存在的,所以使用add,表示增加,如果字段已经存在,使用replace,表示进行替换内容

完成编辑后,使用ldapmodify让修改的内容生效。

ldapmodify命令可在运行环境中直接修改配置文件并且不需要重启就生效的命令,具体请看ldapmodify官方使用文档。

在db.ldif目录下运行命令

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

输出如下图,一定要注意在有三个modifying entry才全部更新成功。


modifying entry
modifying entry

修改monitor文件

与修改db文件相似。在刚刚的db.ldif目录下运行命令

vi monitor.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=Manager,dc=max,dc=localhost" read by * none

请自己修改db.base中的内容,这个等号后面的内容是上面db.ldif中的olcRootDN是一致的。

保存文件后同样使用ldapmodify让其生效。

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

输出如下图

monitor
monitor

同样,要出现modifying entry才成功。如上图中Ricman在编辑文件时多写了一行,所以出错了。请注意检查自己编辑的monitor文件。

创建ldap 基础库

这里创建的是一个基础库,用于保存数据。安装ldap后会有一个example配置,需要我们复制一份配置文件并赋予它所有权限

运行以下命令

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

image.png
image.png

完成配置后,我们就可以向数据库中增加schemas,需要增加的有:cosine , nis,inetorgperson

schemas是什么鬼,schemas就是数据库表的定义文件,相当于关系数据库中的表定义。当然稍有区别。具体可以参考文档说明understanding-ldap-schema

执行ldapadd命令增加,命令如下

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

以上三条命令是一条一条执行,每一条输出如下图


base DB
base DB

完成以后,就可以创建base.ldif,在库中增加自己管理域下的内容,运行命令

vi base.ldif

在文件中输入以下内容

dn: dc=ricman,dc=localhost
dc: ricman
objectClass: top
objectClass: domain

dn: cn=Manager ,dc=ricman,dc=localhost
objectClass: organizationalRole
cn: Manager
description: LDAP Manager

dn: ou=People,dc=ricman,dc=localhost
objectClass: organizationalUnit
ou: People

dn: ou=Group,dc=ricman,dc=localhost
objectClass: organizationalUnit
ou: Group

同样的,需要修改为你自己的域

运行命令将此数据保存到库中去

ldapaddを-x -W -D "CN =マネージャ、DC = ricman、DC = localhost" を-f base.ldif

LDAPパスワードこのコマンドプロンプトは、第三段階の上に作成したパスワードと同じパスワードは、私がここで入力した:ricmanを

以下の出力

更新数据
データの更新

これは、基本的な設定を完了します

経営のLdap

インターネットのダウンロードLDAP管理、私はそれは非常に興味深いと思い個人的に管理するために、直接使用するLDAP管理をwindow7システムを使用しています。

接続する前に、我々は、LDAP例外を許可するようにサーバーのファイアウォールを設定する必要があります。

コマンドを実行します

ファイアウォール-CMD --permanent --add-サービス= LDAP
ファイアウォール-CMD --reload

设置防火墙
ファイアウォールを設定します

次に、あなたが管理するために、LDAP管理を使用することができます。connect->新しい接続]をクリックします

新建立连接
新しい接続が確立されています

その後、ホスト、ベースとユーザー名とパスワードを設定

管理者のユーザー名を使用するには、この例では、CN =マネージャ、DC = ricman、DC = localhostです

パスワードは、第三のステップの上に作成したパスワードで、当事者はricmanにパスワードを使用しました


连接设置
接続設定

接続のテストをクリックすると、管理インターフェイスの接続に直接クリックすることができ、以下に示すように、成功しています

连接成功
接続が成功します
管理工具
管理ツール

あなたは、組織、彼らはユーザーを作成するために必要なツールを使用することができます

アンインストールのLdap

あなたがアンインストールする必要がある場合は、サービス、[削除yumを停止する必要が
systemctl STOPのslapdを

yumをOpenLDAPの-サーバompat-はopenldap OpenLDAPの-クライアントを削除します

もちろん、DB_CONFIGと設定ファイルを忘れないでください、だけでなく、それを削除するには

RM -rfは/ var / libに/ LDAP / *
RM -rf /etc/openldap/slapd.d/*

したがって、最後のフルテキスト。転載、複製する場合は、ソースを明記してください、ありがとうございました

おすすめ

転載: www.cnblogs.com/xiaoshou/p/12337620.html