GNU/Linux >> Linux の 問題 >  >> Ubuntu

Ubuntu20.04にOpenLDAPとphpLDAPadminをインストールして設定する方法

LDAPは、インターネットプロトコルを介して分散ディレクトリにアクセスして維持するために使用されるライトウェイトディレクトリアクセスプロトコルです。 phpLDAPadminは、LDAPサーバーの管理に使用されるWebベースのLDAPクライアントです。その強力な検索機能と階層ツリービューにより、Webブラウザを介したLDAPサーバーの管理が容易になります。 phpLDAPadminを使用して、レコードの追加と削除、画像属性の表示と編集、ユーザーパスワードハッシュの管理などを行うことができます。

このチュートリアルでは、Ubuntu20.04にphpLDAPadminをインストールする方法を説明します。

前提条件
  • Ubuntu20.04を実行しているサーバー。
  • サーバーIPで指定された有効なドメイン名。
  • ルートパスワードがサーバーに設定されます。
はじめに

開始する前に、常に最新バージョンのパッケージでシステムを更新することをお勧めします。次のコマンドで更新できます:

 apt-get update -y 

すべてのパッケージが更新されたら、次のステップに進むことができます。

OpenLDAPサーバーのインストールと構成

まず、サーバーにSlapdおよびその他のLDAPユーティリティをインストールする必要があります。次のコマンドを実行してインストールできます:

 apt-get install slapd ldap-utils 

インストール中に、以下に示すように管理者パスワードを設定するように求められます。

安全なパスワードを入力し、 Enterを押します 続ける。インストールが完了したら、ドメイン情報を設定するためにSLAPDパッケージを再構成する必要があります。

次のコマンドで再構成できます:

dpkg-slapdを再構成する

以下に示すように、OpenLDAPサーバー構成を省略するように求められます。

いいえを選択します Enterを押します 続ける。以下に示すように、DNSドメイン名を入力するように求められます。

ドメイン名を入力してEnterを押します 続ける。以下に示すように、組織名を入力するように求められます。

希望する組織名を入力して、 Enterをクリックします 続ける。以下に示すように、管理者パスワードの入力を求められます。

管理者パスワードを入力し、 Enterを押します 続ける。以下に示すように、データベースを削除するように求められます。

はいを選択します Enterを押します 構成を完了します。

これで、次のコマンドを使用してLDAP情報を確認できます。

 slapcat 

次の出力が得られるはずです:

 dn:dc =example、dc =comobjectClass:topobjectClass:dcObjectobjectClass:organizationo:example.comdc:examplestructuralObjectClass:organizationentryUUID:971829cc-ac5f-103a-8e42-9f8486ff5685creatorsName:cn =admin、dc =example、dc =comcreateTimestamp:20201027051828ZentryCSN :20201027051828.103064Z#000000#000#000000modifiersName:cn =admin、dc =example、dc =commodifyTimestamp:20201027051828Zdn:cn =admin、dc =example、dc =comobjectClass:simpleSecurityObjectobjectClass:organizationalRolecn:admindescription:LDAP AdministratoruserPassword ::e1NTSEF9Tm5OYlpSMkt OrganizationalRoleentryUUID:9718c198-ac5f-103a-8e43-9f8486ff5685creatorsName:cn =admin、dc =example、dc =comcreateTimestamp:20201027051828ZentryCSN:20201027051828.107057Z#000000#000#000000modifiersName:cn =admin、dc =example、dc =combidifyTimestamp: pre> 

OpenLDAPユーザーアカウントを作成する

まず、ユーザーとグループの情報を格納するための組織単位のコンテナーを作成する必要があります。次のコマンドで作成できます:

 nano users-ou.ldif 

次の行を追加します:

 dn:ou =people、dc =example、dc =comobjectClass:organizationalUnitobjectClass:topou:peopledn:ou =groups、dc =example、dc =comobjectClass:organizationalUnitobjectClass:topou:groups 

終了したらファイルを保存して閉じ、次のファイルを作成してSLAPDデータベースのアクセス制御を調整します。

 nano update-mdb-acl.ldif 

