Ubuntuをインストールするとき、短いパスワード(<4)を設定します。ここで、「passwd」で他の短いパスワードを変更するか、「Password and Keys」プログラムでパスフレーズを変更します。4文字以上のパスワードが必要です。
ターミナルで次のコマンドを使用します。
Sudo passwd <user>
<user>
を、パスワードを変更するユーザー名に置き換えます。
これは、passwd
をrootユーザーとして使用すると、長さまたはエントロピーのすべてのチェックが抑制されるため機能します。
警告:ターゲットユーザーが暗号化されたホームディレクトリを持っている場合、これは問題を引き起こす! ( 以下のコメントを参照 )
デフォルトでは、Ubuntuには6文字以上のパスワードの最小長と、いくつかの基本的なエントロピーチェックが必要です。これらの値は、ファイル/ etc/pam.d/common-passwordで制御されます。
password [success=2 default=ignore] pam_unix.so obscure sha512
最小長を4文字に調整する場合は、適切な変数(minlen = 4)を行末に追加します。変更の概要を以下に示します。
password [success=2 default=ignore] pam_unix.so obscure sha512 minlen=4
端末を立ち上げて/etc/pam.d/common-passwordを編集します
この行を変更します。
password [success=1 default=ignore] pam_unix.so obscure sha512
に:
password [success=1 default=ignore] pam_unix.so obscure sha512 minlen=4
また、パスワードには、上記のあいまいなパラメーターで指定されている一定の複雑さが必要です。
password [success=1 default=ignore] pam_unix.so minlen=2 sha512
そのチェックも削除します。
これはすべて、これが賢明だと思うことを前提としています。
man pam_unix
をご覧ください
これらは私のシステムで動作します。
これは、PAM pwdfileモジュールで実行できます。
ここで説明する方法は、デスクトップログイン(lightdmサービス)のみを変更しますが、必要に応じて他のサービスにも適用できます。
また、これにより、Ubuntuデスクトップにログインするためのかなり簡単な方法を維持しながら、「Sudo」の元の強力なパスワードを持つことができます。
コマンドは端末プログラムで発行できます。
最初に、libpam-pwdfile
という名前のソフトウェアパッケージをインストールします。
Sudo apt-get install libpam-pwdfile
次に、ユーザー/パスワードファイルを作成します。新しいPINパスワードの入力を求められます。パスワードは暗号化され、passwd.like
という名前のファイルに保存されます
pinpass=$(mkpasswd -5)
echo "$pinpass" | Sudo tee /etc/passwd.like
別の方法として、openssl passwd -1 yourpinpasswordhere
を使用し、/ etc/passwd.likeという名前のファイルとそのパスワードを作成できます。
次のステップは、他のパスワード手順の前にPINパスワードを受け入れるようにデスクトップログインサービスを準備することです。 デスクトップログインサービスの名前、lightdm
についてはすでに述べました。
ファイルを見てください:
cat /etc/pam.d/lightdm
このファイルがない場合、デスクトップ(ログイン)サービスはdifferentであり、先に進む前にデスクトップマネージャーを見つける必要があります。前に説明したように、このガイドはUbuntu 16.04向けですが、他のログインサービスにも使用できます。
バックアップも作成すると便利です。
Sudo cp /etc/pam.d/lightdm /etc/pam.d/lightdm.backup
これで、nanoまたはgeditまたはその他のテキストエディターを使用してファイルを編集できます。
Sudo gedit /etc/pam.d/lightdm
ファイルの上部にあるものは:
#%PAM-1.0
auth requisite pam_nologin.so
auth sufficient pam_succeed_if.so user ingroup nopasswdlogin
@include common-auth
私はそれを次のように変更しました:
#%PAM-1.0
auth requisite pam_nologin.so
auth sufficient pam_succeed_if.so user ingroup nopasswdlogin
auth required pam_pwdfile.so pwdfile=/etc/passwd.like
auth required pam_permit.so
#@include common-auth
ファイルを保存し、テキストエディターを閉じます。
ログアウトしてからログインし直します。
設定したPINパスワードを使用できるはずです。このガイドに従うと、PINパスワードはデスクトップログインサービスにのみ使用され、Sudoコマンドのパスワードには使用されません。
ソース: http://blog.radevic.com/2017/11/how-to-set-pin-password-or-short.html
-fオプションも使用できます。
$passwd -f username
Changing password for user username.
New password:
Retype new password:
単純なパスワードを設定するために、単純なSudo passwd username
メソッドを試しましたが、Ubuntu Server 12.04 LTSでは失敗しました。
そこで、/etc/pam.d/common-passwd
構成ファイルからobscure
オプションを削除しようとしましたが、それでも失敗しました。
そのため、/usr/share/pam-configs/unix
構成ファイルからobscure
オプションも削除しました。そして、それは働いた:-)
su
として振る舞い、弱いパスワードを設定する場合は、理由を問わず、もっとシンプルにする必要があることに同意します。 「パスワードが弱い、確認しますか?」という警告完璧になります...
最小チェックケースを無視してパスワードを変更するには、
ターミナルで、次を入力します。
Sudo passwd {ユーザー名}
そして、新しいパスワードを2回要求され、新しいパスワードを入力して完了です。
Ubuntu 18.04では、他のソリューションはどれもうまくいきませんでした。これらの行の両方を置き換える必要がありました。
password requisite pam_cracklib.so retry=3 minlen=8 difok=3 dcredit=-1 enforce_for_root lcredit=-1 ocredit=-1 reject_username ucredit=-1
password [success=1 default=ignore] pam_unix.so obscure use_authtok try_first_pass sha512
/etc/pam.d/common-password
で:
password [success=1 default=ignore] pam_unix.so minlen=2 sha512
これらの変更により、パスワードを簡単に変更でき、パスワードを変更した後、ファイルを元の形式に復元しました。