作者: Laifus 出自: http://www.linuxdiyf.com
Solaris可以支持三种正常的shell,Bourne Shell ( /bin/sh或/sbin/sh )、C Shell ( /bin/csh )和Korn Shell ( /bin/ksh )。运用这些作为登录shell时,用户的权限仅由文件的读、写、实行权限和ACL节制。这种节制编制比拟大年夜概,文件明白划定了主人、同组人和他们的权限,而一切其别人都用第三组权限。这很难分别比拟详细的权限级别,在许多景遇下这不克不及写意管理员的要求。
管理员能够希望设置某些特殊用户,某用户尽管关机;某用户只能经过POP3运用邮件效力,该用户登录的独一目的是改自身的口令;某个用户只能在家目录下成立文件(好比经过ftp下载文件),不克不及点窜已有文件,不克不及赏识文件体系、不克不及删除文件。
一切这些都可以在登录shell上做文章。
例一, 一个关机用户
要关机,必须有关机权限。什么人有关机权限?root。但不克不及把root口令告诉粗浅用户,怎样办?成立一个特殊的超等用户,他的登录shell是一个定制的文件:一条关机饬令。详细做法如下:
# vi /etc/passwd
shutdown:x:0:1:shutdown user:/:/bin/shutdown 添加一个用户
# vi /etc/shadow
shutdown::::::::
# vi /bin/shutdown
/usr/sbin/shutdown -y -g0 -i5
把此外用户logout,试着用shutdown用户登录。输出完用户名和口令后,体系就末尾关机。
例二, 一个邮件用户,该用户登录时只能改口令
好比斯用户为user1,添加完该用户后,点窜他的登录shell,编制如下:
# vi /etc/passwd
user1:x:……..:/bin/passwd
试着从此外一台机器telnet已往,有什么景象?用户一登录下去,体系就让用户改口令。改完后,搜集邻接自动断掉。
例三, 一个用户只能在家目录下成立文件(好比经过ftp下载文件),不克不及点窜已有文件,不克不及赏识文件体系、不克不及删除文件……
这种用户的完成可以借助于一种/usr/lib/rsh称为restricted shell的文件。这种shell其实是Bourne shell的一种变形。除了以下特点以外,它和Bourne shell完全类似:
运用此种shell的用户不克不及:
变化自身的义务路子,是以只能呆在家目录下;
不克不及点窜PATH变量,以是一旦PATH被管理员设定后,用户只能实行指定目录下的饬令;
指明路子和饬令时不克不及用“/”;
不克不及重定向输出。
这样,为了完成下面划定的功用,可以按下面的做法:
1. 首先按粗浅编制( admintool )成立此用户,但登录shell写/usr/lib/rsh
2. 点窜其家目录下的.profile文件,最重要的是其中的PATH变量,好比:
PATH= . ; export PATH
3. # cp –p /usr/bin/ftp .
# cp –p /usr/bin/telnet .
# cp –p /usr/bin/ls .
# cp –p /usr/bin/pwd .
# cp –p /usr/bin/more .
# cp –p /usr/bin/file .
拷贝一系列该用户需求运用的饬令到其家目录下。可是牢记不要包括rm 、vi等有能够运用户自身点窜.profile的饬令。
版权声明:
原创作品,允许转载,转载时请务必以超链接编制标明文章 原始理由 、作者信息和本声明。否则将追查法律责任。