无忧启动论坛

标题: grub4dos启动时不想让别人看到主清单内容,只有输入正确密码才可以看到。 [打印本页]

作者: 895300863    时间: 2013-5-22 19:44
标题: grub4dos启动时不想让别人看到主清单内容,只有输入正确密码才可以看到。
大家好:
通过U盘grub4dos,不想让别人看到menu.lst显示的清单内容,必须在输入正确的密码之后才会显示主清单内容。
也就是说,一直提示输入正确的密码,否则只会停留到要求输入密码状态。
grub4dos有没有办法在menu.lst中写点儿什么实现呢?

目前使用加入password --密码
这种方式,引导后是会显示出主清单内容的,而且运行默认选项报错后还是会返回到显示主清单状态。
作者: fhabh    时间: 2013-5-22 21:51
好像没有这个命令
作者: mygamexxx    时间: 2013-5-23 00:26
贴出菜单看看!!!是否正确使用了
作者: sratlf    时间: 2013-5-23 03:24
本帖最后由 sratlf 于 2013-5-23 03:26 编辑

可以用下面的菜单  注意不能用在内置菜单中  用configfile命令调用本菜单

注意第三行 command 后面需要有一个空格  两个Password  一个是提示信息  另一个是密码  可以自行修改
  1. !BAT
  2. goto :start
  3. call Fn.0 0 0x8217 | command

  4. #普通菜单开始
  5. default 0
  6. debug off

  7. title test
  8. halt
  9. #普通菜单结束

  10. :start
  11. clear
  12. set input=
  13. set /p input=Password:  || goto :start
  14. if "%input%"=="Password" || goto :start
  15. exit
复制代码

作者: 895300863    时间: 2013-5-23 10:13
sratlf 发表于 2013-5-23 03:24
可以用下面的菜单  注意不能用在内置菜单中  用configfile命令调用本菜单

注意第三行 command 后面需要 ...

哎呀,你怎么能想到这样写呢?谢谢。
作者: 895300863    时间: 2013-5-23 10:15
sratlf 发表于 2013-5-23 03:24
可以用下面的菜单  注意不能用在内置菜单中  用configfile命令调用本菜单

注意第三行 command 后面需要 ...

哎呀,你怎么能想到这样写呢?谢谢。
作者: 895300863    时间: 2013-5-23 20:18
sratlf 发表于 2013-5-23 03:24
可以用下面的菜单  注意不能用在内置菜单中  用configfile命令调用本菜单

注意第三行 command 后面需要 ...

pxe detect
configfile
!BAT
goto :start
call Fn.0 0 0x8217 | command
default 0
debug off
title test
        halt
title Boot Ubuntu
        find --set-root /Ubuntu/vmlinuz
        kernel /Ubuntu/vmlinuz boot=casper iso-scan/filename=/Ubuntu/ubuntu.iso quiet splash rw persistent debian-installer/locale=zh_CN.UTF-8
        console-
        setup/layoutcode=cn console-setup/variantcode= --
        initrd /Ubuntu/initrd.lz
        boot
title commandline
        commandline
title reboot
        reboot
title halt
        halt
:start
clear
set input=
set /p input=Password: 1**6 || goto :start
if "%input%"=="Password" || goto :start
exit

这样使用对吗?
我同时也在尝试别的方法,效果也只能达到我要想的一半吧。
论坛能即是聊天吗,如果能像QQ那样即时聊天,我估计我能说清楚我现在尝试遇到的效果和问题了,

作者: sratlf    时间: 2013-5-24 09:41
895300863 发表于 2013-5-23 20:18
pxe detect
configfile
!BAT
  1. !BAT
  2. goto :start
  3. call Fn.0 0 0x8217 | command
  4. pxe detect
  5. default 0
  6. debug off

  7. title Boot Ubuntu
  8.         find --set-root /Ubuntu/vmlinuz
  9.         kernel /Ubuntu/vmlinuz boot=casper iso-scan/filename=/Ubuntu/ubuntu.iso quiet splash rw persistent debian-installer/locale=zh_CN.UTF-8
  10.         console-
  11.         setup/layoutcode=cn console-setup/variantcode= --
  12.         initrd /Ubuntu/initrd.lz
  13.         boot
  14. title commandline
  15.         commandline
  16. title reboot
  17.         reboot
  18. title halt
  19.         halt

  20. :start
  21. clear
  22. set input=
  23. set /p input=Password:  || goto :start
  24. if "%input%"=="1**6" || goto :start
  25. exit
