Lệnh chpasswd trong Linux

Giới thiệu

Trong lab này, chúng ta sẽ khám phá lệnh chpasswd trong Linux, cho phép bạn thay đổi mật khẩu người dùng ở chế độ hàng loạt. Lab bao gồm việc tìm hiểu lệnh chpasswd, thay đổi mật khẩu người dùng ở chế độ hàng loạt và tự động hóa việc thay đổi mật khẩu bằng các shell script. Điều này có thể đặc biệt hữu ích trong môi trường doanh nghiệp, nơi bạn cần cập nhật mật khẩu thường xuyên cho một số lượng lớn người dùng. Lab cung cấp các ví dụ thực tế và hướng dẫn từng bước để giúp bạn quản lý mật khẩu người dùng một cách hiệu quả trong hệ thống Linux.

Tìm hiểu lệnh chpasswd

Trong bước này, chúng ta sẽ khám phá lệnh chpasswd trong Linux, cho phép bạn thay đổi mật khẩu người dùng ở chế độ hàng loạt. Lệnh chpasswd đọc danh sách các cặp tên người dùng và mật khẩu từ đầu vào chuẩn và sử dụng thông tin này để cập nhật mật khẩu.

Đầu tiên, hãy tạo một file với danh sách các cặp tên người dùng và mật khẩu:

labex:newpassword1
labuser:newpassword2

Bây giờ, chúng ta có thể sử dụng lệnh chpasswd để cập nhật mật khẩu cho những người dùng này:

cat users_passwords.txt | sudo chpasswd

Ví dụ đầu ra:

labex:newpassword1
labuser:newpassword2

Lệnh chpasswd đọc các cặp tên người dùng và mật khẩu từ file users_passwords.txt và cập nhật mật khẩu tương ứng. Lưu ý rằng mật khẩu được cung cấp ở dạng văn bản thuần túy, vì vậy phương pháp này nên được sử dụng một cách thận trọng và chỉ trong môi trường an toàn.

Tự động hóa việc thay đổi mật khẩu với Shell Scripts

Trong bước cuối cùng này, chúng ta sẽ học cách tự động hóa quá trình thay đổi mật khẩu người dùng bằng các shell script. Điều này có thể hữu ích khi bạn cần cập nhật mật khẩu thường xuyên cho một số lượng lớn người dùng, chẳng hạn như trong môi trường doanh nghiệp.

Đầu tiên, hãy tạo một shell script đơn giản sử dụng lệnh chpasswd để thay đổi mật khẩu người dùng:

#!/bin/bash

## Define the list of users and their new passwords
users_and_passwords=(
  "labex:newpassword1"
  "labuser:newpassword2"
)

## Loop through the list and update the passwords
for user_and_password in "${users_and_passwords[@]}"; do
  user=$(echo "$user_and_password" | cut -d':' -f1)
  password=$(echo "$user_and_password" | cut -d':' -f2)
  echo "$user:$password" | sudo chpasswd
done

Lưu script này dưới dạng update_passwords.sh trong thư mục ~/project và làm cho nó có thể thực thi:

chmod +x ~/project/update_passwords.sh

Bây giờ, bạn có thể chạy script để cập nhật mật khẩu cho người dùng:

~/project/update_passwords.sh

Ví dụ đầu ra:

labex:newpassword1
labuser:newpassword2

Script đọc danh sách người dùng và mật khẩu mới của họ, sau đó sử dụng lệnh chpasswd để cập nhật mật khẩu ở chế độ hàng loạt.

Tóm tắt

Trong lab này, chúng ta đã học cách sử dụng lệnh chpasswd trong Linux để thay đổi mật khẩu người dùng ở chế độ hàng loạt. Chúng ta đã tạo một file với danh sách các cặp tên người dùng và mật khẩu, và sử dụng lệnh chpasswd để cập nhật mật khẩu tương ứng. Ngoài ra, chúng ta đã khám phá cách tự động hóa quá trình thay đổi mật khẩu người dùng bằng shell script, điều này có thể hữu ích trong môi trường doanh nghiệp, nơi mật khẩu cần được cập nhật thường xuyên cho một số lượng lớn người dùng.

Cuối cùng, chúng ta đã học cách tạo shell script sử dụng lệnh chpasswd để thay đổi mật khẩu người dùng và cách chạy script để cập nhật mật khẩu cho người dùng.

400+ câu lệnh phổ biến trong Linux