Lệnh này làm gì: sudo dscl. mật khẩu / người dùng / quản trị viên thePassword


12

Tôi (đang cố gắng) quản trị một nhóm Mac Minis được sử dụng làm máy chủ. Gần đây tôi cần thay đổi tất cả mật khẩu của họ, vì vậy tôi đã SSH và chạy lệnh này, đó là những gì tôi đã sử dụng khi tạo tài khoản người dùng mới trên các máy đó:

sudo dscl . passwd /Users/administrator thePassword

Thật không may, điều này đã không làm những gì tôi nghĩ khi được sử dụng trên một người dùng hiện tại, mật khẩu mới không phải thePasswordvà vì vậy tôi đã mất quyền truy cập sudo. man dsclcó điều này để nói:

mật mã

 Usage: passwd user_path [new_pasword | old_password new_pasword]

 Changes a password for a user. The user must be specified by full path,
 not just a username.  If you are authenticated to the node (either by
 specifying the -u and -P flags or by using the auth command when in
 interactive node) then you can simply specify a new password.  If you are
 not authenticated then the user's old password must be specified.  If
 passwords are not specified while in interactive mode, you will be
 prompted for them.  Passing these passwords on the command line is inher-
 ently insecure and can cause password exposure.  For better security do
 not provide the password as part of the command and you will be securely
 prompted.

Vì vậy, có vẻ như tôi nên cung cấp mật khẩu cũ của người dùng khi chạy lệnh trước đó, nhưng tôi đã không làm thế. Tôi biết mật khẩu nào tôi đã nhập và tôi vẫn có quyền truy cập SSH vào máy. Nếu tôi có thể tìm ra lệnh đã làm gì, tôi sẽ có thể cho biết mật khẩu tôi đã đặt trên tài khoản.

Câu trả lời:


9

Ah, hóa ra đó cách chính xác để thay đổi mật khẩu của người dùng khi sử dụng sudo. Nếu bạn không sử dụng sudo, chỉ sau đó bạn mới cần cung cấp mật khẩu cũ của người dùng.

Vấn đề của tôi là có một ký tự '$' trong mật khẩu mà tôi đã không thoát. Do đó, mật khẩu đã bị cắt trước ký tự $.


Điều này có nghĩa là một lệnh thích hợp để thay đổi từ khóa thành từ $$ $$ trông giống như: sudo dscl. passwd / Người dùng / quản trị viênPa \ $ \ $ word Phải không?
Đánh dấu

1
Tôi chỉ trích dẫn đối số ( sudo dscl . passwd /Users/administrator "thePa$$word")
MaxGabriel

2
Nếu bạn đang làm điều này từ bảng điều khiển, đừng cung cấp mật khẩu. dsclsẽ nhắc nhở cho nó và do đó bạn sẽ không có nguy cơ để lại thông tin nhạy cảm trong lịch sử lệnh của mình.
Marcelo Cantos
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.