CentOS7でOpenLDAPサーバーを構築する

LDAPはLightweightDirectory Access Protocol(LDAP)です。LDAPLightweightDirectoryAccess Protocolは、ユーザー管理のための統合認証サービスを提供します。これにより、ユーザー認証システムの複数のセットを維持することの長年の分離、複雑さ、および困難が解決されます。問題。シンプルで効率的で使いやすい機能を備えているため、ユーザー認証管理に最適です。OpenLDAPは、オープンソースの集中型アカウント管理アーキテクチャの実装です

以下では、CentOS7でOpenLDAPサーバーを構築する方法について説明します。環境は次のとおりです。

1 )1つのCentOS7 LinuxサーバーIP:192.168.31.200 OpenLDAPサーバーを構築するには、デプロイする必要のあるLDAPドメイン情報はwalkingcloud.cnです。

2 )1つのCentOS7 LinuxサーバーIP:認証用のOpenLDAPのクライアントマシンとして192.168.31.76

管理アカウント情報:dn:cn = Manager、dc = walkingcloud、dc = cn

1、 OpenLDAPサービスをyumモードでインストールします

yum -y install openldap-servers openldap-clients

2、 データベース構成構成ファイルをコピーして、サービスを開始します

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

chown ldap. /var/lib/ldap/DB_CONFIG

systemctl start slapd

systemctl enable slapd

3、 slappasswdはOpenLDAP管理者パスワードを生成します

  1. slappasswdコマンドを使用して、OpenLDAP管理者パスワードを設定して記録します

  2. vi chrootpw.ldif

dn: olcDatabase={0}config,cn=config

changetype: modify

add: olcRootPW

olcRootPW: {SSHA}TNFs8yAo1VQ82uMAzK+1o8Q2XRgznBMb

上記のslappasswdコマンドによって生成されたパスワード文字列を指定します

  1. ldapadd -Y EXTERNAL -H ldapi:/// -f chrootpw.ldif

4、 基本パターンのインポート

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

5、 OpenLDAPDBでドメイン情報を構成する

1 )Slappasswdは管理者のパスワードを生成します

2 )vi chdomain.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=walkingcloud,dc=cn" read by * none

dn: olcDatabase={2}hdb,cn=config

changetype: modify

replace: olcSuffix

olcSuffix: dc=walkingcloud,dc=cn

dn: olcDatabase={2}hdb,cn=config

changetype: modify

replace: olcRootDN

olcRootDN: cn=Manager,dc=walkingcloud,dc=cn

dn: olcDatabase={2}hdb,cn=config

changetype: modify

add: olcRootPW

olcRootPW: {SSHA}XnSjDW+kj37E6TdwwkUw1P32ezGkkYPr

dn: olcDatabase={2}hdb,cn=config

changetype: modify

add: olcAccess

olcAccess: {0}to attrs=userPassword,shadowLastChange by

dn="cn=Manager,dc=walkingcloud,dc=cn" write by anonymous auth by self write by * none

olcAccess: {1}to dn.base="" by * read

olcAccess: {2}to * by dn="cn=Manager,dc=walkingcloud,dc=cn" write by * read

3 )ldapmodify -Y EXTERNAL -H ldapi:/// -f chdomain.ldif

4 )vi basedomain.ldif

dn: dc=walkingcloud,dc=cn

objectClass: top

objectClass: dcObject

objectclass: organization

o: Walking Cloud

dc: walkingcloud

dn: cn=Manager,dc=walkingcloud,dc=cn

objectClass: organizationalRole

cn: Manager

description: Directory Manager

dn: ou=People,dc=walkingcloud,dc=cn

objectClass: organizationalUnit

ou: People

dn: ou=Group,dc=walkingcloud,dc=cn

objectClass: organizationalUnit

ou: Group

5 )ldapadd -x -D cn=Manager,dc=walkingcloud,dc=cn -W -f basedomain.ldif

次に、マネージャーのパスワードを入力します

6、 ユーザーを追加

  1. slappasswd

New password:

Re-enter new password:

{ SSHA}R8l3FCSfEHN4vrFnTsGc9EOib71HPSN4

  1. vi ldapuser.ldif

dn: uid=yuanfan,ou=People,dc=walkingcloud,dc=cn

objectClass: inetOrgPerson

objectClass: posixAccount

objectClass: shadowAccount

cn: yuanfan

sn: Linux

userPassword: {SSHA}R8l3FCSfEHN4vrFnTsGc9EOib71HPSN4

loginShell: /bin/bash

uidNumber: 1000

gidNumber: 1000

homeDirectory: /home/yuanfan

dn: cn=yuanfan,ou=Group,dc=walkingcloud,dc=cn

objectClass: posixGroup

cn: yuanfan

gidNumber: 1000

memberUid: yuanfan

  1. ldapadd -x -D cn=Manager,dc=walkingcloud,dc=cn -W -f ldapuser.ldif

管理者のパスワードを入力してください

7、 OpenLDAPクライアント構成

1 )yum -y install openldap-clients nss-pam-ldapd

2 )authconfig --enableldap --enableldapauth --ldapserver=192.168.31.200 --ldapbasedn="dc=walkingcloud,dc=cn" --enablemkhomedir --update

  1. 次に、上記で作成したLDAPユーザーでログインします

openLDAPユーザーのパスワードを入力してください。通常どおりログインできます。