复制代码
差不多应该是这样
作者: 2012hongrui    时间: 2013-5-24 10:07
本帖最后由 2012hongrui 于 2013-5-24 10:20 编辑

其实不用批处理也可以做到,而且还是md5密码的:
1.grldr内置菜单如下:(这里的md5密码是123,可以自行修改,只是作个示例)
clear
hiddenmenu --chkpass=0x2200
timeout 0
debug off
password --md5 $1$3$YMl9qjZaRG3CBSkEH3ZHR0
title
password --md5 $1$3$YMl9qjZaRG3CBSkEH3ZHR0 && find --set-root --devices=h /boot/grub/menu.lst && configfile /boot/grub/menu.lst ! configfile (md)4+8

2.menu.lst的菜单内容如下:
hiddenmenu --chkpass
default 0
timeout 3
color white/blue blue/yellow light-red/blue 10
title 1 BOOT RAMOS WINXP
debug off
clear
echo
echo Please wait for a little time...
echo
find --set-root --devices=h /RAMOS/WINXP.VHD
map --mem /RAMOS/WINXP.VHD (hd0)
map --hook
rootnoverify (hd0,0)
chainloader (hd0,0)/ntldr

3.禁用狂按C键进入命令行
用winhex打开grldr,在20005处00改为04

这样做只要grub4dos获得控制权,那可是非要输入这个123的密码才能进行操作,唯一的缺点是输入正确密码进入menu.lst菜单后等待3秒钟进入默认的第一个菜单启动项,在这3秒钟按ESC键才能看到菜单。

作者: 895300863    时间: 2013-5-24 10:19
2012hongrui 发表于 2013-5-24 10:07
123

什么?
作者: 895300863    时间: 2013-5-24 10:39
sratlf 发表于 2013-5-24 09:41
差不多应该是这样

