Mật khẩu mặc định gốc Raspbian


16

Tôi đã cố gắng sửa đổi tệp sudoers trên Raspbian /etc/sudoersvà có vẻ như tôi đã mắc lỗi, vì tôi không thể sửa đổi lại. Tôi cũng không thể gọi bất kỳ lệnh nào yêu cầu sudoquyền. Vì vậy, tôi đã thực hiện một số nghiên cứu và tôi tìm thấy một giải pháp ở đây .

Giải pháp sử dụng lệnh *pkexec visudo*, nhưng khi tôi thử nó sẽ cho tôi một thông báo lỗi : Authentication is needed to run '/usr/sbin/visudo' as the super user. Ngoài ra còn có một danh sách thả xuống, nó chỉ chứa từ 'root' (và không thể thay đổi). Cũng như Danh tính có tên và một hộp văn bản trống có tên Mật khẩu.

Vì vậy, câu hỏi là làm thế nào tôi có thể biết mật khẩu root? Tôi đã thử 'root', 'mâm xôi', 'admin', v.v. nhưng không có gì hiệu quả.

Theo các câu trả lời, có vẻ như một chút không thể đăng nhập bằng root, sau đó sử dụng pkexec visudo sẽ không giải quyết được vấn đề của tôi! và theo câu trả lời, cách duy nhất của tôi là sử dụng máy tính linux để xem nội dung sd của tôi và sửa đổi tệp sudoers. Tôi đã cài đặt Debian trên máy ảo của mình và cuối cùng tôi có thể truy cập tệp sudoers nhưng tôi không có quyền truy cập vào nó! nó nói rằng tôi không phải là chủ sở hữu của tập tin! Tôi hiểu vấn đề bảo mật này, nhưng vì nhiều người trong quá trình tìm kiếm trực tuyến của tôi đề nghị sử dụng máy tính linux để sửa đổi tệp sudoers, nên có một cách để có quyền truy cập vào nó. Có ai biết cách này không?

Câu trả lời:


14

Theo mặc định, Raspbian được cấu hình để tài khoản root không thể đăng nhập bằng mật khẩu. Điều này được thực hiện bằng cách bắt đầu với một mục trong /etc/passwordđó bắt đầu:

root:x:0:0:

Các trường được phân tách bằng dấu hai chấm và được giải thích trong man 5 passwd(lưu ý 5, vì man passwdsẽ cung cấp cho bạn trang man cho lệnh passwd; phần 5 dành cho các tệp cấu hình và trong trường hợp này chúng có cùng tên). Ở đây, cái đầu tiên là tên ( root), thứ ba và thứ tư là uid và gid số (cả hai 0), và cái thứ hai là cho mật khẩu. Đối với hầu hết các mục này sẽ là x, cho biết mật khẩu thực tế nằm trong một tệp khác , /etc/shadow.

Lưu ý rằng "mật khẩu thực tế" không thực sự được lưu trữ ở bất cứ đâu. Những gì được lưu trữ trong đó shadowlà hàm băm một chiều của mật khẩu thực tế. Băm một chiều là kết quả của một quá trình sẽ luôn tạo ra cùng một thứ (cho phép mật khẩu của bạn được xác minh), nhưng không thể đảo ngược. Nói cách khác, nếu ai đó có được bàn tay của họ shadow, không có cách nào để suy ra mật khẩu từ hàm băm. Tuy nhiên, nếu họ có thể sửa đổi shadow , rõ ràng họ có thể vô hiệu hóa hoặc thay đổi những gì sẽ hoạt động như một mật khẩu. Nhưng họ sẽ không bao giờ có thể khám phá mật khẩu của bạn. Đây là lý do tại sao thậm chí rootkhông thể làm điều đó (mặc dù root luôn có thể thay đổi chúng thành một thứ khác mà không cần bản gốc).

Trong trường hợp của root, mục nhập shadowbắt đầu như thế này, giống như đối với hầu hết các tài khoản hệ thống khác:

root:*:

