既存のLinuxアカウントをLDAPに移行する

LDAPを構築した時点ではユーザは大抵管理者ユーザくらいしかいないので、LDAP認証を用いたい一般ユーザが空っぽ。
で、これを一から作るのは面倒くさい。
ldifなるファイルを作って読こませるのが一般的な流れだ。
今回は既存のLinuxアカウントが結構ある。
こいつらをいちいち取り込むのはハゲる。
で、この子たちをLDAPに移行する素敵なツールがある。
それがmigrationtools。

例のごとくインストール。

# aptitude install migrationtools

/etc/migrationtools/migrate_common.phを編集

$DEFAULT_MAIL_DOMAIN = “waterblue.net”;
$DEFAULT_BASE = “dc=waterblue,dc=net”;
$DEFAULT_MAIL_HOST = “waterblue.net”;
$EXTENDED_SCHEMA = 0;
$USE_UTF8 = 1;
$IGNORE_UID_BELOW = 1000;
$IGNORE_GID_BELOW = 1000;
$IGNORE_UID_ABOVE = 9999;
$IGNORE_GID_ABOVE = 9999;

いじるのはこの辺の変数だけで、まあ環境によって適当に。
で、ldifを生成してくれるperlスクリプトが/usr/share/migrationtoolsにあるので、そこに移動。

# ls
migrate_aliases.pl              migrate_group.pl
migrate_all_netinfo_offline.sh  migrate_hosts.pl
migrate_all_netinfo_online.sh   migrate_netgroup.pl
migrate_all_nis_offline.sh      migrate_netgroup_byhost.pl
migrate_all_nis_online.sh       migrate_netgroup_byuser.pl
migrate_all_nisplus_offline.sh  migrate_networks.pl
migrate_all_nisplus_online.sh   migrate_passwd.pl
migrate_all_offline.sh          migrate_profile.pl
migrate_all_online.sh           migrate_protocols.pl
migrate_automount.pl            migrate_rpc.pl
migrate_base.pl                 migrate_services.pl
migrate_common.ph               migrate_slapd_conf.pl
migrate_fstab.pl

なんとなく名前で分かる感じですはい。
あとはスクリプトを実行すればldifを作成してくれる。

# ./migrate_passwd.pl /etc/passwd passwd.ldif
# ./migrate_group.pl /etc/group group.ldif

できあがったldifをLDAPサーバに喰わせればOK。

# ldapadd -c -x -D “cn=admin,dc=waterblue,dc=net” -W -f passwd.ldif
# ldapadd -c -x -D “cn=admin,dc=waterblue,dc=net” -W -f group.ldif

これでLDAPにユーザ移行も完了と。

「既存のLinuxアカウントをLDAPに移行する」への1件のフィードバック

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>