Làm thế nào để thiết lập lại mật khẩu trên một fs được mã hóa?


8

Tôi đã có một máy tính xách tay mà tôi đã không sử dụng kể từ kỳ nghỉ hè năm ngoái: Tôi đã đặt Debian 7 lên nó và sử dụng tính năng của Debian để mã hóa toàn bộ đĩa, bên cạnh một bộ tải khởi động nhỏ (hoặc một phân vùng nhỏ) tôi đoán (không quá chắc chắn rằng mã hóa này cũng không phải là cách tìm ra).

Tôi làm biết mật khẩu của hệ thống tập tin mã hóa để hệ thống khởi động, nhưng tôi bị mắc kẹt đăng nhập nhanh chóng: Tôi đã quên mật khẩu của tôi (s).

Nhìn thấy tôi biết mật khẩu của hệ thống tập tin được mã hóa, tôi lấy nó Tôi có thể khởi động từ Live CD (hoặc thậm chí có thể từ đĩa CD cài đặt Debian?) Và bằng cách nào đó "gắn kết" phân vùng được mã hóa.

Nếu đó là trường hợp, ai đó có thể giải thích cho tôi làm thế nào để làm điều này? (biết rằng tôi chưa bao giờ gắn phân vùng / hệ thống tệp được mã hóa theo cách thủ công)


1
Nó sẽ không phải là vấn đề lớn đối với tôi để cài đặt lại toàn bộ hệ thống Debian (không có giá trị gì và tôi có thể cài đặt Debian) nhưng có vẻ hơi quá mức và hơn nữa, tôi có thể tìm hiểu điều gì đó trong quy trình bằng cách cài đặt hệ thống tệp được mã hóa và thay đổi mật khẩu ...
Cedric Martin

Câu trả lời:


15

Mã hóa toàn bộ đĩa thường được thực hiện bằng cách sử dụng dm-cryptmục tiêu Trình ánh xạ thiết bị, với LVM (Trình quản lý khối tin hợp lý) bên trong. Vì vậy, để thiết lập lại mật khẩu của bạn, bạn sẽ phải

  1. Mở khóa / mở container tiền điện tử; điều này được thực hiện bằng cách sử dụngcryptsetup
  2. Kích hoạt các khối hợp lý; vgchangeđược sử dụng cho việc này.

Thông thường bạn sẽ không cần phải quan tâm về điều này. Chỉ cần để initrdphân phối được cung cấp của bạn thực hiện công việc nhưng bảo nó không bắt đầu /sbin/initmà là một cái gì đó khác - một cái vỏ sẽ tốt. Chỉ cần nối init=/bin/shvào dòng lệnh của kernel trong bộ tải khởi động của bạn (với GRUB bạn có thể nhấn Evới mục khởi động thích hợp được chọn để chỉnh sửa mục nhập).

Sau đó, kernel của bạn sẽ khởi động bình thường, khởi động vào initrdđó sẽ yêu cầu cụm mật khẩu của bạn và thiết lập hệ thống tệp của bạn, nhưng thay vì khởi động hệ thống, hãy thả bạn vào một cái vỏ. Ở đó bạn sẽ phải

  1. /đọc lại ghi-viết:mount -o rw,remount /
  2. đặt lại mật khẩu của bạn bằng cách sử dụng passwd <user>(vì rootbạn sẽ không được nhắc về mật khẩu cũ)
  3. nhắc lại chỉ /đọc: mount -o ro,remount /(bỏ qua điều này có thể gây nhầm lẫn các tập lệnh init của bạn)
  4. Bắt đầu init thường xuyên với exec /sbin/init(hoặc đơn giản reboot -f).

Nếu điều này không hiệu quả, bạn sẽ phải thực hiện phương pháp với nỗ lực cao hơn và thực hiện nó từ "bên ngoài", hay còn gọi là khởi động Live CD. Thông thường, điều này nên có thể bằng cách sử dụng CD cài đặt Debian - các công cụ nên được cài đặt, vì trình cài đặt bằng cách nào đó phải thiết lập mã hóa sử dụng cùng một lược đồ:

  1. Khởi động CD trực tiếp

  2. Mở phân vùng được mã hóa bằng cách phát hành

    # cryptsetup luksOpen /dev/<partition> some_name
    

    nơi <partition>nên là tên phân vùng được mã hóa của bạn ( sda2, có lẽ). some_namechỉ là một số tên. Điều này sẽ nhắc bạn cho cụm mật khẩu mã hóa của đĩa và tạo một thiết bị khối được gọi /dev/mapper/some_name.

  3. Kích hoạt các khối hợp lý. Điều này thường làm việc bằng cách phát hành

    # vgscan
    # vgchange -ay
    

    Điều này sẽ tạo các tệp thiết bị khối cho mọi khối lượng logic được tìm thấy trong LVM trong /dev/mapper/.

  4. Gắn kết âm lượng chứa /hệ thống tệp của bạn :

    # mount /dev/mapper/<vgname>-<lvname> /mnt
    

    trong đó <vgname><lvname>là tên của nhóm âm lượng và âm lượng hợp lý. Điều này phụ thuộc vào cách phân phối thiết lập nó, nhưng chỉ cần nhìn vào /dev/mapper/, thông thường tên là tự giải thích.

  5. Thay đổi mật khẩu của bạn cho passwd <user>phù hợp.


Điều này giải thích cách thay đổi mật khẩu của hệ thống tập tin. Nếu bạn đọc câu hỏi cẩn thận hơn, anh ta biết mật khẩu đó. Anh ta quên mật khẩu người dùng (đăng nhập) của mình.
cjm

Ồ, xin lỗi, tôi đã bỏ lỡ điều đó - muộn rồi đây. ;) Đã sửa.
Andreas Wiese

@AndreasWiese: +1, cảm ơn ... Thật vậy, đó là mật khẩu người dùng tôi cần thay đổi! Tôi sẽ thử những gì bạn đề xuất càng sớm càng tốt: Tôi thực sự thích cách tiếp cận mà không cần đĩa CD trực tiếp.
Cedric Martin

@AndreasWiese: hoạt động hoàn hảo. Lúc đầu, tôi không chắc chắn về dòng nào đáng lẽ tôi phải thêm "init = / bin / sh" bên trong Grub nhưng mọi thứ đã diễn ra suôn sẻ. Tôi chỉ đơn giản nhận lại ký tự (điều này hơi đau) theo ký tự một mục nhập / etc / passwd / từ một hệ thống khác, cho người dùng root. Mọi thứ lại suôn sẻ. Cảm ơn một lần nữa.
Cedric Martin

Meh, tôi nghĩ rằng một khi bạn đã nhắc lại /r / w, bạn có thể thực hiện một cách đơn giản passwd rootrootkhông được hỏi mật khẩu cũ của anh ấy / cô ấy. Xin lỗi vì điều đó.
Andreas Wiese
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.