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

Linuxでパスワードを変更する方法(passwdコマンド)

このチュートリアルでは、ユーザーまたはスーパーユーザー(root)がLinuxでパスワードを変更する方法について説明します。 Passwdは、Linux(Redhat、Centos、Ubuntu、Debian、Fedora)およびUNIXライクなオペレーティングシステムでパスワードを変更するために使用されるコマンドです。

passwdを実行すると コマンドユーザーの暗号化されたパスワードは/etc/shadowファイルに保存されます。

通常のユーザー(root以外)のユーザーは、自分のパスワードの変更のみが許可されます。 rootまたはsudoユーザーは、任意のアカウントのパスワードを変更できます。

セキュリティ上の理由から、強力なパスワードを使用し、定期的に変更することを常にお勧めします。

パスワードの変更

passwdの場合 コマンドがroot以外のユーザーによって実行されると、現在のパスワードを要求され、そのユーザーの新しいパスワードが設定されます。スーパーユーザーまたはrootは、現在のパスワードを知らなくても、rootを含むすべてのユーザーのパスワードをリセットできます。

コマンドpasswdの場合 root以外のユーザーによって呼び出された場合は、パスワードの変更に進む前に、まず既存のパスワードを入力する必要があります。パスワードは2回入力する必要があり、入力時に画面にエコーされません。

$ passwd 
Changing password for vagrant.
(current) UNIX password: 
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully

また、パスワードとして簡単な単語を入力することはできません。 Passwdコマンドは、パスワードの長さと複雑さをチェックします。次の出力では、単純な辞書ベースのパスワードが試されています。

$ passwd 
Changing password for vagrant.
(current) UNIX password: 
Enter new UNIX password: 
Retype new UNIX password: 
You must choose a longer password
Enter new UNIX password: 
Retype new UNIX password: 
Bad: new password is too simple
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully

スーパーユーザー(root)としてパスワードを変更する

すべてのシステムユーザーは、自分のパスワードのみを変更できます。 passwd 通常のユーザーとして実行する場合、コマンドは引数を取りません。

ただし、rootとして、システム内の任意のユーザーのパスワードを変更およびリセットできます。

使用法は次のとおりです。

# passwd [options] [user_name]

使用できるさまざまなオプションは次のとおりです。

Options:
  -a, --all                     report password status on all accounts
  -d, --delete                  delete the password for the named account
  -e, --expire                  force expire the password for the named account
  -h, --help                    display this help message and exit
  -k, --keep-tokens             change password only if expired
  -i, --inactive INACTIVE       set password inactive after expiration
                                to INACTIVE
  -l, --lock                    lock the password of the named account
  -n, --mindays MIN_DAYS        set minimum number of days before password
                                change to MIN_DAYS
  -q, --quiet                   quiet mode
  -r, --repository REPOSITORY   change password in REPOSITORY repository
  -R, --root CHROOT_DIR         directory to chroot into
  -S, --status                  report password status on the named account
  -u, --unlock                  unlock the password of the named account
  -w, --warndays WARN_DAYS      set expiration warning days to WARN_DAYS
  -x, --maxdays MAX_DAYS        set maximum number of days before password
                                change to MAX_DAYS

ルートがpasswdを実行するとき コマンドを実行すると、デフォルトでルートパスワードがリセットされます。passwdの後にユーザー名を指定すると コマンドを実行すると、そのユーザーのパスワードが変更されます。

# passwd vagrant
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully
# 

rootユーザーは、単純なパスワードを提供することもできます。警告が表示されますが、パスワードは正常に変更されます。システムユーザーのパスワードは、暗号化された形式で/ etc/shadowファイルに保存されます。

パスワードステータス情報の表示

目的のユーザーのパスワードステータス情報を表示するには、-Sを使用します passwdコマンドのオプション。

# passwd -S vagrant
vagrant P 07/02/2019 0 99999 7 -1
# 

最初のフィールドはユーザー名を示し、2番目のフィールドはパスワードのステータスを示し(PS =パスワードセット、LK =パスワードがロックされている、NP =パスワードなし)、3番目のフィールドはパスワードが最後に変更された日時を示し、最後と4番目のフィールドは最小年齢、最大年齢、警告を示します期間、およびパスワードの非アクティブ期間。

システム内のすべてのユーザーパスワードのステータスを一覧表示するには、-Saを使用します パラメータ:

# passwd -Sa
root P 05/14/2019 0 99999 7 -1
daemon L 05/14/2019 0 99999 7 -1
bin L 05/14/2019 0 99999 7 -1
sys L 05/14/2019 0 99999 7 -1
sync L 05/14/2019 0 99999 7 -1
games L 05/14/2019 0 99999 7 -1
man L 05/14/2019 0 99999 7 -1
lp L 05/14/2019 0 99999 7 -1
mail L 05/14/2019 0 99999 7 -1
news L 05/14/2019 0 99999 7 -1
uucp L 05/14/2019 0 99999 7 -1
proxy L 05/14/2019 0 99999 7 -1
www-data L 05/14/2019 0 99999 7 -1
backup L 05/14/2019 0 99999 7 -1

ユーザーのパスワードの削除

目的のユーザーのパスワードを削除するには、-dを使用します コマンドオプション:

# passwd -d test
passwd: password expiry information changed.
# passwd -S test
test NP 07/02/2019 0 99999 7 -1

注:オプション-d ユーザーのパスワードが空になり、ユーザーのアカウントが無効になります。

パスワードの有効期限を設定

ユーザーのパスワードを期限切れにし、次回のログイン時にそのユーザーにパスワードの変更を強制するには、-eを使用します passwdのオプション コマンド。

# passwd -e test
passwd: password expiry information changed.
# passwd -S test
test NP 01/01/1970 0 99999 7 -1

システムユーザーのパスワードをロックおよびロック解除する

ユーザーのパスワードをロックするには、-lを使用します passwdのオプション 指図。 !が追加されます ユーザーのパスワードの開始時。パスワードがロックされている場合、ユーザーはパスワードを変更できません。

# passwd -l test
passwd: password expiry information changed.
# passwd -S test
test L 07/03/2019 0 99999 7 -1

ユーザーのパスワードのロックを解除するには、-uを使用します オプション:

# passwd -u test
passwd: password expiry information changed.
# passwd -S test
test P 07/03/2019 0 99999 7 -1

-iオプションを使用して非アクティブな日を設定する

これは、選択したユーザーのパスワードの有効期限が切れ、ユーザーが「n」日(つまり10日)以内にパスワードを変更しなかった場合にアクティブになります。その後、ユーザーはログインできなくなります。

# passwd -i 10 test
passwd: password expiry information changed.
# passwd -S test
test P 07/03/2019 0 99999 7 10

パスワードの有効期限が切れる前に警告日を設定

オプション-w ユーザーがパスワードの変更を通知される前に警告日を設定して使用されます。これは、パスワードの有効期限が切れるn日前にユーザーに警告が表示されることを意味します。

# passwd -w 5 test
passwd: password expiry information changed.
# passwd -S test
test P 07/03/2019 0 99999 5 10

パスワードを変更するための最小日数を設定する

以下では、テストユーザーの例で30日以内にパスワードを変更する必要があります。ゼロの値は、ユーザーがいつでもパスワードを変更できることを示します。

# passwd -n 30 test
passwd: password expiry information changed.
# passwd -S test
test P 07/03/2019 30 99999 5 10

結論

このチュートリアルでは、Linuxでユーザーパスワードを変更する方法を学びました。詳細については、passwdコマンドのマニュアルページを参照してください。この記事を読んでいただきありがとうございます。ご不明な点がありましたらお知らせください。

関連項目:

  • Ubuntuのデフォルトのルートパスワードを検索/変更する方法
  • LinuxでSudoersにユーザーを追加する方法

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

  2. LinuxでSCPコマンドにパスワードを渡す方法

  3. Linux での passwd コマンドの例

  1. LinuxでPasswdコマンドを使用する方法

  2. Linuxcdコマンドを使用してディレクトリを変更する方法

  3. RHEL7Linuxサーバーでタイムゾーンを変更する方法

  1. Linuxでの10のpasswdコマンドの例

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

  3. Linuxでユーザーパスワードを変更する方法