Điều này *cho thấy hiện tại không có mật khẩu có thể được sử dụng cho tài khoản này.

Người sử dụng root có thể thay đổi điều này, tuy nhiên, bằng cách sử dụng passwdlệnh để thiết lập một mật khẩu mới, sẽ thay thế *với giá trị băm đề cập trước đó (những luôn luôn bắt đầu $n$ở đâu nlà một số giá trị ngẫu nhiên mà được sử dụng như là "muối" cho băm, nhưng bạn không Không cần phải hiểu điều đó).

Dù sao, khi tôi thiết lập một thẻ từ một hình ảnh mới, điều đầu tiên tôi làm là đi vào /etc/passwdvà xóa xmục nhập gốc để bây giờ bắt đầu:

root::0:0

Thông báo bây giờ không có trường thứ hai. Điều này có nghĩa là không có mật khẩu và tất cả những gì bạn phải làm là gõ rootvào dấu nhắc đăng nhập và bạn đã đăng nhập với tư cách root. Sau đó bạn có thể sử dụng passwdđể thiết lập một.

Vì vậy, bạn có hai lựa chọn ở đây nhưng cả hai đều yêu cầu bạn lấy thẻ ra khỏi pi và truy cập phân vùng thứ hai từ một hệ thống khác (có thể đọc / ghi phân vùng ext4).

  1. Khôi phục sudoers. Nếu bạn có một hình ảnh tham khảo thì điều này thật dễ dàng, bạn có thể đặt nó trở lại như cũ bằng cách thay thế nó. Mặt khác, nó là tùy chọn phức tạp hơn vì bạn phải biết những gì bạn đang làm (và hồ sơ theo dõi của bạn sudoerskhông tốt lắm ...).

  2. Chỉnh sửa /etc/passwdvà xóa nó xnhư được mô tả ở trên, đặt lại thẻ, đăng nhập như root, tạo mật khẩu. Tất nhiên, bạn vẫn sẽ cần sửa sudoers, nhưng bản dùng thử và lỗi sẽ được thực hiện dễ dàng hơn vì nếu bạn thực sự root, bạn sẽ luôn có thể truy cập nó.

Nếu bạn không có một hệ thống có thể truy cập các hệ thống tập tin ext4 ("CD trực tiếp" của Debian là một lựa chọn tốt ở đây), thì bạn đã bị mắc kẹt. Bạn sẽ phải làm lại thẻ và bắt đầu lại.


Tôi đã cài đặt debian trong VM Ware và tôi đã chèn thẻ của mình nhưng nó chỉ xem các tệp được hiển thị như thể tôi đang sử dụng hệ thống windows. Ý tôi là tôi không thể xem / sửa đổi tập tin sudoers. Tôi có nên sử dụng một số lệnh để xem chúng trong debian?
Dani

Tôi không phải là người dùng VM ware, vì vậy tôi không thể giúp với chi tiết cụ thể về điều đó, nhưng có lẽ bạn có quyền truy cập root trong VM, phải không? Nếu vậy, và bạn có thể truy cập thẻ SD từ VM, bạn sẽ có thể gắn kết phân vùng thứ hai và nhìn vào /etc. Nếu sudoerskhông có bạn có thể đã vô tình xóa nó, trong trường hợp đó bạn sẽ phải thay thế nó từ một hình ảnh debian mới (bạn không phải tạo một thẻ mới, bạn chỉ cần tệp hình ảnh, xem tại đây ) .. .
goldilocks

... Bạn cũng có thể truy cập etc/passwdvào thẻ và thay đổi thông qua tài khoản root Debian VM.
goldilocks

(bạn sẽ có thể gắn kết phân vùng thứ hai và tìm trong / etc) Tôi nên sử dụng các lệnh nào để gắn kết phân vùng thứ hai?
Dani