次の行を追加します:

 dn:olcDatabase ={1} mdb、cn =configchangetype:modifyreplace:olcAccessolcAccess:to attrs =userPassword、shadowLastChange、shadowExpire by self write by analog auth by dn.subtree ="gidNumber =0 + uidNumber =0、cn =peercred、cn =external、cn =auth"管理者dn.exact="cn =readonly、ou =people、dc =example、dc =com "読み取り者*noneolcAccess:to dn.exact =" cn =readonly、ou =people、dc =example、dc =com "by dn.subtree =" gidNumber =0 + uidNumber =0、cn =peercred、cn =external、cn =auth "manage by * noneolcAccess:to dn.subtree =" dc =example 、dc =com "by dn.subtree =" gidNumber =0 + uidNumber =0、cn =peercred、cn =external、cn=auth"ユーザーが管理*なし

ファイルを保存して閉じてから、次のコマンドを実行して、上記の情報でデータベースACLを更新します。

 ldapadd -Y EXTERNAL -H ldapi:/// -f update-mdb-acl.ldif 

次の出力が得られるはずです:

 SASL / EXTERNAL認証開始SASLユーザー名:gidNumber =0 + uidNumber =0、cn =peercred、cn =external、cn =authSASL SSF:0modifying entry "olcDatabase ={1} mdb、cn =config" 

次に、次のコマンドを実行して、ユーザーOU情報でデータベースを更新します。

 ldapadd -Y EXTERNAL -H ldapi:/// -f users-ou.ldif 

次の出力が得られるはずです:

 SASL / EXTERNAL認証開始SASLユーザー名:gidNumber =0 + uidNumber =0、cn =peercred、cn =external、cn =authSASL SSF:0新しいエントリの追加 "ou =people、dc =example、dc=com"新しいエントリの追加"ou =groups、dc =example、dc =com" 

次に、次のファイルを作成して、hiteshjという名前の新しいユーザーアカウントを作成します。

 nano hitesh.ldif 

次の行を追加します:

 dn:uid =hiteshj、ou =people、dc =example、dc =comobjectClass:inetOrgPersonobjectClass:posixAccountobjectClass:shadowAccountuid:hiteshjcn:Hiteshsn:JethvaloginShell:/ bin / bashuidNumber:10000gidNumber:10000homeDirectory:/ home / hiteshjshadowMax:60shadowMin:1shadowW :7shadowInactive:7shadowLastChange:0dn:cn =hiteshj、ou =groups、dc =example、dc =comobjectClass:posixGroupcn:hiteshjgidNumber:10000memberUid:hiteshj 

ファイルを保存して閉じてから、次のコマンドを使用してユーザーをデータベースに追加します。

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

次の出力が得られるはずです:

 SASL / EXTERNAL認証開始SASLユーザー名:gidNumber =0 + uidNumber =0、cn =peercred、cn =external、cn =authSASL SSF:0新しいエントリの追加 "uid =hiteshj、ou =people、dc =example、dc =com "新しいエントリを追加する"cn=hiteshj、ou =groups、dc =example、dc =com "

次に、ユーザーのパスワードを設定する必要があります。次のコマンドで設定できます:

 ldappasswd -H ldapi:/// -Y EXTERNAL -S "uid =hiteshj、ou =people、dc =example、dc =com" 

次の出力を選択する必要があります:

新しいパスワード:新しいパスワードを再入力:SASL / EXTERNAL認証開始SASLユーザー名:gidNumber =0 + uidNumber =0、cn =peercred、cn =external、cn =authSASL SSF:0 

終了したら、次のステップに進むことができます。

OpenLDAPバインドDNを作成

次に、ディレクトリサーバーにクエリを実行するためのユーザー名とパスワードを定義する必要があります。まず、次のコマンドを使用して、バインドDNユーザーのパスワードハッシュを生成します。

 slappasswd 

次の出力が得られるはずです:

新しいパスワード:新しいパスワードを再入力してください:{SSHA} DhjyJN5akaj2etaFKoyeAY8QMgSD / OTb 

次に、次のコマンドを使用して、読み取り専用のバインドDN名を作成します。

 nano readonly-user.ldif 

次の行を追加します:

 dn:cn =readonly、ou =people、dc =example、dc =comobjectClass:organizationalRoleobjectClass:simpleSecurityObjectcn:readonlyuserPassword:{SSHA} DhjyJN5akaj2etaFKoyeAY8QMgSD / OTbdescription:LDAP操作用のDNユーザーのバインド

終了したらファイルを保存して閉じ、次のコマンドを使用してBINDユーザーをデータベースに追加します。

 ldapadd -Y EXTERNAL -H ldapi:/// -f readonly-user.ldif 

