3

/var/yp/input-files/passwd古いクリプトDESハッシュで構成されるNISユーザーデータベースを想像してみてください。目的は、このデータベースをmd5またはshaハッシュに移行することです。を使用してパスワードを変更するyppasswdと、既存のエントリと同じアルゴリズムを使用して生成されます(おそらくレガシーの理由で)。つまり、cryptはcryptのまま、md5はmd5のままです。

現在の計画は、yppasswdをラップする特別なパスワード変更スクリプトを作成することです。デフォルトで変更されたパスワードをmd5形式で生成するようにyppasswdに指示するより洗練された方法はありますか?

4

2 に答える 2

2

私は今それを理解しました:

  1. apt-get source nisDebian などでディストリビューションの nis-package をダウンロードします。
  2. 対応する yp-tools-2.9/src/yppasswd.c を編集します
  3. int has_md5_passwd = 0;int has_md5_passwd = 1;先頭に置き換えますint main (int argc, char **argv)

yppasswd は常に md5 ハッシュを作成します。

于 2011-05-30T16:08:06.327 に答える
1

最近の Linux ディストリビューションは、PAM による NIS パスワードの更新をサポートしていpasswdますyppasswd。これはまた、(yp-tools 2.12 の時点で) ではまだ不可能なハッシュ アルゴリズムを構成できることを意味しますyppasswd

システムには/etc/pam.d/passwd、次の形式の行を含む別のファイルを含むか、おそらく参照するファイルが必要です。

password  sufficient  pam_unix.so md5 nis

2 番目のフィールドは異なる可能性があり、最後に他のパラメーターが存在する可能性がありますが、passwordロードする行がpam_unix.so必要であり、少なくともnisNIS サーバーに適したパラメーターとハッシュ関数 ( md5sha256など) が必要です。

ただし、ディストリビューションにはこれを構成するためのより良い方法がある可能性があるため、後で自動化されたプロセスによって変更が上書きされないようにしてください。

RedHat 派生システム (少なくとも RHEL、CentOS、Scientific Linux、および Fedora を含む) では、authconfig少なくとも--enablenisパラメーターを指定してプログラムを使用する必要があります。MD5 ハッシュを使用した上記のシナリオでは、次のコマンド ラインで十分です。

authconfig --enablenis --usemd5 --update

Debian システム (およびおそらく Debian の派生物ですが、現時点では確認できません) では、これを行う適切な方法は、別の/usr/share/pam-configs/unixもの (たとえば/usr/share/pam-configs/nis) にコピーし、新しいファイルを編集して適切な設定を与えることです。新しいプロファイル名を入力してから実行pam-auth-updateし、「Unix 認証」プロファイルを無効にして、新しいプロファイルを有効にします。

于 2013-01-25T20:31:25.627 に答える