Từ một máy ảo VMware? Tôi không biết. Tôi sử dụng hộp ảo, nhưng tôi chưa bao giờ phải thiết lập quyền truy cập vào phần cứng hoặc gắn kết trên hệ thống máy chủ ngoài mạng (nếu tôi phải truyền dữ liệu, tôi chỉ cần thực hiện qua mạng). Tôi đoán nó có thể và đơn giản, nhưng hệ thống máy chủ của tôi cũng là linux. Tôi cũng cho rằng có một số cách sử dụng VMware với Windows / Mac / Dù là máy chủ nào để cung cấp cho VM quyền truy cập vào thiết bị SD được kết nối với phần cứng máy chủ ... ngay cả khi chính máy chủ không thể đọc phân vùng, nó vẫn có thể truy cập vào thẻ thực tế, do đó VM cũng có thể (và sau đó HĐH của VM có thể đọc được).
goldilocks

4

Raspbian KHÔNG có rootmật khẩu. Nó khác với Ubuntu ở khía cạnh đó. Bạn có thể tạo rootmật khẩu, nhưng AFAIK yêu cầu sudo.

Đặt cược tốt nhất là chỉnh sửa các tệp bằng cách gắn Thẻ SD trên máy Linux.

Điều này có thể được thực hiện trên Pi nếu 1. bạn có đầu đọc Thẻ SD 2. Bạn sử dụng HĐH tốt trên một SD khác để khởi động Pi.


nhưng tại sao raspbian hỏi tôi mật khẩu? và tại sao nó không chấp nhận mật khẩu trống?
Dani

Tài khoản root có thể có mật khẩu "không hợp lệ" hoặc "không thể" - đây là một mẹo phổ biến để khóa tài khoản root theo cách này.
flakeshake

4

Để đặt mật khẩu gốc:

  • Khởi động và đăng nhập bình thường.
  • Chạy:sudo passwd root
  • Nhập mật khẩu mới cho root như được nhắc

Nguồn: https://www.raspberrypi.org/forums/viewtopic.php?f=91&t=5056&start=25


1
Vấn đề là tôi không thể sử dụng lệnh sudo vì tôi đã mắc lỗi trong khi sửa đổi tệp sudoers. Vấn đề đã được giải quyết bằng cách cài đặt hệ điều hành linux debian trên máy tính của tôi, chèn thẻ sd và thay đổi tệp sudoers về trạng thái ban đầu ...
Dani

-1

Nếu bạn tải xuống Puppy Linux cho Raspberry Pi từ http://puppylinux.org/main/Doad%20Latest%20Release.htmlm#quirky và cài đặt nó trên ngón tay cái thì bạn sẽ có thể khởi động máy tính của mình từ đó và vì Puppy luôn luôn có thể chạy bằng root mà không có mật khẩu, bạn có thể thay đổi bất cứ thứ gì trên máy tính mà bạn muốn. Thực hiện các sửa đổi của bạn, sau đó khởi động lại máy tính mà không có phương tiện khởi động Puppy. Bây giờ máy tính sẽ khởi động vào hệ thống đã thay đổi của bạn mà không cần Puppy.

Tôi là một người mới với Raspberry Pi, vì vậy tôi không biết cách khởi động nó từ một thiết bị khác (ngón tay cái), nhưng có lẽ có một cách. Có lẽ hệ thống Noobs bằng cách giữ phím shift trong khi khởi động.

Tôi sẽ thêm một cách thay thế đơn giản để khởi động từ ổ đĩa khác: Raspberry Pi có thể được khởi động từ cài đặt Puppy trên thẻ SD (hoặc thẻ nhớ microSD) và phương tiện cài đặt ban đầu có thể được đọc và thay đổi từ đầu đọc thẻ được cắm vào cùng Raspberry Pi.


2
Tôi thấy việc hạ cấp gây phiền nhiễu, vì vậy tôi sẽ cố gắng điền vào phần hạ cấp ẩn danh. Một câu trả lời có "Tôi không biết" có lẽ thích hợp hơn như một nhận xét. Thật không may, điều đó đòi hỏi danh tiếng là 50. Xin hãy tiếp tục với những nỗ lực của bạn để giúp đỡ. nó là giá của sự cố gắng. : D
OyaMist
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.