Chinaunix首页 | 论坛 | 博客
  • 博客访问: 101426797
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类:

2008-04-08 23:20:00

  出处:Unix爱好者家园unix-cd.com  
看到有网友讲SCO的ftp采用的是wu-ftp一种, 
    由于以前在小型机上曾用过wu-ftp限制过用户登录目录, 
    所以就尝试了一下SCO下的做法,现总结一下,提供给大家参考: 
    1、修改/etc/passwd,把需要限制的用户的根目录后加上/./ 
    例如:原来的目录为/usr/test, 那么改成/usr/test/./ 
    看起来改后的/etc/passwd该用户的内容像这样子: 
    test:x:215:50::/usr/test/./:/bin/sh 
    2、建立并修改相关文件 
    登录进入root帐户 
    # su - test(你的用户名) 
    $ mkdir bin 
    $ cp /bin/ls bin 
    $ mkdir lib 
    $ cp /lib/libprot.so.1 lib 
    $ mkdir -p usr/lib 
    $ cp /usr/lib/libc.so.1 usr/lib 
    $ cp /usr/lib/libsocket.so.1 usr/lib 
    $ mkdir etc 
    $ cp /etc/passwd etc 
    $ cp /etc/group etc 
    $ cd etc 
    $ vi passwd 把不用ftp的用户都删了 
    $ vi group 把不用ftp的组都删了 
    # exit 退回到root用户 
    # cd /etc 
    # vi inetd.conf 
    找到ftp那行,首先确认行首没有被#号注释掉,然后在末尾加上-a 
    看起来修改后的inetd.conf中ftp那行内容像这个样子: 
    ftp stream tcp nowait root /etc/ftpd ftpd -a 
    存盘退出激活inetd.conf参数: 
    # ps -e | grep inetd 记下inetd的进程号 
    # kill -HUP inetd进程号 
    # vi ftpaccess 
    找有无guestgroup的行, 
    有则先确认行首无#号后把test用户的组名(你的用户所属的组名)加上,用空格分隔名字 
    无则加上一行,看起来像这个样子: 
    guestgroup group(你用户的组名) 
    x!强制存盘退出(该文件默认方式是只读) 
    建议给此类ftp的用户单独建立一个组,以便日后的安全设置 
    3、对于不想用户修改内容的目录或文件,把写权限用chmod -w 去掉即可 
    对于不想用户取走的文件或不想用户访问的目录,chmod -r把读权限去掉 
    4、如果想让test用户只能ftp不能telnet, 
    那么现在可以开始做相应的修改了: 
    首先/etc/shells里加入一行/bin/false后: 
    /etc/shells文件内容实例: 
    # 
    /bin/csh 
    /bin/sh 
    /bin/ksh 
    /usr/bin/scosh 
    /bin/false #加入是为了让/bin/false成为系统认可的shell, 无则ftp会提示错误 
    然后再把/etc/passwd该用户的shell改为/bin/false即可 
    看起来修改后的/etc/passwd该用户的内容像这个样子: 
    test:x:215:50::/usr/test/./:/bin/false 
    到这里就可以进行测试了。 
阅读(747) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~