Liên hệProfile
Danh mục

Mục Lục

    Cách dùng lệnh passwd trên Linux để quản lý mật khẩu người dùng an toàn và hiệu quả

    Nguyễn Hưng

    Ngày đăng:

    10/02/2026

    Cập nhật lần cuối:

    10/02/2026

    Lượt xem:
    Chia sẻ
    Đánh giá
    5/5 - (1 bình chọn)

    Nguyễn Hưng

    Lượt xem:
    Ngày đăng:

    10/02/2026

    Cập nhật lần cuối:

    10/02/2026

    Mục lục

    Lệnh passwd trong Linux là công cụ dòng lệnh dùng để thiết lập, thay đổi và quản lý mật khẩu của tài khoản người dùng trên hệ thống. Việc sử dụng passwd đúng cách giúp tăng cường bảo mật, kiểm soát quyền truy cập và hạn chế rủi ro liên quan đến tài khoản người dùng. Trong bài viết này, mình sẽ cùng bạn tìm hiểu cách sử dụng lệnh passwd, các tùy chọn quan trọng và những lưu ý cần thiết để quản lý mật khẩu an toàn và hiệu quả trên Linux.

    Những điểm chính

    • Khái niệm: Hiểu rõ lệnh passwd là công cụ dùng để quản lý mật khẩu, giúp bạn ứng dụng nó hiệu quả hơn trong việc thiết lập, thay đổi và bảo vệ tài khoản người dùng.
    • Cú pháp và các tùy chọn: Nắm vững cú pháp cơ bản và các tùy chọn quan trọng, giúp bạn kiểm soát chi tiết các hành động như khóa/mở khóa, xóa mật khẩu và thiết lập thời gian hết hạn.
    • Các ví dụ thực hành: Nắm vững các ví dụ thực tế, giúp bạn áp dụng lệnh passwd một cách linh hoạt trong nhiều tình huống quản trị, từ việc đặt mật khẩu đơn giản đến quản lý chính sách bảo mật nâng cao.
    • Các lỗi thường gặp và cách khắc phục: Nhận diện được các lỗi phổ biến như “Authentication token manipulation error” và “Permission denied”, giúp bạn chẩn đoán và xử lý sự cố một cách nhanh chóng, hiệu quả.
    • Câu hỏi thường gặp: Giải đáp các thắc mắc liên quan đến lệnh passwd trong Linux.

    Lệnh passwd trong Linux là gì?

    Lệnh passwd trong Linux là dòng lệnh dùng để đặt mới, thay đổi và quản lý mật khẩu cho tài khoản người dùng trên hệ điều hành Linux. Đồng thời, bạn có thể sử dụng lệnh này đểcập nhật các thông tin liên quan đến mật khẩu như thời gian hết hạn hoặc trạng thái khóa của tài khoản. Khi sử dụng, lệnh passwd sẽ yêu cầu người dùng nhập mật khẩu hiện tại (trừ trường hợp tài khoản có quyền cao) rồi kiểm tra, mã hóa và so sánh với giá trị đang lưu trong hệ thống. Sau đó, nó ghi nhận mật khẩu mới vào các file quản lý mật khẩu như /etc/shadow theo đúng chính sách bảo mật được cấu hình.

    Lệnh passwd trong Linux là dòng lệnh dùng để đặt mới, thay đổi và quản lý mật khẩu cho tài khoản người dùng
    Lệnh passwd trong Linux là dòng lệnh dùng để đặt mới, thay đổi và quản lý mật khẩu cho tài khoản người dùng

    Một số thao tác chính với passwd gồm:

    • Thiết lập mật khẩu mới cho tài khoản người dùng, thường áp dụng khi vừa tạo user hoặc tài khoản chưa được gán mật khẩu.
    • Cập nhật mật khẩu đang sử dụng, yêu cầu người dùng đổi mật khẩu ở lần đăng nhập kế tiếp và cấu hình các tham số hết hạn, cảnh báo trước khi mật khẩu đến hạn.
    • Thực hiện khóa hoặc mở khóa mật khẩu đăng nhập, cũng như xóa mật khẩu để cho phép tài khoản đăng nhập mà không cần password trong những trường hợp được chính sách bảo mật cho phép.
    • Hiển thị trạng thái mật khẩu của tài khoản, bao gồm thông tin về việc mật khẩu đang được kích hoạt hay bị khóa và các mốc thời gian hết hạn được lưu trong file /etc/shadow.

    Cách sử dụng lệnh passwd trong Linux

    Trong quá trình quản trị tài khoản, bạn cần nắm vững cú pháp cơ bản của lệnh passwd để hiểu các thành phần và cách áp dụng trong từng ngữ cảnh khác nhau. Cú pháp tổng quát như sau:

    passwd [OPTIONS] [USERNAME]

    Trong đó:

    • passwd: Tên lệnh dùng để thao tác với mật khẩu người dùng trên hệ thống.
    • [OPTIONS]: Các tùy chọn bổ sung, có thể bỏ trống, dùng để khóa/mở khóa, xóa, ép hết hạn mật khẩu hoặc cấu hình thời gian hiệu lực.
    • [USERNAME]: Tên tài khoản cần thay đổi mật khẩu; nếu không chỉ định USERNAME thì lệnh sẽ áp dụng cho chính user đang đăng nhập, còn khi chỉ rõ USERNAME thì thường cần quyền root hoặc sudo để thực thi.

    Bên cạnh cú pháp chung, bạn cần hiểu rõ các tùy chọn thường dùng của passwd để kết hợp linh hoạt trong các tình huống thực tế. Một số option quan trọng có thể kể đến:

    Tùy chọnChức năng
    -lKhóa mật khẩu của tài khoản, khiến user không thể đăng nhập bằng password cho đến khi được mở lại.
    -uMở khóa mật khẩu đã bị khóa trước đó, khôi phục khả năng đăng nhập bằng mật khẩu cho user.
    -dXóa mật khẩu hiện tại, cho phép tài khoản đăng nhập mà không cần password trong những môi trường được cho phép.
    -eĐặt mật khẩu về trạng thái hết hạn ngay lập tức để buộc người dùng đổi mật khẩu ở lần đăng nhập tới.
    --expireTùy chọn mở rộng có chức năng tương tự -e trên một số hệ thống, dùng để ép mật khẩu hết hạn.
    -x DAYSThiết lập số ngày tối đa mà mật khẩu có hiệu lực trước khi bắt buộc phải thay đổi.
    -n DAYSĐặt số ngày tối thiểu giữa hai lần đổi mật khẩu liên tiếp, tránh việc thay đổi quá thường xuyên.
    -w DAYSQuy định số ngày cảnh báo trước khi mật khẩu hết hạn, giúp người dùng chủ động đổi mật khẩu.
    -SHiển thị trạng thái mật khẩu của một tài khoản, bao gồm thông tin đã đặt mật khẩu hay chưa, có bị khóa hay không và các mốc thời gian liên quan.

    Ví dụ 1: Đặt mật khẩu cho user

    Để gán hoặc thay đổi mật khẩu cho một tài khoản cụ thể, bạn có thể gọi trực tiếp lệnh passwd kèm theo tên người dùng cần đặt mật khẩu. Ví dụ, để đặt mật khẩu cho user vietnix, bạn nhập:

    sudo passwd vietnix

    Sau đó hệ thống sẽ yêu cầu nhập mật khẩu mới và xác nhận lại. Nếu đạt yêu cầu về độ phức tạp và trùng khớp, màn hình sẽ hiển thị thông báo cập nhật mật khẩu thành công.

    Đặt mật khẩu cho user
    Đặt mật khẩu cho user

    Ví dụ 2: Buộc user đổi mật khẩu khi đăng nhập

    Trong một số trường hợp, bạn muốn giữ mật khẩu hiện tại nhưng bắt buộc người dùng phải tự đổi mật khẩu ở lần đăng nhập kế tiếp. Khi đó, bạn có thể dùng tùy chọn -e (hoặc --expire trên một số hệ thống) để đưa mật khẩu về trạng thái hết hạn, chẳng hạn:

    passwd -e vietnix
    Dùng tùy chọn -e để đưa mật khẩu về trạng thái hết hạn
    Dùng tùy chọn -e để đưa mật khẩu về trạng thái hết hạn

    Sau lệnh này, khi user vietnix đăng nhập lại, hệ thống sẽ yêu cầu thiết lập mật khẩu mới trước khi cho phép tiếp tục sử dụng phiên làm việc.

    Ví dụ 3: Khóa và mở mật khẩu của user

    Khi cần tạm thời vô hiệu hóa đăng nhập bằng mật khẩu của một tài khoản mà không xóa user, bạn có thể khóa password bằng option -l. Ví dụ:

    sudo passwd -l vietnix

    Tài khoản vietnix sẽ không đăng nhập được bằng mật khẩu cho đến khi được mở khóa lại bằng lệnh:

    sudo passwd -u vietnix

    Cả hai thao tác này chỉ ảnh hưởng tới cơ chế đăng nhập bằng password, các phương thức xác thực khác như SSH key có thể vẫn hoạt động tùy cấu hình.

    Ví dụ 4: Đặt thời gian hết hạn mật khẩu

    Để tăng cường bảo mật, nhiều hệ thống yêu cầu mật khẩu phải được thay đổi định kỳ sau một khoảng thời gian nhất định. Bạn có thể sử dụng tùy chọn -x để đặt số ngày tối đa mật khẩu có hiệu lực, ví dụ:

    passwd -x 90 vietnix

    Khi cấu hình như vậy, mật khẩu của vietnix sẽ chỉ hợp lệ trong 90 ngày. Sau đó, hệ thống sẽ yêu cầu đổi mật khẩu mới theo chính sách đã đặt.

    Ví dụ 5: Kiểm tra trạng thái mật khẩu user

    Trước khi can thiệp, bạn cần xem trạng thái mật khẩu hiện tại của một tài khoản để biết đã đặt password hay chưa, có đang bị khóa và các thông số hết hạn. Khi đó, bạn có thể dùng tùy chọn -S như sau:

    passwd -S vietnix
    Kiểm tra trạng thái mật khẩu user
    Kiểm tra trạng thái mật khẩu user

    Kết quả trả về sẽ hiển thị tên user, trạng thái mật khẩu (ví dụ P – đã đặt mật khẩu, L – bị khóa, NP – không có mật khẩu) cùng các giá trị về min, max, warning và ngày đặt mật khẩu cuối cùng.

    Ví dụ 6: Xem thông tin mật khẩu của tất cả user

    Nếu cần kiểm tra nhanh trạng thái mật khẩu của toàn bộ tài khoản trên hệ thống, bạn có thể kết hợp -S với tùy chọn -a để liệt kê đồng thời cho tất cả user. Cú pháp thường dùng là:

    passwd -S -a

    Sau khi thực thi, terminal sẽ in ra danh sách các tài khoản cùng trạng thái mật khẩu tương ứng, giúp bạn dễ dàng rà soát những tài khoản không có mật khẩu, bị khóa hoặc sắp hết hạn.

    Ví dụ 7: Xóa mật khẩu người dùng

    Trong một số môi trường đặc thù, admin có thể cần xóa mật khẩu của user để tài khoản đó trở thành tài khoản không có password (password-less), thường đi kèm với cơ chế xác thực khác. Để thực hiện, bạn sử dụng tùy chọn -d, ví dụ:

    passwd -d vietnix

    Sau thao tác này, mật khẩu của user vietnix sẽ bị loại bỏ khỏi hệ thống và user có thể đăng nhập mà không cần nhập password, do đó bạn phải cân nhắc kỹ và đảm bảo các lớp bảo mật khác đã được thiết lập.

    1. Lỗi “passwd: Authentication token manipulation error”

    Lỗi “Authentication token manipulation error” thường xuất hiện khi hệ thống không thể ghi nhận thay đổi mật khẩu do vấn đề về quyền hoặc trạng thái file liên quan đến mật khẩu. Nguyên nhân phổ biến gồm: lệnh passwd không được chạy với quyền root/sudo, file /etc/shadow đang bị khóa hoặc gán quyền sai hoặc phân vùng hệ thống đang ở trạng thái chỉ đọc nên không thể cập nhật thông tin mật khẩu.

    Để khắc phục, bạn nên chạy lại lệnh với quyền cao hơn, ví dụ sudo passwd username hoặc đăng nhập trực tiếp vào tài khoản root rồi thực hiện đổi mật khẩu. Ngoài ra, cần kiểm tra và sửa lỗi hệ thống bằng các công cụ như pwck. Đồng thời, bạn cũng cần đảm bảo filesystem được mount ở chế độ đọc/ghi (read/write) và file /etc/shadow có phân quyền phù hợp để passwd có thể ghi dữ liệu.

    2. Lỗi “passwd: Permission denied” khi đổi mật khẩu

    Thông báo “Permission denied” khi chạy passwd thường cho thấy tài khoản hiện tại không có đủ quyền để thay đổi mật khẩu mục tiêu hoặc không có quyền ghi vào các file cấu hình như /etc/passwd và /etc/shadow. Trường hợp này thường gặp khi user thường cố đổi mật khẩu của tài khoản khác, hoặc khi quyền, thuộc tính bảo vệ của các file hệ thống bị cấu hình sai.

    Cách xử lý cơ bản là sử dụng sudo hoặc su để nâng quyền trước khi thực thi passwd, bảo đảm lệnh chạy với quyền quản trị phù hợp với phạm vi thay đổi. Nếu ngay cả admin cũng bị từ chối, bạn cần kiểm tra lại cấu hình sudoers, thuộc tính (chattr) và phân quyền của các file /etc/passwd, /etc/shadow để khôi phục khả năng ghi.

    3. Một số lỗi khác liên quan đến chính sách mật khẩu

    Ngoài các lỗi về quyền và file hệ thống, việc thay đổi mật khẩu còn có thể bị từ chối do mật khẩu mới không đáp ứng chính sách phức tạp được cấu hình trong PAM hoặc công cụ quản lý mật khẩu. Các yêu cầu thường gặp bao gồm độ dài tối thiểu, bắt buộc có chữ hoa, chữ thường, chữ số, ký tự đặc biệt hoặc không được trùng với mật khẩu cũ gần đây.

    Bên cạnh đó, một số hệ thống yêu cầu nhập chính xác mật khẩu hiện tại trước khi cho phép đặt mật khẩu mới, nếu người dùng nhập sai hoặc bỏ qua bước này, passwd sẽ không cập nhật được mật khẩu và hiển thị thông báo lỗi tương ứng. Trong các trường hợp này, người dùng cần kiểm tra lại mật khẩu hiện tại, đọc kỹ thông báo về yêu cầu độ phức tạp, sau đó nhập lại mật khẩu mới phù hợp với chính sách đã thiết lập.

    Một số lỗi thường gặp khi sử dụng lệnh passwd
    Một số lỗi thường gặp khi sử dụng lệnh passwd

    Câu hỏi thường gặp

    Khi nào nên dùng passwd mà không chỉ định USERNAME?

    Trong môi trường desktop hoặc khi đang SSH bằng tài khoản cá nhân, người dùng có thể chạy trực tiếp lệnh passwd (không kèm USERNAME) để đổi mật khẩu của chính mình mà không cần quyền sudo. Cách này phù hợp khi chỉ muốn cập nhật mật khẩu tài khoản đang đăng nhập, không can thiệp tới user khác trên hệ thống.

    Có nên cho phép tài khoản đăng nhập không cần mật khẩu với passwd -d không?

    Việc dùng passwd -d username để xóa mật khẩu và cho phép đăng nhập không cần password chỉ nên áp dụng trong các môi trường được kiểm soát chặt, ví dụ hệ thống nội bộ hoặc tài khoản chỉ dùng kèm SSH key. Trên các máy chủ production hoặc hệ thống truy cập từ Internet, bạn thường được khuyến nghị giữ cơ chế yêu cầu mật khẩu mạnh hoặc kết hợp thêm xác thực nhiều lớp thay vì bỏ password hoàn toàn.

    Làm sao kết hợp passwd với chính sách mật khẩu mạnh trên Linux?

    Lệnh passwd chỉ thực hiện thay đổi mật khẩu, còn các tiêu chí về độ dài tối thiểu, ký tự đặc biệt, số lần lặp lại… thường được cấu hình qua PAM và các file như /etc/pam.d/common-password hoặc /etc/login.defs. Bạn có thể cài đặt module như pam_pwquality rồi quy định các tham số minlen, ucredit, lcredit, dcredit, ocredit để buộc mọi lần đổi mật khẩu bằng passwd đều phải tuân theo chính sách mật khẩu mạnh.

    Khi nắm vững cách sử dụng lệnh passwd, bạn có thể xây dựng quy trình quản lý mật khẩu rõ ràng hơn, từ việc đặt mật khẩu ban đầu, buộc đổi mật khẩu định kỳ đến khóa, mở và kiểm tra trạng thái tài khoản. Dựa trên các ví dụ và lỗi phổ biến đã phân tích, bạn có thể áp dụng trực tiếp lệnh passwd vào môi trường Linux thực tế để duy trì hệ thống an toàn và đáp ứng tốt các chính sách bảo mật đặt ra. Cảm ơn bạn đã theo dõi bài viết!

    5/5 - (1 bình chọn)
    Nguyễn Hưng
    Tôi là Nguyễn Hưng hay còn được biết đến với nickname là Bo, chuyên gia về hệ thống, mạng và bảo mật. Tôi là Co-Founder của Vietnix và Co-Founder của dự án Chống Lừa Đảo.
    0 0 đánh giá
    Đánh giá bài viết
    Theo dõi
    Thông báo của
    guest
    0 Góp ý
    Cũ nhất
    Mới nhất Được bỏ phiếu nhiều nhất
    Phản hồi nội tuyến
    Xem tất cả bình luận

    BÀI VIẾT LIÊN QUAN

    Dùng lệnh chmod trên Linux để quản lý quyền truy cập file và thư mục hiệu quả
    Dùng lệnh chmod trên Linux để quản lý quyền truy cập file và thư mục hiệu quả

    Lệnh chmod trong Linux là công cụ dùng để thiết lập và thay đổi quyền truy cập đối với file và thư mục trong hệ thống. Việc cấu hình quyền đúng cách giúp kiểm soát truy cập, tăng cường bảo mật và hạn chế các lỗi phát sinh khi vận hành ứng dụng. Trong bài…

    10/02/2026

    Lệnh zcat trong Linux là gì? Cách sử dụng lệnh zcat kèm ví dụ dễ hiểu
    Lệnh zcat trong Linux là gì? Cách sử dụng lệnh zcat kèm ví dụ dễ hiểu

    Lệnh zcat trong Linux là công cụ dòng lệnh dùng để xem và xử lý nội dung của các file nén định dạng .gz mà không cần giải nén. Với zcat, bạn có thể nhanh chóng đọc dữ liệu, kết hợp cùng các lệnh như grep, less, head để phân tích file nén một cách…

    10/02/2026

    Hướng dẫn sử dụng lệnh groupdel trên Linux để xoá nhóm người dùng
    Hướng dẫn sử dụng lệnh groupdel trên Linux để xoá nhóm người dùng

    Lệnh groupdel trong Linux là công cụ dòng lệnh dùng để xóa nhóm người dùng khỏi hệ thống. Việc sử dụng groupdel đúng cách giúp hệ thống gọn gàng hơn, hạn chế rủi ro phân quyền sai và tăng tính bảo mật trong quá trình quản trị. Trong bài viết này, mình sẽ cùng bạn…

    09/02/2026

    Hướng dẫn sử dụng lệnh groupadd Linux để thêm nhóm người dùng
    Hướng dẫn sử dụng lệnh groupadd Linux để thêm nhóm người dùng

    Lệnh groupadd Linux là tiện ích dòng lệnh dùng để tạo nhóm người dùng mới trên hệ thống, phục vụ cho việc phân quyền và quản lý user theo nhóm. Việc sử dụng group giúp quản trị viên kiểm soát quyền truy cập hiệu quả hơn, giảm rủi ro sai sót và đơn giản hóa…

    09/02/2026

    linux

    lenh

    text