免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: emylekao
打印 上一主题 下一主题

怎样建一个只能重启和关机的帐户? [复制链接]

论坛徽章:
0
11 [报告]
发表于 2004-10-06 18:49 |只看该作者

怎样建一个只能重启和关机的帐户?

给偶抄个吧,多谢!

论坛徽章:
0
12 [报告]
发表于 2004-10-06 18:51 |只看该作者

怎样建一个只能重启和关机的帐户?

.....
等后天的吧

论坛徽章:
0
13 [报告]
发表于 2004-10-06 19:05 |只看该作者

怎样建一个只能重启和关机的帐户?

好的,这个我还不是太急,我先搜一下试试去,也许能找到

论坛徽章:
0
14 [报告]
发表于 2004-10-07 09:45 |只看该作者

怎样建一个只能重启和关机的帐户?

关注一下这个~~偶也想知道的

论坛徽章:
1
技术图书徽章
日期:2013-12-05 23:25:45
15 [报告]
发表于 2004-10-07 09:52 |只看该作者

怎样建一个只能重启和关机的帐户?

那你可以这样子啊,给一个用户,登陆之后设置它的自动启动一个处理进程,只有关机和充气的选项阿

论坛徽章:
0
16 [报告]
发表于 2004-10-07 15:38 |只看该作者

怎样建一个只能重启和关机的帐户?

摘自《UNIX系统基础》 陈慧蓉 编著
1998年2月第一版 1998年10月第三次印刷
第219页 选段

通常只有超级用户有权执行关机操作。为了避免别人知道超级用户的口令以至滥

用超级用户的巨大权力,可以建立一个专门关机“超级用户”,例如。建一个名

为halt的用户,使其在 /etc/passwd 中的登记项为

halt::0:1 : account for halt : / : /etc/halt
在此,我们让halt用户注册后,不输入口令,系统遍直接执行/etc/halt关机命令

,而不是去执行某一种shell。如果考虑到不破坏正在上机的用户进行中的工作,

以及避免网络上的远程用户执行关机操作,我们可以让halt用户注册后执行某个

shell程序或某个自行编写的二进制程序。例如,使/etc/passwd中的登记项为:
halt::0:1 account for halt :/:/home/adm/halt
下面给出我们用与SunOS 4.1.x(BSD UNIX)上的/home/adm/halt程序的一个参考

版本
  #! /bin/csh
  #例6.1 --halt
  #专门关机的超级用户执行的shell程序
#
                        #如遇在执行中被打断, goto Intonintr Int
                        #是否还有其他用户在上机
if ('who |wc -l' = = 1) then
                        #只有主控制台或接在串口a口的终端可以关机
if ('tty'= = /dev/console | | 'tty'= = /dev/ttya ) then
                 /etc/umount -t nfs
                 /etc/halt
else echo Terminal is not previleged !!
endif
else
echo ''
echo '--Login users are------'
who
wall -a << endoffile
The system is coming down. Please logout.
endoffile
endif
exit
Int:
echo "Interruptted"
exit

这是一个专门关机的超级用户。在所有的系统中,只允许建立普通用户帐号,这

就需要利用setuid,使建立关机的用户的进程在关机时暂时变成超级用户来执行关

机操作。但是,setuid的使用一定要非常慎重.




#抄写书上的校验过2次,如有错误请大家原谅
由于是抄写书上的,本人的只是初学者,这些都看不明白,所以
有关问题请不要问我 ^o^

论坛徽章:
0
17 [报告]
发表于 2004-10-08 10:38 |只看该作者

怎样建一个只能重启和关机的帐户?

谢谢!我过两天试吧,今天忙着整squid,现在出问题了:http://bbs.chinaunix.net/forum/viewtopic.php?p=2803980#2803980

论坛徽章:
0
18 [报告]
发表于 2004-10-08 17:09 |只看该作者

怎样建一个只能重启和关机的帐户?

谢谢~

论坛徽章:
13
15-16赛季CBA联赛之同曦
日期:2016-01-28 19:52:032015亚冠之北京国安
日期:2015-10-07 14:28:19NBA常规赛纪念章
日期:2015-05-04 22:32:03处女座
日期:2015-01-15 19:45:44卯兔
日期:2014-10-28 16:17:14白羊座
日期:2014-05-24 15:10:46寅虎
日期:2014-05-10 09:50:35白羊座
日期:2014-03-12 20:52:17午马
日期:2014-03-01 08:37:27射手座
日期:2014-02-19 19:26:54子鼠
日期:2013-11-30 09:03:56狮子座
日期:2013-09-08 08:37:52
19 [报告]
发表于 2012-07-19 20:11 |只看该作者
@肥虾
怎样建一个只能重启和关机的帐户?

摘自《UNIX系统基础》 陈慧蓉 编著
1998年2月第一版 1998年10月第三次印刷
第219页 选段

通常只有超级用户有权执行关机操作。为了避免别人知道超级用户的口令以至滥

用超级用户的巨大权力,可以建立一个专门关机“超级用户”,例如。建一个名

为halt的用户,使其在 /etc/passwd 中的登记项为

halt::0:1 : account for halt : / : /etc/halt
在此,我们让halt用户注册后,不输入口令,系统遍直接执行/etc/halt关机命令

,而不是去执行某一种shell。如果考虑到不破坏正在上机的用户进行中的工作,

以及避免网络上的远程用户执行关机操作,我们可以让halt用户注册后执行某个

shell程序或某个自行编写的二进制程序。例如,使/etc/passwd中的登记项为:
halt::0:1 account for halt :/:/home/adm/halt
下面给出我们用与SunOS 4.1.x(BSD UNIX)上的/home/adm/halt程序的一个参考

版本
  #! /bin/csh
  #例6.1 --halt
  #专门关机的超级用户执行的shell程序
#
                        #如遇在执行中被打断, goto Intonintr Int
                        #是否还有其他用户在上机
if ('who |wc -l' = = 1) then
                        #只有主控制台或接在串口a口的终端可以关机
if ('tty'= = /dev/console | | 'tty'= = /dev/ttya ) then
                 /etc/umount -t nfs
                 /etc/halt
else echo Terminal is not previleged !!
endif
else
echo ''
echo '--Login users are------'
who
wall -a << endoffile
The system is coming down. Please logout.
endoffile
endif
exit
Int:
echo "Interruptted"
exit

这是一个专门关机的超级用户。在所有的系统中,只允许建立普通用户帐号,这

就需要利用setuid,使建立关机的用户的进程在关机时暂时变成超级用户来执行关

机操作。但是,setuid的使用一定要非常慎重.




#抄写书上的校验过2次,如有错误请大家原谅
由于是抄写书上的,本人的只是初学者,这些都看不明白,所以
有关问题请不要问我 ^o^


感谢分享 很赞! ^_^
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP