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 で単一ファイルコンポーネントを実装する方法

推薦する

Ubuntu 20.04 に GitLab をインストールして設定する方法

導入GitLab CE または Community Edition は、主に Git リポジトリのホ...

Tomcat 実行時の JVM エンコーディングの問題を修正

質問:最近、プロジェクトを展開すると文字化けしたデータが出てきました。確認したところ、プロジェクトは...

vue+iviewのメニューとタブの連携方法

Vue+iview メニューとタブのリンク現在、vue+iview を使用してバックエンド管理システ...

DockerはElasticsearch7.6クラスタをインストールし、パスワードを設定します

Elasticsearch 6.8 以降、無料ユーザーは X-Pack のセキュリティ機能を使用でき...

MySQL 高可用性クラスタの展開とフェイルオーバーの実装

目次1. 内閣府1. コンセプト2. MHAの構成3. MHAの特徴2. MySQL+MHAをビルド...

js は、Element の入力コンポーネントのいくつかの機能を実装し、それをコンポーネントにカプセル化します (サンプルコード)

現在実装されているのは、基本的な使用方法、クリア可能なボックス、パスワードボックスです。参考リンク:...

ウェブページの要素の検査とソースコードの表示の違いについて

Chrome ブラウザで Web ページを開くと、ページを右クリックすると 2 つの非常によく似たオ...

5分でDockerを使ってRedisのクラスターモードとセンチネルモードを構築する方法を教えます

目次1. 準備Redisイメージを取得する2. Redis Sentinel マスタースレーブモード...

MySQL の 3 つの浮動小数点型 (float、double、decimal) の違いと概要について簡単に説明します。

各浮動小数点型のストレージ サイズと範囲は、次の表に示されています。タイプサイズ範囲(符号付き)範囲...

Linux で scp コマンドを使用してファイルをリモートでコピーする方法の詳細な説明

序文scp は secure copy の略です。scp は、Linux システムの ssh ログイ...

MySQLのイベントスケジューラEVENTを理解する

MySQL のイベント スケジューラ EVENT は、Unix crontab や Windows ...

Nginx ドメイン名 SSL 証明書の構成 (Web サイトの http を https にアップグレード)

序文HTTP と HTTPS日常生活でよく使われる URL は、おおまかに次の 2 種類に分けられま...

SSHのssh-keygenコマンドの基本的な使い方の詳細な説明

SSH 公開鍵認証は、SSH 認証方式の 1 つです。 SSH パスワードフリーのログインは公開鍵認...

重要なmysqlログファイルの概要

著者: 丁易出典: https://chengxuzhixin.com/blog/post/mysq...

MySQLに絵文字表現を挿入する方法

序文今日、オープンソース プロジェクトのフィードバック フォームを設計していたところ、絵文字表現を挿...