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

Linuxでユーザーパスワードをクリアテキストとして表示するにはどうすればよいですか?

ユーザーのパスワードは/etc/passwdに保存されていることがわかっています 、ただし暗号化されているため、ルートでさえそれらを見ることができません:

jane:x:501:501::/home/jane:/bin/bash
fred:x:502:502::/home/fred:/bin/bash

上記のように、:x: パスワードを表します。

/etc/passwdにパスワードを保存する方法(可能な構成)はありますか? クリアテキストで、ルートがそれらを見ることができるように?

承認された回答:

他の2つの答えは、これは悪いアイデア™であるとあなたに伝えています。 。しかし、彼らはまたあなたにその難しい 行うには、一連のプログラムを変更する必要があります。

それは真実ではない。それは超簡単。変更する必要があるのは、1つまたは2つの構成ファイルだけです。制御していないシステムにログインするときは注意する必要があるため、これを指摘することが重要だと思います。これらは実際にはプレーンテキストのパスワードを/etc/passwdに配置しません または/etc/shadow 、別のファイルに入れられます。パスワードをプレーンテキストにしたくないので、これらをテストしていないことに注意してください。

  1. /etc/pam.d/common-passwordを編集します (パスワードの変更をキャッチするため)または/etc/pam.d/common-auth (ログイン時にキャッチするため)そして… pam_exec expose_authtok log=/root/passwords /bin/cat

  2. これらの両方を編集し、crypt=noneを使用してpam_unixからpam_userdbに切り替えます 。または、パスワードをcommon-passwordのみに入れて(pam_unixも残して)、パスワードが変更されたときにパスワードを記録することもできます。

  3. shadowを削除できます (および強力なハッシュオプション)pam_unixのオプションを使用して、シャドウファイルを無効にし、従来の暗号化パスワードに戻します。プレーンテキストではありませんが、JohntheRipperがそれを修正します。

詳細については、PAMシステム管理者ガイドを確認してください。

PAMのソースコードを編集したり、独自のモジュールを作成したりすることもできます。 PAM(またはモジュール)をコンパイルするだけで、他には何も必要ありません。


Linux
  1. Linuxでユーザーパスワードの有効期限とエージングを管理する方法

  2. BashスクリプトにUnix/Linuxユーザーを追加する方法は?

  3. Linux で空のパスワードで ssh を許可する方法

  1. Linuxでランダムパスワードを生成/暗号化/復号化する方法

  2. Linuxでユーザーパスワードを変更、削除、または無効にする方法

  3. Linuxでユーザーパスワードを変更または設定する方法

  1. Linuxで次回のログイン時にユーザーにパスワードの変更を強制する方法

  2. Linuxでパスワードを変更する方法–ステップバイステップガイド

  3. Linux でユーザーに初期/デフォルト パスワードを割り当てるにはどうすればよいですか?