LoveUnix » 其他UNIX & Linux » WU_FTPD 建立个用户后,隔离用户间目录.需要配置哪能个文件?
让LU留住您的每

一天 让LU博客留住您的每一天
2007-5-31 09:41 onlyOneEditor
WU_FTPD 建立个用户后,隔离用户间目录.需要配置哪能个文件?

WU_FTPD 建立个用户后,隔离用户间目录.需要配置哪能个文件?

:P
让用户只可以访问自己的HOME目录.看不到系统目录以及其它用户目录.帮同事问的.:lol 偶自己也不懂.

[[i] 本帖最后由 onlyOneEditor 于 2007-5-31 09:43 编辑 [/i]]

2007-5-31 10:31 onlyOneEditor
RedHat系统下实现提供个人主页空间服务的方法
作者:RealSKy

  在Linux中,可以用Apache 和 WU-FTPD 服务器通过一些简单设置,实现个人空间服务,Apache是web服务器,ftp提供主页上传功能。本文以RedHat 7.2 Linux为例,假设Apache 和 WU-FTPD服务器已经安装,具体配置方法如下:

  (1)安装RedHat 7.2 Linux时选择"服务器"或者定制安装服务器软件;
  (2)修改/etc/httpd/conf/httpd.conf文件中下面关于个人空间设置的一段。(//后是详细说明)
  UserDir public_html //此处修改默认目录,可修改,应该与下面的
  //相对应
  #
  # Control access to UserDir directories. The following is an example
  # for a site where these directories are restricted to read-only.
  #
  # //
  # AllowOverride FileInfo AuthConfig Limit
  # Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
  #
  # Order allow,deny
  # Allow from all
  #
  #
  # Order deny,allow
  # Deny from all
  #
  # //.....行之间的所有#去掉,使得个人主页用户的设置生效.并且""中的 "/home/*/public_html"是个人主页服务在Linux中存放位置的设置 *代表用户名生成的目录名。
  重新启动httpd服务:httpd stop / httpd start 或者httpd restart

  (3) 添加一个ftp用户的shell,使其不能使用命令,和telnet 和ssh服务编辑/etc/shells文件,在文件最后添加一行"/dev/null"的内容。
  (4)添加一个ftpchroot族,改组中的用户将已自己的home目录作为ftp根目录
groupadd ftpchroot
  (5)用户申请个人主页空间时,所用的用户名在Linux上要作为ftpchroot组的用户。以下操作以test用户为例:

  建立一个用户test ;密码:test

  usradd test -s /dev/null -g ftpchroot
  passwd test

  这样就在/home目录下自动产生一个test的目录。

  (6)进入test目录,建立个人主页发布目录public_html,然后进行权限设置

  cd /home/test
  mkdir public_html
  chmod 711 /home/test
  chmod 755 /home/test/public_html

  OK,现在只要将网页文件通过用用户名test密码为test,使用ftp上传到自己ftp目录下的public_html目录就可以启动自己的web服务了,系统默认为index.html文件。

  后记:如果服务器系统安装完整,在个人主页中可以支持PHP、JSP动态网页和MySQL PostGreSQL数据库。


2001-05-28 10:43:00· 不知所云· JSP001

 一直为不能吧ftp用户限制在自己的目录伤脑筋,这两天到处找资料看,问网友自己试验,总算成功了,写出来大家看看吧。
  首先要d个wu-ftp咯!我在做的过程中发现wu-ftp的版本不同,做出来的效果也不同。
例如 /ftp/--->user1
     --->user2
     ---〉user3
  用wu-ftp2.4做的时候,要在每个用户的目录下例如是/ftp/user1/...建立etc.bin.dev.usr几个目录,才能把用户限制在自己的目录里,并且能正常显示出目录内容。
  而用wu-ftp2.6做的时候,只需要在/ftp下建立etc.bin.dev.usr就可以把达到目的了。不过不知道是不是我做的有什么地方不对,导致这种差异,谁知道的告诉我!

好啦,d好软件,就直接编译一下,
在/etc/inetd.conf里把原先的in.ftpd用生成的ftpd代替,后面要加个-a参数哦,表示读取配置文件(好像是这个意思)
接下来要编辑ftpaccess文件。(其实都有模版的,只要照着需要改一下就可以了)
class user guest,real,anonymous(名字随便取)
real表示server上真实的用户,也就是passwd里有的用户
anonymous表示匿名用户,这个不用说了吧?
guest可以自定义。如果你不做anonymouse ftp最好把其他的去掉,只留这个
我个人认为。

guestgroup ftpuser
定义guest用户的范围。就是server里属于ftpuser这个组的用户都是guest用户。

restricted-uid *
这一句好重要,限制了guest用户在自己的目录里。

  其他的看着模版作。然后存盘就可以了!这个时候应该就已经可以限制住用户了,但是用户登陆上来以后,看不到自己的目录内容,也就是ls用不了。


  这时就要mkdir上面那几个目录了,usr,dev,bin,etc 具体位置就是上面说的了!

几个目录的内容如下:
~/etc: TIMEZONE* group netconfig passwd
~/dev: null tcp ticotsord udp zero(得拥mknod命令作)
~/bin: ls*
~/usr: bin(ln -s ../bin) lib/(目录) share/(目录)
~/usr/lib: ld.so* ld.so.1* libc.so* libc.so.1*
libdl.so* libdl.so.1* libintl.so* libintl.so.1*
libmp.so* libmp.so.1* libnsl.so* libnsl.so.1*
libw.so* libw.so.1* libsocket.so* libsocket.so.1*
nss_dns.so.1* nss_files.so.1* nss_nis.so.1*
nss_nisplus.so.1* straddr.so* straddr.so.2*
(拷贝这些文件时,非常容易死机,我也不知道为什么,最好用光盘启动系统,从光盘上拷)

~/usr/share/lib/zoneinfo: GMT-8 US/(目录)
长长的一串目录照建阿!
~/usr/share/lib/zoneinfo/US: Pacific

  好了,在ftp下或者ftp/userXX下建立相应的目录,并从系统相同的目录下拷贝相应的文件进这些目录就可以了!保持目录结构和属性。

最后还要修改/etc/passwd文件
在passwd文件的标示用户主目录的域改一下,例如:
mail:x:1001:100::/aquser/mail:/bin/sh(原来的)
用wu-ftpd2.4的改称:
mail:x:1001:100::/aquser/mail/./:/bin/sh
用wu-ftpd2.6的改称:
mail:x:1001:100::/aquser/./mail:/bin/sh

页: [1]


Powered by Discuz! Archiver 5.5.0  © 2001-2006 Comsenz Inc.