8、 phpLDAPadminをインストールして、Webを介してLDAPサービスを管理します

1 )yum install -y httpd

  1. mv /etc/httpd/conf.d/welcome.conf /etc/httpd/conf.d/welcome.conf_bak

  2. vi /etc/httpd/conf/httpd.conf

95 線の下に線を追加します

95 # ServerName www.example.com:80

96 ServerName www.walkingcloud.cn

151行目を次のように変更します

AllowOverride All

164 行をに変更します

DirectoryIndex index.html index.php index.cgi

下部に次の2行を追加します

ServerTokens Prod

KeepAlive On

systemctl start httpd

systemctl enable httpd.service

  1. phpをインストールします

yum install php php-mbstring php-pear

systemctl restart httpd

  1. yum --enablerepo=epel -y install phpldapadmin

  2. vi /etc/phpldapadmin/config.php

397 コメント解除行、コメントアウト行398

$servers->setValue('login','attr','dn');

//$servers->setValue('login','attr','uid');

  1. vi /etc/httpd/conf.d/phpldapadmin.conf

12 行にアクセスネットワークセグメント情報を追加します(例:192.168.31.0/24)。

Require ip 192.168.31.0/24

次に、httpdサービスを再起動します

  1. phpldapadminを開くことができることを確認します

11 )管理者アカウントでログインします

cn=Manager,dc=walkingcloud,dc=cn

あなたは前に追加されたアカウントyuanfanを見ることができます

9、 LDAPadminクライアントツール

Ldap Adminは、LDAPディレクトリ管理用の無料のWindowsLDAPクライアントおよび管理ツールです。このアプリケーションを使用すると、LDAPサーバー上のオブジェクトを参照、検索、変更、作成、および削除できます。また、ディレクトリのコピーやリモートサーバー間の移動など、より複雑な操作をサポートし、一般的な編集機能を拡張して、特定のオブジェクトタイプ(グループやアカウントなど)をサポートします。

http://www.ldapadmin.org/

Recommended Posts

CentOS7でOpenLDAPサーバーを構築する
CentOS7でOpenV **サーバーを構築する
centos7でFTPサーバーを構築する
CentOSでNginxサーバーをすばやく構築する方法
Centos6.5でドッカー環境を構築する
CentOS8.1ビルドGitlabサーバーの詳細なチュートリアル
CentOS8でPXCクラスターを構築する
Centos7ビルドjavaWebサーバーtomcat
CentOS7ビルドジェンキンス
Centosビルドlnmp
Centos7ビルドpython3.8.5 + scrapy + gerapy
[PHP] CentOSでPHPオペレーティング環境を構築する
CentOS7でScaleIO分散ストレージクラスターを構築する
CentOS7のLNMP環境でDiscuzフォーラムを構築する
マスタースレーブDNSサーバーを構築するためのCentos7チュートリアル
CentOS7でのpptpサーバーのインストールに関する注意事項
CentOS 8.1でLEMP(Linux + Nginx + MySQL + PHP)環境を構築する(詳細なチュートリアル)
CentOS6.5でのrsyncサーバーのインストールと構成
CentOS7のLNMP環境でDedecmsWebサイトを構築する
CentOS7.3 64ビット、ビルドZabbix3.4
CentOSビルドプライベートgit
CentOS7でGitBookを展開する
Linux(centos7)ビルドgitlab
centos7でk8s1.9.9をビルドする
CentOS6.7ビルドLNMP環境
Centos6.9ビルドrabbitmq3.6.8クラスター
CentOS 7.3+サーバーJRE1.8 + Hadoop-2.8.0
CentOS7の下にmysql5.7をインストールします
CentOSサーバー展開(YUM)
Centos7の下にActiveMQをインストールします
Centos7.6ビルドLNMP環境
CentOS7の下にPostgreSQL12をインストールします
VMwareにCentOSをインストールする
Centos7ビルドKubernetesクラスター
ジェンキンスはセントスに基づいて構築されています
CentOSの下にJDK + Tomcat8をデプロイします
Centos7にmysqlをインストールします
centos6.8でランプを構成する
CentOSでHadoopを構築する
Centos7の下にJenkinsをインストールします
Centos7でのRedis3のインストール
Centos7ビルドDNSサービス
MariaDBCentos7の下にMariaDBをインストールします
CentOS6.5の下にmysql5.1をインストールします
CentOS7ビルドLNMP環境
CentOS7.6サーバー展開VNC
Centosサーバーでgiteaをセットアップする方法を教える3分
Centos7でJava開発用の基本的な環境を構築する
ランチャーを使用して、CentOS7でK8sクラスターを構築します
CentOSはNginxを使用してダウンロード機能サーバーを構築します
ローカルWebサーバーを構築するためのCentos8の実装手順
CentOS6.6でのXen仮想化の戦闘
[CentOS環境の展開] CentOSでのJava7 / Java8の展開
ubuntuの下にFTPサーバーをデプロイします
[Linux] Sambaサーバーのビルド(ubuntu16.04)
CentOs7.3ビルドSolrスタンドアロンサービス
CentOs7.3ビルドRabbitMQ3.6スタンドアロンサービス
CentOS7.6でzabbixモニタリングzabbix4.2をビルドする
ubuntu16.04ビルドpptpdV **サーバー
CentOSでのRedisクラスターのインストール
CentOS7.6でzabbixモニタリングzabbix4.2をビルドする