按照这样的代码,原样复制入,经过反复实验,效果和咱相要的还是差一些,请问哪里需要修改?
作者: 895300863    时间: 2013-5-24 10:51
2012hongrui 发表于 2013-5-24 10:07
其实不用批处理也可以做到,而且还是md5密码的:
1.grldr内置菜单如下:(这里的md5密码是123,可以自行修 ...

琢磨琢磨,实验实验,看看效果,谢谢。
作者: 895300863    时间: 2013-5-24 10:52
sratlf 发表于 2013-5-24 09:41
差不多应该是这样

谢谢,我再多琢磨琢磨,再实验。
作者: Cracada    时间: 2013-5-24 11:34
hiddenmenu命令隐藏整个菜单,指定按键激活,检测密码

作者: 895300863    时间: 2013-5-24 11:57
2012hongrui 发表于 2013-5-24 10:07
其实不用批处理也可以做到,而且还是md5密码的:
1.grldr内置菜单如下:(这里的md5密码是123,可以自行修 ...

用winhex打开grldr,在20005处00改为04

为什么找不到20005这里呢
作者: 2012hongrui    时间: 2013-5-24 17:53
895300863 发表于 2013-5-24 11:57
用winhex打开grldr,在20005处00改为04

为什么找不到20005这里呢

禁用C键

禁用C键.JPG (22.94 KB, 下载次数: 33)

禁用C键.JPG

作者: Cracada    时间: 2013-5-24 19:00
试验了一下,关键还是在于禁止c啊,学习了
作者: 895300863    时间: 2013-5-25 10:29
Cracada 发表于 2013-5-24 11:34
hiddenmenu命令隐藏整个菜单,指定按键激活,检测密码

谢谢,试一试
作者: 895300863    时间: 2013-5-25 10:30
2012hongrui 发表于 2013-5-24 17:53
禁用C键

谢谢,找一找这一项。
作者: 895300863    时间: 2013-5-25 16:14
sratlf 发表于 2013-5-24 09:41
差不多应该是这样

呀!这两种方法都了好多次,效果还是没有达到,这是什么原因呢?
作者: 895300863    时间: 2013-5-25 16:15
2012hongrui 发表于 2013-5-24 10:07
其实不用批处理也可以做到,而且还是md5密码的:
1.grldr内置菜单如下:(这里的md5密码是123,可以自行修 ...

呀!这两种方法都了好多次,效果还是没有达到,这是什么原因呢?
作者: 895300863    时间: 2013-5-25 16:25
sratlf 发表于 2013-5-23 03:24
可以用下面的菜单  注意不能用在内置菜单中  用configfile命令调用本菜单

注意第三行 command 后面需要 ...

请问

如果输入的密码错误则反回到继续要求输入密码的选项
这句话无限循环

如果输入的密码正确则显示主菜单

这两句话怎么写成计算机语句呢?
作者: 895300863    时间: 2013-5-27 15:37
sratlf 发表于 2013-5-23 03:24
可以用下面的菜单  注意不能用在内置菜单中  用configfile命令调用本菜单

注意第三行 command 后面需要 ...


0                grub4dos能不能一启动就要求输入正确的密码?如果输入正确才能显示其它内容,否则一直要求输入正确密码,而不显示其他任何内容?!!!
作者: 895300863    时间: 2013-5-27 15:37
fhabh 发表于 2013-5-22 21:51
好像没有这个命令


0                grub4dos能不能一启动就要求输入正确的密码?如果输入正确才能显示其它内容,否则一直要求输入正确密码,而不显示其他任何内容?!!!
作者: 895300863    时间: 2013-5-27 15:38
mygamexxx 发表于 2013-5-23 00:26
贴出菜单看看!!!是否正确使用了


0                grub4dos能不能一启动就要求输入正确的密码?如果输入正确才能显示其它内容,否则一直要求输入正确密码,而不显示其他任何内容?!!!
作者: 895300863    时间: 2013-5-27 15:39
2012hongrui 发表于 2013-5-24 10:07
其实不用批处理也可以做到,而且还是md5密码的:
1.grldr内置菜单如下:(这里的md5密码是123,可以自行修 ...


0                grub4dos能不能一启动就要求输入正确的密码?如果输入正确才能显示其它内容,否则一直要求输入正确密码,而不显示其他任何内容?!!!
作者: feifanll    时间: 2013-5-27 21:01
我觉得大家总要把问题复杂化,看看下面的符合你们要求不:
--------grldr内置------------
default 0
timeout 0
title load.menu
fallback 0
clear
password --md5 ...
configfile  /menu.lst
----------完------------
作者: sratlf    时间: 2013-5-27 22:08
提供个现成的grldr好了  是0.45c 05-21版的  启动后密码是Password  密码输入正确才加载内置菜单

GRLDR.zip

144.26 KB, 下载次数: 54, 下载积分: 无忧币 -2


作者: 2012hongrui    时间: 2013-5-27 22:53
sratlf 发表于 2013-5-27 22:08
提供个现成的grldr好了  是0.45c 05-21版的  启动后密码是Password  密码输入正确才加载内置菜单

夜大真是高,方法不错,只是修改成另一个密码稍麻烦点.看了一下内容,其实和夜大以前的也差不多,夜大的菜单内容为
!BAT
goto :start
calc *0x307FFC-0x110000 > nul && set pre_menu=(md)4+8 ! set pre_menu=(md)0x880+0x200
command %pre_menu%

#普通菜单开始
pxe detect
hiddenmenu
configfile
default 0
timeout 0

title find /menu.lst, /boot/grub/menu.lst, /grub/menu.lst
        errorcheck off
        configfile /boot/grub/menu.lst
        configfile /grub/menu.lst
        if "%@root%"=="(ud)" && calc *0x82A0=*0x82b9&0xff
        if "%@root:~1,1%"=="f" && find --set-root --devices=f /menu.lst && configfile /menu.lst
        find --set-root --ignore-floppies --ignore-cd /menu.lst && configfile /menu.lst
        find --set-root --ignore-floppies --ignore-cd /boot/grub/menu.lst && configfile /boot/grub/menu.lst
        find --set-root --ignore-floppies --ignore-cd /grub/menu.lst && configfile /grub/menu.lst
        errorcheck on
        commandline

title commandline
        commandline

title reboot
        reboot

title halt
        halt#普通菜单结束

:start
clear
set input=
set /p input=Password:  || goto :start
if "%input%"=="Password" || goto :start
exit
这个方法真的不错,唯一的遗憾就是输入密码时是明码。
作者: Cracada    时间: 2013-5-27 22:56
如果不能禁止C/E以避免启动时狂按C/E进入命令行的话,仅仅靠菜单内的语句判断应该是不行的
作者: songhangzhou    时间: 2013-5-28 01:06
整体加密后,再添加关键的四个字母:lock

这样就锁死了菜单。。。
作者: jh1688    时间: 2013-5-28 08:35
对菜鸟,什么都是天书,加不加密没有什么关系;
对高手,什么都同虚设,再怎么加密也没有什么用;


作者: 895300863    时间: 2013-5-28 16:57
feifanll 发表于 2013-5-27 21:01
我觉得大家总要把问题复杂化,看看下面的符合你们要求不:
--------grldr内置------------
default 0

感谢,学习中,实践中。
作者: 895300863    时间: 2013-5-28 16:58
sratlf 发表于 2013-5-27 22:08
提供个现成的grldr好了  是0.45c 05-21版的  启动后密码是Password  密码输入正确才加载内置菜单

感谢,学习中,实践中。
作者: 895300863    时间: 2013-5-28 17:01
2012hongrui 发表于 2013-5-27 22:53
夜大真是高,方法不错,只是修改成另一个密码稍麻烦点.看了一下内容,其实和夜大以前的也差不多,夜大的菜 ...

感谢,学习中,实践中。
如果使用密文方式,需要把set /p命令换成password命令,是不是这样子呢?
password md5 ***************** || goto :start
作者: 895300863    时间: 2013-5-28 17:03
Cracada 发表于 2013-5-27 22:56
如果不能禁止C/E以避免启动时狂按C/E进入命令行的话,仅仅靠菜单内的语句判断应该是不行的

感谢,学习中,实践中。
前面有位朋友使用winhex改变的方式能不能解决这方面问题呢?
作者: 895300863    时间: 2013-5-28 18:33
feifanll 发表于 2013-5-27 21:01
我觉得大家总要把问题复杂化,看看下面的符合你们要求不:
--------grldr内置------------
default 0

configfile /grldr 管用吗?
作者: 895300863    时间: 2013-5-28 18:38
sratlf 发表于 2013-5-27 22:08
提供个现成的grldr好了  是0.45c 05-21版的  启动后密码是Password  密码输入正确才加载内置菜单

反复实验这种方法管用。
作者: feifanll    时间: 2013-5-28 21:09
895300863 发表于 2013-5-28 18:33
configfile /grldr 管用吗?

有configfile /grldr的写法吗?
要调用也是这样 chainloader /grldr
嘿嘿,写在我给你提供的菜单中死循环。
作者: sratlf    时间: 2013-5-28 22:56
895300863 发表于 2013-5-28 17:01
感谢,学习中,实践中。
如果使用密文方式,需要把set /p命令换成password命令,是不是这样子呢?
pass ...

差不多吧  把
set input=
set /p input=Password:  || goto :start
if "%input%"=="Password" || goto :start

这三行换成下面一行命令就可以了
password --md5 ******************************* || goto :start

作者: 895300863    时间: 2013-5-29 00:14
895300863 发表于 2013-5-28 17:01
感谢,学习中,实践中。
如果使用密文方式,需要把set /p命令换成password命令,是不是这样子呢?
pass ...

请问那三行换成这一句?还会判断用户输入的信息吗?如果输入信息有误还会返回到要求输入密码吗?
作者: sratlf    时间: 2013-5-29 10:07
895300863 发表于 2013-5-29 00:14
请问那三行换成这一句?还会判断用户输入的信息吗?如果输入信息有误还会返回到要求输入密码吗?

用fbinsttool修改我提供的那个grldr  将最下面几行命令
  1. :start
  2. clear
  3. set input=
  4. set /p input=Password:  || goto :start
  5. if "%input%"=="Password" || goto :start
  6. exit
复制代码
修改为
  1. :start
  2. clear
  3. password --md5 ****************** || goto :start
  4. exit
复制代码
***代表md5加密后的密码  可以用md5crypt命令得到

输入密码的提示还有  密码错误会一直要求输入密码
作者: sratlf    时间: 2013-5-29 10:30
sratlf 发表于 2013-5-29 10:07
用fbinsttool修改我提供的那个grldr  将最下面几行命令修改为***代表md5加密后的密码  可以用md5crypt命令 ...

你指的是修改grldr内置菜单???
作者: Cracada    时间: 2013-5-29 11:28
学习S大和16楼的做法,弄了一个,貌似可以实现楼主的要求了

密码123

GRLDR_PW_0.45C_130521.zip (147.41 KB, 下载次数: 34)
作者: songhangzhou    时间: 2013-5-29 19:03
提供一种测试方法:
-------grldr内置-------
default=0
timeout=0
#   设置全局密码
password --md5 ...<==放在整体配置处
#   hiddenmenu
title menu
        lock  <==多了锁死菜单的功能
configfile  /menu.lst
---------完------------

因为有 lock 项目,所以除非你输入正确的口令,否则即使你启动时狂按C/E进入命令行,menu菜单还是无法被加载运行的。。。。

另外,也能够避免你的 menu.lst 在启动的过程中被乱改,还具有保密 menu.lst 的功能!

作者: tingyue-wu    时间: 2013-8-17 19:04
本帖最后由 tingyue-wu 于 2013-8-17 19:19 编辑
sratlf 发表于 2013-5-29 10:07
用fbinsttool修改我提供的那个grldr  将最下面几行命令修改为***代表md5加密后的密码  可以用md5crypt命令 ...


s大你好。我原来一直用grub4dos密码方式来开机进入系统,但是总是输错密码就需要重启电脑,输入正确才能进系统。
今天碰巧看见这个帖子,就采用了你的方法。写法如下
但是出了问题,password出来后,要输入两遍密码,第二遍输完后,显示错误
提示语
error 27 : unrecognized command
press any key to continue……
请问是我在哪里弄错了??谢谢


!BAT
goto :start
calc *0x307FFC-0x110000 > nul && set pre_menu=(md)4+8 ! set pre_menu=(md)0x880+0x200
command %pre_menu%

pxe detect
hiddenmenu
configfile
default 0
timeout 0

title find --set-root --device=h /windows/ntloader.INI && chainloader /windows/ntloader.INI !configfile (md)4+8
#这里搜索系统启动文件ntldr启动,ntloader.INI其实就是ntldr改名。

:start
clear
password --md5 ****************** || goto :start
exit
作者: sratlf    时间: 2013-8-19 10:07
tingyue-wu 发表于 2013-8-17 19:04
s大你好。我原来一直用grub4dos密码方式来开机进入系统,但是总是输错密码就需要重启电脑,输入正确才能 ...

吧你用的grldr文件传上来我看下
作者: tingyue-wu    时间: 2013-8-20 07:28
sratlf 发表于 2013-8-19 10:07
吧你用的grldr文件传上来我看下

解决了。http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1
完全改成批处理了,没有菜单标签了。就不出错了。
作者: 289fffee    时间: 2013-8-25 19:15
路过  顶一下。。。
xinsdylec.com 新时代娱乐|城 ydylec.com 云鼎娱乐|场




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3