Dòng lệnh Linux cung cấp một số công cụ để quản lý người dùng (một số trong số đó chúng tôi đã thảo luận). Một tiện ích như vậy là chage, cho phép bạn điều chỉnh thông tin hết hạn mật khẩu. Trong hướng dẫn này, chúng tôi sẽ thảo luận về công cụ này bằng một số ví dụ dễ hiểu. Nhưng trước khi đi sâu vào, cần đề cập rằng tất cả các ví dụ ở đây đều đã được thử nghiệm trên máy Ubuntu 18.04 LTS.
Và đây là nội dung trang hướng dẫn về lệnh này:
Sau đây là một số ví dụ theo kiểu Hỏi & Đáp sẽ giúp bạn hiểu rõ hơn về cách lệnh chage hoạt động:
Đây là một ví dụ:
Sau đây là đầu ra mà nó tạo ra trên hệ thống của tôi:
Vì vậy, hiện tại, mật khẩu được đặt thành hết hạn 'không bao giờ'.
Ví dụ:
Lưu ý rằng thao tác này yêu cầu quyền root.
Vì vậy, bạn có thể thấy trong ảnh chụp màn hình ở trên, ngày hết hạn mật khẩu hiện đã được đặt thành ngày 21 tháng 4 năm 2021.
Lưu ý rằng bạn cũng có thể sử dụng tùy chọn dòng lệnh -m, được sử dụng để đặt số ngày tối thiểu giữa các lần thay đổi mật khẩu. Tùy chọn -M mà chúng tôi đã thảo luận ở trên sẽ đặt số ngày tối đa mà mật khẩu có hiệu lực.
Sau đây là một ví dụ:
Vì vậy, bạn có thể thấy giá trị của trường 'Lần thay đổi mật khẩu gần nhất' đã được thay đổi thành công.
Ví dụ:
Lệnh này sẽ đảm bảo rằng người dùng sẽ thấy cảnh báo mật khẩu hết hạn 10 ngày trước khi mật khẩu được đặt hết hạn.
Ví dụ:
Lệnh trên sẽ đảm bảo rằng tài khoản của người dùng 'himanshu' sẽ không thể truy cập được kể từ ngày 21 tháng 6 năm 2019.
Lệnh chage Linux
Lệnh chage, như đã giải thích ở trên, cho phép bạn điều chỉnh thông tin hết hạn mật khẩu người dùng. Sau đây là cú pháp của lệnh này:
Mã:
chage [options] LOGIN
Mã:
Lệnh chage thay đổi số ngày giữa các lần thay đổi mật khẩu
và ngày thay đổi mật khẩu gần nhất. Thông tin này được
hệ thống sử dụng để xác định thời điểm người dùng phải thay đổi mật khẩu.
Câu hỏi 1. Làm thế nào để xem thông tin hết hạn mật khẩu hiện tại?
Để xem thông tin ngày hết hạn mật khẩu hiện tại của người dùng, hãy sử dụng tùy chọn dòng lệnh -l.
Mã:
chage -l [USERNAME]
Mã:
chage -l himanshu
Mã:
Lần thay đổi mật khẩu gần nhất: 26 tháng 7 năm 2018
Mật khẩu hết hạn: không bao giờ
Mật khẩu không hoạt động: không bao giờ
Tài khoản hết hạn: không bao giờ
Số ngày tối thiểu giữa các lần thay đổi mật khẩu: 0
Số ngày tối đa giữa các lần thay đổi mật khẩu: 99999
Số ngày cảnh báo trước khi mật khẩu hết hạn: 7
Câu 2. Làm thế nào để thay đổi ngày hết hạn mật khẩu?
Bạn có thể thực hiện việc này bằng tùy chọn dòng lệnh -M, yêu cầu bạn phải truyền một số (chỉ số ngày tối đa mà mật khẩu có hiệu lực).Ví dụ:
Mã:
chage -M 1000 himanshu
Vì vậy, bạn có thể thấy trong ảnh chụp màn hình ở trên, ngày hết hạn mật khẩu hiện đã được đặt thành ngày 21 tháng 4 năm 2021.
Lưu ý rằng bạn cũng có thể sử dụng tùy chọn dòng lệnh -m, được sử dụng để đặt số ngày tối thiểu giữa các lần thay đổi mật khẩu. Tùy chọn -M mà chúng tôi đã thảo luận ở trên sẽ đặt số ngày tối đa mà mật khẩu có hiệu lực.
Câu hỏi 3. Làm thế nào để thay đổi ngày thay đổi mật khẩu gần nhất?
Bạn có thể điều chỉnh ngày thay đổi mật khẩu gần nhất bằng tùy chọn dòng lệnh -d. Khi nhập, bạn có thể truyền một số vào tùy chọn này hoặc một ngày đầy đủ. Sau đây là cách trang hướng dẫn giải thích:
Mã:
-d, --lastday LAST_DAY
Đặt số ngày kể từ ngày 1 tháng 1 năm 1970 khi mật khẩu
được thay đổi lần cuối. Ngày cũng có thể được biểu thị theo định dạng
YYYY-MM-DD (hoặc định dạng thường được sử dụng hơn ở khu vực của bạn).
Vì vậy, bạn có thể thấy giá trị của trường 'Lần thay đổi mật khẩu gần nhất' đã được thay đổi thành công.
Câu hỏi 4. Làm thế nào để cảnh báo người dùng trước khi mật khẩu hết hạn?
Lệnh chage cũng cho phép bạn đặt số ngày cảnh báo trước khi cần thay đổi mật khẩu. Bạn có thể thực hiện việc này bằng tùy chọn dòng lệnh -W.
Mã:
-W, --warndays WARN_DAYS
Đặt số ngày cảnh báo trước khi cần thay đổi mật khẩu. Tùy chọn WARN_DAYS là số ngày trước khi mật khẩu hết hạn mà người dùng sẽ được cảnh báo rằng mật khẩu của họ sắp hết hạn.
Mã:
chage -W 10 himanshu
Câu hỏi 5. Làm thế nào để khóa tài khoản?
Sử dụng tùy chọn dòng lệnh -E để khóa tài khoản. Cách nó chấp nhận đầu vào tương tự như tùy chọn -W mà chúng ta đã thảo luận ở trên. Để bạn tham khảo, đây là cách trang hướng dẫn giải thích về nó:
Mã:
-E, --expiredate EXPIRE_DATE
Đặt ngày hoặc số ngày kể từ ngày 1 tháng 1 năm 1970 mà tài khoản của
người dùng sẽ không còn truy cập được nữa. Ngày cũng có thể được
biểu thị theo định dạng YYYY-MM-DD (hoặc định dạng phổ biến hơn
được sử dụng ở khu vực của bạn). Người dùng có tài khoản bị khóa phải liên hệ với
quản trị viên hệ thống trước khi có thể sử dụng lại hệ thống.
Việc truyền số -1 làm EXPIRE_DATE sẽ xóa ngày hết hạn của tài khoản.
Mã:
chage -E 2019-06-21 himanshu
Câu hỏi 6. Điều gì xảy ra nếu sử dụng chage mà không có bất kỳ tùy chọn nào?
Sau đây là những gì xảy ra trong trường hợp này:
Mã:
Nếu không có tùy chọn nào được chọn, chage sẽ hoạt động theo cách tương tác, nhắc người dùng nhập các giá trị hiện tại cho tất cả các trường. Nhập giá trị mới để thay đổi trường hoặc để dòng
trống để sử dụng giá trị hiện tại. Giá trị hiện tại được hiển thị giữa
một cặp dấu [ ].