`
xitong
  • 浏览: 6197944 次
文章分类
社区版块
存档分类
最新评论

Mac OS X: 网络管理Login Script来隐藏程序

 
阅读更多
注: 本文是基于TJ Royall的文章login script to hide applications from certain OD users改变的.

首先, 在一个企业环境中, 不同的用户组可以被允许的程序可以是不同的, 但是一般来说, 所有登录到一台机器的用户都有对/Applications目录的read权限,所以, 只要是被安装在/Applications(包括Utility,Server等子目录)里面的应用程序, 登录的用户就可以看见. 这样, 在有的企业环境中, 一些用户就会产生:"为什么我不能运行这个程序呢?是不是管理员的失误呢?", "听说这个聊天程序挺好, 也在硬盘上, 问问管理员是否可以让我玩玩."等等这样的出于好奇等原因的问题, 这样既对一线用户的工作效率产生负面影响, 同时管理员也会面对这样的众多询问, 从要要花时间检查用户的设置情况等, 浪费大量时间.

另外, 即便不是中大型的网络管理企业用户, 在一个未实施网络管理的松散管理中, 管理人员或者应用实施人员, 也可以通过下面的思路来做一些工作, 减少没必要的管理时间浪费.

基本思路是这样, 通过用户的组设置的不同, 可以给定禁止用户使用应用程序的列表, 在用户每次登录系统的时候, 运行一个script程序来隐藏禁止使用的程序, 而当用户退出系统的时候样释放列表中的程序, 这样就可以通过维护列表来管理用户可以看见的应用程序了.

这样涉及到两个scripts程序, 一个是login script, 一个是logout script.

Royall原来的文章中没有涉及logout script,他使用的方法在一个比较大型的系统中产生登录很慢的抱怨, 而且使用的方法只是一个框架而已.

这里使用网络www服务, 来管理用户组的应用程序列表, 因为www服务可以说从Windows到Linux, Unix, BSD等等当今主流系统都有免费而功能强大的www服务器, 我们这里只使用其中的最简单的功能.在服务器上存放不同组的被禁止的应用程序的列表, 并根据组名分别存放到不同文件. 只要是通过普通的browser可以看到这些文件, script就可正常存取, 在下面的script里面只要是修改服务器的地址就可以了.

  1. #1.Createalogfile
  2. LOG="/tmp/hideapps.log"


  3. #2.PathtotheSetFileBinaryfromDeveloperTools.
  4. SETFILE="/usr/local/bin/SetFile"

  1. #3.Pathtothefolderwithapplicationswewanttohide.
  2. APP_PATH="/Applications"#yourpathhere

  1. #4.WeneedtogettheMCXworkgroupsowecanhidetherightapps.
  2. WORKGROUP=`defaultsread/Library/Managed/Preferences/$1/com.apple.MCXworkgroup`


  3. #5.Setfilenameforhiddenfilelist.
  4. hiddenfilelist="/tmp/hiddenfilelist.txt"


  5. #6.Sethiddenappsforeachworkgroup.Sampleapplicationnamesareincluded.
  6. #.Besuretoincludethe.appaftertheapplicationname.
  7. httpgroupfile="http://10.0.0.1"

  8. groupfile=`curl-m60-fRs-o$hiddenfilelist$httpgroupfile/$WORKGROUP`

  1. echo"Workgroupis$WORKGROUP.Willnowhideapplications,listinfile$hiddenfilelistwhichisgotfrom$httpgroupfile/$WORKGROUP.">>$LOG
  2. grephttpgroupfile|awk{print$1} |xargs$SETFILE-aV

  3. echo"Applicationssuccessfullyhidden.Exiting.">>$LOG
  4. exit0
至于logout的script. 只要是将上面的隐藏命令改为显示就可以了, 这里不在赘述.

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics