Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

21.5.3. 既存 NIS データのインポートおよびエクスポート

NIS サーバーには、ユーザー、グループ、ホスト、netgroups、および自動マウントマップに関する情報を含めることができます。これらのエントリータイプは IdM に移行できます。
以下のセクションでは、yp cat コマンドを使用して現在の NIS サーバーからデータをエクスポートし、出力を使用して、対応する ipa *-add コマンドを使用して IdM にエントリーをインポートします。
  • yp-tools パッケージは、移行スクリプトで使用される ypcat コマンドを提供するため、必ずインストールするようにしてください。
    [root@nis-server ~]# yum install yp-tools -y

21.5.3.1. ユーザーエントリーの移行

NIS の passwd マップには、名前、UID、プライマリーグループ、GECOS、シェル、ホームディレクトリーなどのユーザーに関する情報が含まれます。このデータを使用して、NIS ユーザーアカウントを IdM に移行します。
  1. オプション: パスワード強度の弱いパスワードに対応する必要がある場合には、「NIS ユーザー認証の弱いパスワードハッシュの有効化」 を参照してください。
  2. 以下の内容で /root/nis-users.sh スクリプトを作成します。
    #!/bin/sh
    # $1 is the NIS domain, $2 is the NIS master server
    ypcat -d $1 -h $2 passwd > /dev/shm/nis-map.passwd 2>&1
    
    IFS=$'\n'
    for line in $(cat /dev/shm/nis-map.passwd) ; do
    	IFS=' '
    	username=$(echo $line | cut -f1 -d:)
    	# Not collecting encrypted password because we need cleartext password
    	# to create kerberos key
    	uid=$(echo $line | cut -f3 -d:)
    	gid=$(echo $line | cut -f4 -d:)
    	gecos=$(echo $line | cut -f5 -d:)
    	homedir=$(echo $line | cut -f6 -d:)
    	shell=$(echo $line | cut -f7 -d:)
    
    	# Now create this entry
    	echo passw0rd1 | ipa user-add $username --first=NIS --last=USER \
    	     --password --gidnumber=$gid --uid=$uid --gecos='$gecos' --homedir=$homedir \
    	     --shell=$shell
    	ipa user-show $username
    done
  3. IdM admin ユーザーとして認証します。
    [root@nis-server ~]# kinit admin
  4. スクリプトを実行します。以下は例になります。
    [root@nis-server ~]# sh /root/nis-users.sh nisdomain nis-master.example.com
    注記
    このスクリプトは、名、姓にハードコードされた値を使用し、パスワードを passw0rd1 に設定します。ユーザーは、次回ログイン時に一時パスワードを変更する必要があります。