話を続けます。
最初の部分では、2つのサーバーにOpenLDAPをインストールし、それらの間のレプリケーションをセットアップしたことを思い出させてください。
2.それほど難しくないため、バックアップを設定します。
バックアップには、baculaシステムを使用します。 「サーバー」ディレクターとストレージモジュールのインストールと構成は、クライアントの構成に焦点を当てて、この記事の範囲外にします。
インストール:
bacula-fd
/etc/bacula/bacula-fd.confの編集
cat > /etc/bacula/bacula-fd.conf << "EOF"
Director {
Name = backup.habr.ru-dir
Password = "<, Director>"
}
FileDaemon {
Name = ldap01.habr.ru-fd
FDport = 9102 # where we listen for the director
WorkingDirectory = /var/lib/bacula
Pid Directory = /var/run/bacula
Maximum Concurrent Jobs = 20
# ,
# FDAddress = 192.168.100.1
}
Messages {
Name = Standard
director = bkp01.habr.ru-dir = all, !skipped, !restored
}
EOF
必要なディレクトリを作成します:
mkdir /root/scripts /var/backups/openldap
ダンプをアンロードするには、次のスクリプトが必要です。
cat > /root/scripts/ldap_backup.sh << "EOF"
#!/bin/sh
/usr/sbin/slapcat > /var/backups/openldap/habr.ru.ldif
EOF
ファイルを圧縮する必要はありません-baculaはこれを行います。
バックアップ後に削除するには、別のスクリプトを作成します。
cat > /root/scripts/ldap_backup_clean.sh << "EOF"
#!/bin/sh
rm /var/backups/openldap/habr.ru.ldif
EOF
bacula-fdを
/etc/init.d/bacula-fd restart
ます:
/etc/init.d/bacula-fd restart
ファイル/etc/bacula/director.conf内のサーバーbackup.habr.ru
以下を追加してください
cat >> /etc/bacula/director.conf << "EOF"
Client {
Name = ldap01.habr.ru-fd
Address = 192.168.100.1
FDPort = 9102
Catalog = MyCatalog
Password = " "
File Retention = 30 days
Job Retention = 6 months
AutoPrune = yes
}
FileSet {
Name = "ldap"
Include {
Options {
signature = MD5
}
File = /var/backups/openldap/
}
}
Job {
Name = "ldap01.habr.ru-system"
Client = ldap01.habr.ru-fd
JobDefs = "DefaultJob"
FileSet = "ldap"
Write Bootstrap = "/var/lib/bacula/ldap01.habr.ru-log.bsr"
ClientRunBeforeJob = "/root/scripts/ldap_backup.sh"
ClientRunAfterJob = "/root/scripts/ldap_backup_clean.sh"
}
EOF
bacula-dir設定をリロードします:
/etc/init.d/bacula-dir reload
bconcoleで動作を確認できます。
3. phpldapadminという便利なWebベースの管理パネルを配置します。
phpldapadminパッケージはすでにインストールされています。見逃した場合は、
apt-get install phpldapadmin
彼はApacheの設定を/etc/apache2/conf.d/phpldapadminにインストールし、再起動後にhttpdがhabr.ru/phpldapadminで利用可能になります。
すぐに、ldap01.habr.ruなどの別の仮想ホストにSSLを使用して上げることをお勧めします。
次に、phpldapadmin config:/etc/phpldapadmin/config.phpに注目します。
その中の行を変更します。
$ldapservers->SetValue($i,'server','name','Habrahabr');
$ldapservers->SetValue($i,'server','host','ldap01.habr.ru');
$ldapservers->SetValue($i,'server','base',array('dc=habr,dc=ru'));
次に、ログインフィールドにDN cn = admin、dc = habr、dc = ruを指定して、管理パネルに移動します。
対応するフィールドのパスワード。
さらに、ユーザー用にorganizationalUnitを作成し、グループ用にorganizationalUnitを作成する必要があります。
私は独自のスキームを作成せず、ユーザーに2つの標準テンプレートを使用します。サーバーへのシェルアクセスが必要なユーザーにはposixAccount、他のユーザーにはsimpleSecurityObjectです。 simpleSecurityObjectには、通常、名前と連絡先を記述する説明属性を追加します。
また、あるorganizationalUnitにsimpleSecurityObjectユーザーを作成し、別のorganizationalUnitにposixAccountを作成することも論理的です。
groupOfUniqueNamesテンプレートに基づいてグループを作成し、uniqueMemberとしてユーザーを追加します。
記事の次の部分では、このキッチンすべてを実際に試してみます。
今日は以上です。見てくれてありがとう。