次の出力が得られるはずです:

 SASL / EXTERNAL認証開始SASLユーザー名:gidNumber =0 + uidNumber =0、cn =peercred、cn =external、cn =authSASL SSF:0新しいエントリの追加 "cn =readonly、ou =people、dc =example、dc =com "

次に、次のコマンドを使用してBindDNACLを確認します。

 ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:/// -b cn =config'(olcDatabase ={1} mdb)' olcAccess 

次の出力が得られるはずです:

 dn:olcDatabase ={1} mdb、cn =configureolcAccess:{0} to attrs =userPassword、shadowLastChange、shadowExpire by self writ e by analog auth by dn.subtree ="gidNumber =0 + uidNumber =0、cn =peercred、cn =ext ernal、cn =auth"管理者dn.exact="cn =readonly、ou =people、dc =example、dc =com"読み取り者*noneolcAccess:{1} to dn.exact =" cn =readonly、ou =people、dc =example、dc =com "by dn.subt ree =" gidNumber =0 + uidNumber =0、cn =peercred、cn =external、cn =auth "manage by * non eolcAccess:{2} to dn.subtree ="dc =example、dc =com" by dn.subtree ="gidNumber =0 + uid Number =0、cn =peercred、cn =external、cn=auth"管理者*なし

phpLDAPadminのインストールと設定

デフォルトでは、phpLDAPadminパッケージはUbuntu20.04のデフォルトリポジトリで利用できます。次のコマンドを実行してインストールできます:

 apt-get install phpldapadmin -y 

phpLDAPadminをインストールした後、phpLDAPadminを設定し、ドメイン情報を定義する必要があります。ファイル/etc/phpldapadmin/config.phpを編集することでそれを行うことができます:

 nano /etc/phpldapadmin/config.php 

次の行を変更します:

 $ servers-> setValue('server'、'name'、'My LDAP Server'); $ servers-> setValue('server'、'host'、 '69 .87.216.102'); $ servers->; setValue('server'、'base'、array('dc =example、dc =com')); $ servers-> setValue('login'、'auth_type'、'session'); $ servers-> setValue( ' login'、' bind_id'、' cn =admin、dc =example、dc =com'); $ servers-> setValue(' auto_number'、' min'、array(' uidNumber'=> 10000、' gidNumber'=> 10000)); 

終了したら、ファイルを保存して閉じます。

phpLDAPadmin用にApacheを設定

ApacheのphpLDAPadminデフォルト設定ファイルは/etc/apache2/conf-available/phpldapadmin.confにあります。変更を加えず、デフォルト設定を使用してください。

次に、デフォルトのApache仮想ホスト構成ファイルを無効にし、Apacheサービスを再起動して変更を適用します。

 a2dissite 000-default.conf 
systemctl restart apache2

終了したら、次のステップに進むことができます。

phpLDAPadminWebUIにアクセス

次に、Webブラウザーを開き、URL http:// your-server-ip / phpldapadminを使用してphpLDAPadminにアクセスします。 。次の画面が表示されます。

次に、ログインをクリックします ボタン。 phpLDAPadminログイン画面が表示されます:

ログインDNとパスワードを入力し、認証をクリックします ボタン。次の画面にphpLDAPadminダッシュボードが表示されます。

結論

おめでとう!これで、Ubuntu20.04サーバーにphpLDAPadminが正常にインストールおよび構成されました。これで、LDAPサーバーを管理し、phpLDAPadmin Web UIを使用して組織単位、グループ、ユーザーを追加するなど、いくつかのタスクを実行できます。ご不明な点がございましたら、お気軽にお問い合わせください。


Ubuntu
  1. Ubuntu18.04にRedisをインストールして構成する方法

  2. Ubuntu18.04にRedmineをインストールして設定する方法

  3. Ubuntu14.04にOpenLDAPとphpLDAPadminをインストールして設定します

  1. Ubuntu18.04にSambaをインストールして設定する方法

  2. Ubuntu20.04にRedisをインストールして構成する方法

  3. Ubuntu20.04にJenkinsをインストールして構成する方法

  1. Ubuntu16.04にAskbotをインストールして構成する方法

  2. Ubuntu14.04にMongoDBをインストールして構成する方法

  3. Ubuntu16.04にSolr6をインストールして構成する方法