Автор ,это почитай для начала http://itshaman.ru/articles/14/password-grub и это http://sanmai.livejournal.com/774603.html
Спасибо, получилось по второй ссылке запаролить!
Правда я нифига не понял что там написано и как это получается, хотя оно и сработало.
Не понял например что за переменная "PBKDF2" и зачем она нужна, не понял так же зачем нужно добавлять в 05_password некоторые строчки, и
самое главное я не понял как таким методом создовать несколько паролей.
Ведь в итоге нужно зделать только:
Генерим хеш пароля командой:
grub-mkpasswd-pbkdf2
Далее вставляем в файл /boot/grub/grub.cfg строки:
set superusers="admin"
password_pbkdf2 admin НАШ ХЕШ ПАРОЛЯ
Всё.
Строка
password_pbkdf2 admin НАШ ХЕШ ПАРОЛЯ асоциирует пользователя admin с паролем зашифрованным в хеш.
Eстественно вместо строки "наш хеш пароля" вставляем то что нам выдала команда grub-mkpasswd-pbkdf2
Строка
set superusers="admin" говорит что суперадмином будет юзер admin и этот юзер он как бы root меню GRUB2, то есть он может делать всё что ему вздумается.
Если мы хотим запаролить конкретные строки меню, причём разные строки с разным паролем, тогда вписываем ещё парочку паролей в файл груб.цфг рядом с тем что было:
set superusers="admin"
password_pbkdf2 admin хеш пароля
password_pbkdf2 юзер2 хеш пароля
password_pbkdf2 юзер3 хеш пароля
Для того что бы нужная нам строка меню была запаролена добовляем в эту строку, после её названия, параметр --users после параметра следует пользователь которому разрешено загружать эту строку. Можно указать несколько пользователей через пробел.
Пример файла /boot/grub/rgub.cfg (только часть файла)set superusers="admin"
password_pbkdf2 admin grub.pbkdf2.sha512.10000.3F132380...ji3w
password_pbkdf2 boris grub.pbkdf2.sha512.10000.83B9A9FB0...fw4
password_pbkdf2 lena grub.pbkdf2.sha512.10000.D148Aili53D...s53
password_pbkdf2 olga grub.pbkdf2.sha512.10000.34427i3594...fw3
menuentry 'Ubuntu, с Linux 2.6.32-24-generic' --users boris lena --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,1)'
search --no-floppy --fs-uuid --set f7868ff2-49db-48ba-a08d-5710e31259fa
linux /vmlinuz-2.6.32-24-generic root=/dev/mapper/virt-root ro quiet splash
initrd /initrd.img-2.6.32-24-generic
}
menuentry 'Ubuntu, с Linux 2.6.32-24-generic (режим восстановления)' --users boris olga --class ubuntu --class gnu-linux --class gnu --class os {
recordfail
insmod ext2
set root='(hd0,1)'
search --no-floppy --fs-uuid --set f7868ff2-49db-48ba-a08d-5710e31259fa
echo 'Загружается Linux 2.6.32-24-generic ...'
linux /vmlinuz-2.6.32-24-generic root=/dev/mapper/virt-root ro single
echo 'Загружается начальный ramdisk ...'
initrd /initrd.img-2.6.32-24-generic
}
В этом примере обычный линух смогут загрузить boris и lena под своими паролями, а режим восстановления загрузят boris и olga.
Ни boris ни olga ни даже lena не смогут редактировать никакие пункты загрузки, это может делать только admin
Пользователь admin сможет делсть всё что захочет.
Если параметр --users не дописывать, то пункт загрузки загрузится без вопросов, но редактировать этот пункт загрузки всё равно сможет только admin.