Linux でユーザー アカウントをロックおよびロック解除する 3 つの方法

Linux でユーザー アカウントをロックおよびロック解除する 3 つの方法

組織内で何らかのパスワード ポリシーがすでに実装されている場合は、この記事を読む必要はありません。ただし、この場合、アカウントに 24 時間のロック期間を設定すると、ユーザー アカウントのロックを手動で解除する必要があります。

このチュートリアルは、Linux でユーザー アカウントを手動でロックおよびロック解除するのに役立ちます。

これは、次の 2 つの Linux コマンドを使用して 3 つの方法で実行できます。

パスワード
ユーザーモッド

これを説明するために、daygeek ユーザー アカウントを選択してみましょう。それを段階的に行う方法を見てみましょう。

弊社のアカウントではなく、ロックまたはロック解除する必要があるユーザーのアカウントを使用する必要があることにご注意ください。 id コマンドを使用して、特定のユーザー アカウントがシステムで使用可能かどうかを確認できます。はい、私のアカウントはシステム内で利用可能です。

#id デイギーク
uid=2240(daygeek) gid=2243(daygeek) グループ=2243(daygeek),2244(ladmin)

方法 1: Linux で passwd コマンドを使用して特定のユーザー アカウントをロック、ロック解除、およびステータスを確認するにはどうすればよいでしょうか?

passwd コマンドは、Linux 管理者が頻繁に使用するコマンドの 1 つです。これは、/etc/shadow ファイル内のユーザーの認証トークンを更新するために使用されます。

指定されたユーザー アカウントをロックするには、-l スイッチを指定して passwd コマンドを実行します。

# パスワード -l daygeek
ユーザー daygeek のパスワードをロックしています。
パスワード: 成功

ロックされたアカウントのステータスは、passwd コマンドを使用するか、 /etc/shadowファイルから指定されたユーザー名を取得することで確認できます。

passwd コマンドを使用して、ユーザー アカウントのロック状態を確認します。

# パスワード -S デイギーク
または # passwd --status daygeek

daygeek LK 2019-05-30 7 90 7 -1 (Password locked.)

これにより、指定されたアカウントのパスワードの状態に関する簡単なメッセージが出力されます。

LK
NP
追伸

ロックされたユーザー アカウントのステータスを確認するには、/etc/shadow ファイルを使用します。アカウントがロックされている場合は、パスワードの先頭に 2 つの感嘆符が追加されます。

# grep daygeek /etc/shadow

デイギーク:!!$6$tGvVUhEY$PIkpI43HPaEoRrNJSRpM3H0YWOsqTqXCxtER6rak5PMaAoyQohrXNB0YoFCmAuh406n8XOvBBldvMy9trmIV00

:18047:7:90:7:::

特定のユーザー アカウントのロックを解除するには、-u スイッチを指定して passwd コマンドを実行します。

# パスワード -u デイギーク
ユーザー daygeek のパスワードのロックを解除します。
パスワード: 成功

方法 2: Linux で usermod コマンドを使用して特定のユーザー アカウントをロック、ロック解除、およびステータスを確認するにはどうすればよいでしょうか?

usermod コマンドは Linux 管理者によっても頻繁に使用されます。 usermod コマンドは、特定のユーザーのアカウント情報を変更/更新するために使用されます。特定のグループにユーザーを追加する場合などに使用します。

指定されたユーザー アカウントをロックするには、-L スイッチを指定して usermod コマンドを実行します。

# usermod --lock デイギーク
または # usermod -L daygeek

ロックされたアカウントのステータスは、passwd コマンドを使用するか、/etc/shadow ファイルから指定されたユーザー名を取得することで確認できます。

passwd コマンドを使用して、ユーザー アカウントのロック状態を確認します。

# パスワード -S デイギーク
または # passwd --status daygeek
daygeek LK 2019-05-30 7 90 7 -1 (パスワードがロックされています。)

これにより、指定されたアカウントのパスワードの状態に関する簡単なメッセージが出力されます。

LK
NP
追伸

ロックされたユーザー アカウントのステータスを確認するには、/etc/shadow ファイルを使用します。アカウントがロックされている場合は、パスワードの先頭に 2 つの感嘆符が追加されます。

# grep daygeek /etc/shadow
デイギーク:!!$6$tGvVUhEY$PIkpI43HPaEoRrNJSRpM3H0YWOsqTqXCxtER6rak5PMaAoyQohrXNB0YoFCmAuh406n8XOvBBldvMy9trmIV00

:18047:7:90:7:::

指定されたユーザー アカウントのロックを解除するには、-U スイッチを指定して usermod コマンドを実行します。

# usermod --unlock daygeek
または # usermod -U daygeek

方法 3: Linux で usermod コマンドを使用して、特定のユーザー アカウントへの SSH アクセスを無効または有効にする方法は?

usermod コマンドも Linux 管理者が頻繁に使用するコマンドです。 usermod コマンドは、特定のユーザーのアカウント情報を変更/更新するために使用されます。特定のグループにユーザーを追加する場合などに使用します。

あるいは、特定のユーザーに nologin シェルを割り当てることによってロックを実現することもできます。これを行うには、次のコマンドを実行します。

# usermod -s /sbin/nologin デイギーク

/etc/passwdファイルからユーザー名を指定することで、ロックされたユーザー アカウントの詳細を確認できます。

# grep daygeek /etc/passwd
daygeek:x:2240:2243::/home/daygeek:/sbin/nologin

元のシェルに再度割り当てることで、ユーザーの SSH アクセスを有効にすることができます。

# usermod -s /bin/bash daygeek

シェル スクリプトを使用して Linux で複数のユーザー アカウントをロック、ロック解除、およびステータスを確認する方法は?

複数のアカウントをロック/ロック解除したい場合は、スクリプトを見つける必要があります。

はい、これを行うには小さなシェル スクリプトを書くことができます。これを行うには、次のシェル スクリプトを使用します。

ユーザーリストを作成します。各ユーザー情報は別々の行に表示されます。

$ cat user-lists.txt

u1
ユー2
ユー3
u4
u5

Linux で複数のユーザー アカウントをロックするには、次のシェル スクリプトを使用します。

# ユーザーロック.sh
#!/bin/bash
`cat user-lists.txt` 内のユーザー
する
 パスワード -l $user
終わり

user-lock.shファイルを実行可能権限に設定します。

# chmod + user-lock.sh

最後にスクリプトを実行して目標を達成します。

# sh user-lock.sh

ユーザー u1 のパスワードをロックしています。
パスワード: 成功
ユーザー u2 のパスワードをロックしています。
パスワード: 成功
ユーザー u3 のパスワードをロックしています。
パスワード: 成功
ユーザー u4 のパスワードをロックしています。
パスワード: 成功
ユーザー u5 のパスワードをロックしています。
パスワード: 成功

ロックされたユーザー アカウントを確認するには、次のシェル スクリプトを使用します。

# vi ユーザーロックステータス.sh
#!/bin/bash
`cat user-lists.txt` 内のユーザー
する
 パスワード -S $user
終わり

user-lock-status.sh実行権限を設定します。

# chmod + user-lock-status.sh

最後にスクリプトを実行して目標を達成します。

# sh ユーザーロックステータス.sh
u1 LK 2019-06-10 0 99999 7 -1 (パスワードがロックされています。)
u2 LK 2019-06-10 0 99999 7 -1 (パスワードがロックされています。)
u3 LK 2019-06-10 0 99999 7 -1 (パスワードがロックされています。)
u4 LK 2019-06-10 0 99999 7 -1 (パスワードがロックされています。)
u5 LK 2019-06-10 0 99999 7 -1 (パスワードがロックされています。)

複数のユーザーのロックを解除するには、次のシェル スクリプトを使用します。

# ユーザーロック解除.sh
#!/bin/bash
`cat user-lists.txt` 内のユーザー
する
 パスワード -u $ユーザー
終わり

user-unlock.sh実行権限を設定します。

# chmod + user-unlock.sh

最後にスクリプトを実行して目標を達成します。

# sh ユーザーロック解除.sh

