UNIX(Shell)

管理系统的帐号,是系统管理者最基本的工作之一。通常在帐号建立好之后,一般的使用者,可使用任何位于 /usr/bin 目录底下的指令。若系统管理者,想建立一个只允许使用特定“指令”的帐号,要如何建立一个这样的帐号呢?例如:当这个使用者登入系统后,只允许他使用ftp、cp、mv、ls,但不允许他执行rlogin,rm 等指令。换句话说,也就是限定他只能执行被允许的指令。本文将详细介绍使用 Restricted shell (/usr/bin/rsh)来建立一个这样的帐号。

一、 Login Shell:

大家都知道 shell 就是使用者命令的解译处理器,在HP UNIX系统里,提供的shell 有下列几种:

Bourne Shell (/usr/old/bin/sh) 
Korn Shell (/usr/bin/ksh)
POSIX Shell (/usr/bin/sh)
Restricted shell (/usr/bin/rsh )
C Shell (/usr/bin/csh) 
Key Shell (/usr/bin/keysh)

其中大家最常用的是 POSIX Shell (/usr/bin/sh) 和 Korn Shell (/usr/bin/ksh)。

二、 Restricted Shell:

Restricted shell(/usr/bin/rsh ) 是比较特殊的一个shell,它是POSIX Shell的 Restricted Version。Restricted shell 的所有功能都跟 POSIX Shell 一样,除了下列几点外:

l 不能使用 change directory 指令 cd
l 不能设定 SHELL、ENV、PATH等环境变量
l 不能指定含有 / ( root directory) 的指令
l 不能使用转向输出符号(>;、>;|、 >;>;)

三、 使用 Restricted Shell

回到本文的主旨,如何使用 restricted shell建立一个只能执行特定指令的帐号。首先,请先用sam 或指令 useradd 建立一个新帐号,并且指定其login shell为 /usr/bin/rsh。例如:建立一个名为 gibert 的新帐号,其家目录(home directory)位于 /home/gibert,并且指定其login shell 为 /usr/bin/rsh。(当然,若您想更改一个已存在的帐号, 请直接编辑 /etc/passwd档,将其login shell 改成 /usr/bin/rsh)。Gibert 帐号建立好之后,在/etc/passwd 档案内应该可看到如下的信息:

# more /etc/passwd | grep gibert

gibert:O.gX20Ge2fxuY:101:20:,,,:/home/gibert:/usr/bin/rsh

再下来,请依下列的步骤,来限定gibert 这个帐号只能执行,ls、cp、date、banner、pwd等指令,其它指令一慨不允许执行(视您管理上的需要,决定这个帐号可允许执行的指令):

(1) 在 /usr 目录底下建立一个新的 rbin 目录 (/usr/rbin)记得把
/usr/rbin 目录的写入权限(write)拿掉。然后把被允许使用的指令复制到 /usr/rbin 目录底下,也就是: ls、cp、date、banner、pwd。

# mkdir /usr/rbin
# chmod 555 /usr/rbin
# chown bin:bin /usr/rbin
# cp /usr/bin/ls /usr/rbin
# cp /usr/bin/cp /usr/rbin
# cp /usr/bin/date /usr/rbin
# cp /usr/bin/banner /usr/rbin

(2) 在gibert的home目录底下 /home/gibert,建一个 .profile 檔 (若没有这个档的话),并且加入一行设定,指定环境变量PATH 到 /usr/rbin:

# cd /home/gibert
# vi .profile

export PATH=/usr/rbin

(3) 确定profile 档的拥有者(owner) 是属于gibert的,若不是请用指令 chown 将其更正。

# chown gibert:usres .profile

(4) 验证设定结果。

Login: gibert
Passwd: ********
$ …….

四、 结论

使用 restricted shell 可以让系统管理者,建立一个只允许执行少数指令的帐号,不论就系统的安全性而言,或者在系统的管理上,建立这样的帐号供特殊使用者使用,应该有其实际应用上的价值。

内容概要:本文详细介绍了基于FPGA的144输出通道可切换电压源系统的设计与实现,涵盖系统总体架构、FPGA硬件设计、上位机软件设计以及系统集成方案。系统由上位机控制软件(PC端)、FPGA控制核心和高压输出模块(144通道)三部分组成。FPGA硬件设计部分详细描述了Verilog代码实现,包括PWM生成模块、UART通信模块和温度监控模块。硬件设计说明中提及了FPGA选型、PWM生成方式、通信接口、高压输出模块和保护电路的设计要点。上位机软件采用Python编写,实现了设备连接、命令发送、序列控制等功能,并提供了一个图形用户界面(GUI)用于方便的操作和配置。 适合人群:具备一定硬件设计和编程基础的电子工程师、FPGA开发者及科研人员。 使用场景及目标:①适用于需要精确控制多通道电压输出的实验环境或工业应用场景;②帮助用户理解和掌握FPGA在复杂控制系统中的应用,包括PWM控制、UART通信及多通道信号处理;③为研究人员提供一个可扩展的平台,用于测试和验证不同的电压源控制算法和策略。 阅读建议:由于涉及硬件和软件两方面的内容,建议读者先熟悉FPGA基础知识和Verilog语言,同时具备一定的Python编程经验。在阅读过程中,应结合硬件电路图和代码注释,逐步理解系统的各个组成部分及其相互关系。此外,实际动手搭建和调试该系统将有助于加深对整个设计的理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值