快速业务通道

/dev/tty文件在Unix操作系统中的妙用

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-05-11
e命令,如who | tee userinfo.txt.(注意,如果利用了tee命令的话,在可以不再使用重定向符号).到这里为止没有涉及到/dev/tty这个文件.who | tee userinfo.txt这个命令的显示结果,只会显示当前登录的用户明细,而不会显示当前有多少个用户登录到系统中.可能或许有人回说只要数一下就可以了呀.确实数数的话可以实现,但是计算机不会自己数呀.如果其他脚本程序需要用到当前登录用户的总数而不需要明细,那么该如何处理呢?此时就需要利用/dev/tty文件作为参数了.如可以使用who | tee /dev/tty |wc –l 命令.这个命令可以把当前用户的明细以及总共的用户数量显示出来.以上这个命令其实我们可以分为四个步骤.第一步系统先执行who命令;第二步tee命令把who命令执行对结果保存到/dev/tty文件中;第三步wc命令会统计/dev/tty文件中的行数.一个终端对相当于一个文件,故利用wc命令可以统计出当前系统登录用户的数量.第四步再把这个统计的结果显示在终端上.说,把/dev/tty文件当作其他命令的一个参数,一个一起组合以实现一些比较复杂的功能.

  二、/dev/tty文件使用的注意点.

  在使用这个文件中,特别需要关注的是其权限文件.默认情况下,普通用户也可以实现这个文件,从而可能造成一定的安全隐患.如现在系统中有两个普通用户sa01与sa02.而他们两个都是通过远程终端连入到Unix操作系统中.此时假设用户sa01知道用户sa02的用户名以及登录密码.那么就可以假冒用户sa02的身份,把一些命令的执行结果重定向到/dev/tty文件中.同时利用tee命令进行分流.此时对于用户sa02时,其执行相关的命令在终端上仍然可以正常显示,不会产生什么怀疑.但是这个用户其可能不知道,自己执行命令的结果已经保存到/dev/tty文件中.而其他用户就可以通过这个文件来显示在其用户终端上所显示的信息.这显然会导致用户SA02信息的泄漏,给其带来一定的损失.

 /dev/tty这个文件可以有多个用户同时使用,相互之间不会发生冲突.这个特性可以帮助系统工程师实现很多有用的功能.但是毋庸置疑的是,也造成了一定的安全隐患.为此对于大部分情况下,Unix系统工程师要对这个文件进行一定的权限限制,如只有系统工程师(不一定是特权用户)才可以使用这个文件.从而防止非法攻击者利用这个文件来获取其攻击所必要的信息.

  另外需要注意的是命令 >/dev/tty与命令> file连个命令其最终的结果有可能相同,也有可能不同.前者在把命令的显示结果保存到/dev/tty文件中的时候,会过滤掉echo等命令设置的信息.而后者这个命令这会把显示的结果一五一十的照搬到file文件中去.也就是说,如果在命令或者脚本程序中没有echo等类似的命令设置信息的话在,则这两个命令重定向文件后所保存文件的内容是一致的.但是如果在命令或者脚本程序中有类似的提示命令的话,则两个文件的显示结果则会不同.为此系统工程师就需要根据自己的实际需要,来选择合适的重定向文件,看看有否必要采用/dev/tty文件.笔者的态度是,只有在确实有必要的情况下,才能够使用/dev/tty文件.这个文件是比较稀缺的,只由在缺其不可的情况下,才启用这个文件.

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号