ユーザー u1 のパスワードのロックを解除します。
パスワード: 成功
ユーザー u2 のパスワードのロックを解除します。
パスワード: 成功
ユーザー u3 のパスワードのロックを解除します。
パスワード: 成功
ユーザー u4 のパスワードのロックを解除します。
パスワード: 成功
ユーザー u5 のパスワードのロックを解除します。
パスワード: 成功

同じシェル スクリプトuser-lock-status.shを実行して、これらのロックされたユーザー アカウントが Linux でロック解除されているかどうかを確認します。

# sh ユーザーロックステータス.sh
u1 PS 2019-06-10 0 99999 7 -1 (パスワード設定、SHA512 暗号化)
u2 PS 2019-06-10 0 99999 7 -1 (パスワード設定、SHA512 暗号化)
u3 PS 2019-06-10 0 99999 7 -1 (パスワード設定、SHA512 暗号化)
u4 PS 2019-06-10 0 99999 7 -1 (パスワード設定、SHA512 暗号化)
u5 PS 2019-06-10 0 99999 7 -1 (パスワード設定、SHA512 暗号化)

要約する

上記は、編集者が紹介した Linux でユーザー アカウントをロックおよびロック解除する 3 つの方法です。皆様のお役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。編集者がすぐに返信します。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。
この記事が役に立ったと思われた方は、ぜひ転載していただき、出典を明記してください。ありがとうございます!

以下もご興味があるかもしれません:
  • Linux で仮想コンソール セッションをロックする方法
  • Linux でログイン試行に失敗した後にユーザー アカウントをロックする 2 つの方法
  • Linux でユーザー アカウントをロックおよびロック解除する 3 つの方法

<<:  JDBC を MySQL 5.7 に接続する方法

>>:  JS で単一ファイルコンポーネントを実装する方法

推薦する

Node.js コンソールで強調表示されたコードを印刷する方法

序文コードを実行してエラーが発生すると、エラーが出力されます。エラーにはスタック情報が含まれており、...

HTML4とHTML5の違い: 入力にフォーカス実装コードを追加する方法

html4:コードをコピーコードは次のとおりです。 <フォーム> <p>&l...

テキストスクロール後の自動停止効果の例

効果は非常にシンプルで、次のコードを自分のページにコピーして実行するだけです。コードをコピーコードは...

Vue diffアルゴリズムの完全な分析

目次序文Vue 更新ビューパッチ同じVノードパッチVノード更新子供序文Vue は仮想 DOM を使用...

Linux の高並列性とパフォーマンス最適化の落とし穴の紹介

目次序文Linux アプリケーション実行中に開いているファイルが多すぎる問題の分析と解決Linux ...

mysql サブクエリと結合テーブルの詳細

目次1. サブクエリとは何ですか? 2. 自己結合3. 自然な結合4. 外部接続1. サブクエリとは...

インターフェース設計の10の一般的なルール

<br />これは私がずっと前に集めた記事です。皆さんの参考のために共有したいと思います...

Vue3 トランジションアニメーションの落とし穴記録について

目次背景問題の場所さらなる分析要約する背景私のコース「Vue 3 エンタープライズレベルの音楽アプリ...

MySQL で特定の親行のすべての子行を見つけるソリューション

序文注: テストデータベースのバージョンはMySQL 8.0ですテーブルを作成し、ユーザー scot...

Linux でファイルを削除するときに「操作は許可されていません」というプロンプトが表示される場合の対処方法

同僚からよく聞かれるのですが、ファイル/ディレクトリを削除すると「操作は許可されていません」というエ...

表のセル間の境界線/区切り線を非表示にする方法

上の境界線のみを表示する <table frame=above>下の境界線のみを表示する...

Reactは二次的連鎖効果(階段効果)を実現する

この記事では、二次リンク効果を実現するためのReactの具体的なコードを参考までに共有します。具体的...

ウォーターフォールフローレイアウトを実装する3つの方法

序文今日、Xianyuを閲覧していたとき、各行の高さが同じではないことに気付きました。調べてみると、...

MySQLのストレージエンジンについてお話しましょう

基礎リレーショナル データベースでは、各データ テーブルはファイルに相当し、異なるストレージ エンジ...

MySQL データ型における DECIMAL の使用法の詳細な説明

MySQL データ型における DECIMAL の使用法の詳細な説明MySQL のデータ型には、INT...