{"id":706,"date":"2012-09-05T12:52:36","date_gmt":"2012-09-05T11:52:36","guid":{"rendered":"http:\/\/www.javiercarrasco.es\/?p=706"},"modified":"2012-09-05T12:52:36","modified_gmt":"2012-09-05T11:52:36","slug":"anadir-password-a-entradas-del-grub2","status":"publish","type":"post","link":"https:\/\/www.javiercarrasco.es\/?p=706","title":{"rendered":"A\u00f1adir password a entradas del GRUB2"},"content":{"rendered":"<p>La posibilidad de a\u00f1adir <em>password<\/em> es algo bastante interesante cuando los equipos pueden manipularlos personas inexpertas, sobretodo si una de estas entradas se utiliza para tareas de mantenimiento de equipos. Bueno, aqu\u00ed os dejo como a\u00f1adir <em>password<\/em> a una o varias entradas del GRUB2.<\/p>\n<p>Para crear un <em>password<\/em> encriptado nos abrimos un terminal y ejecutamos el siguiente comando.<\/p>\n<pre>$ sudo grub-mkpasswd-pbkdf2<\/pre>\n<p>Tras introducir la contrase\u00f1a de nuestro administrador nos pedir\u00e1 el <em>password<\/em> que queremos encriptar, lo introducimos por dos veces y copiamos lo que aparece a continuaci\u00f3n de <em>Your PBKDF2 is&#8230;<\/em><\/p>\n<pre>Enter password:\nReenter password:\nYour PBKDF2 is grub.pbkdf2.sha512.10000.0FB55C28CB1B930BDB81162F5CE2D9EAC355E7D25B9966817D63019A94C39822E08399CC05552BD94A2C64673EDF8576C75D222BF0B534B6C35B5476FFC218EA.DA3EC0DE29F709CFE48AFBCC31F97B97F4AE5F6CEAD0F41A55A98414BCC1359787665A3B016880DCE9EC0D729129318E83D971559ECC958209FFF588C75BB363<\/pre>\n<p>Una vez que ya tenemos el <em>password<\/em> encriptado editamos el fichero\u00a0<code>\/etc\/grub.d\/00_header<\/code> con nuestro editor favorito y siempre con permisos de <em>root<\/em>.<\/p>\n<pre>$ sudo gedit \/etc\/grub.d\/00_header<\/pre>\n<p>Al final del fichero a\u00f1adimos las siguientes l\u00edneas para indicar que usuario ser\u00e1 el administrador del GRUB2 y su <em>password<\/em>.<\/p>\n<pre>cat &lt;&lt;EOF\nset superusers=\"admin\"\npassword_pbkdf2 <strong>admin<\/strong> grub.pbkdf2.sha512.10000.4F325005AB79FE86EC1F0FC1111F37D811ABCD488F98D7A4794B9B02493FEBD769507783C0EDAD06AB936751186CC8F1332D5E00D475763323EAFEDCC29FA358.81F54B1738321DCE667E2F0F459518918AE020E9FB929575BAC452E0BB3DCBE6BCE388D2018A8B2CFE3AE9424D41509BBDC40C449686D62464128F57020A6418\nEOF<\/pre>\n<p>Cada l\u00ednea <strong><em>password_pbkdf2 admin password<\/em><\/strong> representar\u00eda una usuario, por tanto, se pueden a\u00f1adir tantos usuarios como queramos para nuestro GRUB2.<\/p>\n<p>Hecho esto guardamos y vamos con el siguiente, editamos <code>\/etc\/grub.d\/40_custom<\/code> y establecemos el usuario que puede acceder a las entradas que queremos proteger. En mi caso protejo una entrada a un submen\u00fa, pero se puede hacer con entradas individuales, s\u00f3lo tenemos que a\u00f1adir las l\u00edneas <code>--users usuario<\/code> en las entradas que queramos.<\/p>\n<pre>submenu \"Mantenimiento\" <strong>--users admin<\/strong>{\n  menuentry \"SystemRescueCd x86\" {\n    set root=(hd0,2)\n    set isofile=\"\/boot\/systemrescuecd-x86-3.0.0.iso\"\n    loopback loop (hd0,2)$isofile\n    linux (loop)\/isolinux\/rescue32 setkmap=es isoloop=$isofile\n    initrd (loop)\/isolinux\/initram.igz\n  }\n  menuentry \"UDP Cast\" {\n    set root=(hd0,2)\n    set isofile=\"\/boot\/udpcd.iso\"\n    loopback loop (hd0,2)$isofile\n    linux (loop)\/linux isoloop=$isofile\n    initrd (loop)\/initrd\n  }\n}<\/pre>\n<p>Llegados a este punto ya s\u00f3lo nos queda actualizar el GRUB2 y reiniciar para comprobar. Esta contrase\u00f1a tambi\u00e9n se aplicar\u00e1 para las opciones del GRUB2 al pulsar la tecla \u00abe\u00bb.<\/p>\n<pre>$ sudo update-grub2<\/pre>\n<p>Espero que os haya servido de utilidad.<\/p>\n<p>Au!!<\/p>\n<p><strong>A\u00f1adido el 24\/06\/2013<\/strong><\/p>\n<p>Debemos tener en cuenta la versi\u00f3n 2.00 de GRUB2, al a\u00f1adir estos pasos, el usuario y contrase\u00f1a se a\u00f1aden a todas las entradas del GRUB, en este caso, deberemos a\u00f1adir la opci\u00f3n <code>--unrestricted<\/code> en aquellas entradas en las que no queremos usuario y contrase\u00f1a.<\/p>\n<p>Para quitar la protecci\u00f3n en la entrada principal del sistema, editaremos el fichero <code>\/etc\/grub.d\/10_linux<\/code>.<\/p>\n<pre>$ sudo gedit \/etc\/grub.d\/10_linux<\/pre>\n<p>Y buscamos la siguiente l\u00ednea, la 121 en el momento en cuesti\u00f3n.<\/p>\n<pre>echo \"menuentry '$(echo \"$os\" | grub_quote)' ${CLASS} \\$menuentry_id_option 'gnulinux-simple-$boot_device_id' {\" | sed \"s\/^\/$submenu_indentation\/\"<\/pre>\n<p>Y deberemos a\u00f1adir la opci\u00f3n mencionda, dej\u00e1ndola as\u00ed.<\/p>\n<pre>echo \"menuentry '$(echo \"$os\" | grub_quote)' <strong>--unrestricted<\/strong> ${CLASS} \\$menuentry_id_option 'gnulinux-simple-$boot_device_id' {\" | sed \"s\/^\/$submenu_indentation\/\"<\/pre>\n<p>De esta forma nos aseguramos que cada vez que actualicemos el GRUB seguir\u00e1 funcionando, si a\u00f1adimos esta opci\u00f3n en <code>\/boot\/grub\/grub.cfg<\/code>, cada vez que se actualice el GRUB perderemos la opci\u00f3n.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>La posibilidad de a\u00f1adir password es algo bastante interesante cuando los equipos pueden manipularlos personas inexpertas, sobretodo si una de estas entradas se utiliza para tareas de mantenimiento de equipos. Bueno, aqu\u00ed os dejo como a\u00f1adir password a una o varias entradas del GRUB2. Para crear un password encriptado nos abrimos un terminal y ejecutamos [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[59,60,122,126],"class_list":["post-706","post","type-post","status-publish","format-standard","hentry","category-cuaderno-linux","tag-grub-2-00","tag-grub2","tag-systemrescuecd","tag-udpcast"],"_links":{"self":[{"href":"https:\/\/www.javiercarrasco.es\/index.php?rest_route=\/wp\/v2\/posts\/706","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.javiercarrasco.es\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.javiercarrasco.es\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.javiercarrasco.es\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.javiercarrasco.es\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=706"}],"version-history":[{"count":0,"href":"https:\/\/www.javiercarrasco.es\/index.php?rest_route=\/wp\/v2\/posts\/706\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.javiercarrasco.es\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=706"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.javiercarrasco.es\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=706"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.javiercarrasco.es\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=706"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}