本不打算写这篇文章的,今天看到有朋友在 ChinaUnix 上发表帖子求助,也就不得不写了。
SCO系统中FTP服务器提供对匿名FTP帐户的支持。但由于这种机制本身固有的安全性问题,所以在提供这种服务之前,应仔细查看有关内容。当一个客户访问匿名FTP时,该FTP服务器就执行系统调用chroot,限制该客户不得移到该文件系统(即FTP主目录所在的文件系统)的外面。以下是我在 SCO OpenServer 5.0.7 系统下搭建匿名服务器的完整过程:
一、首先使用 scoadmin -> Account Manager 创建 ftp 用户和 ftp 组。
(这里应特别注意的是,在选择是否输入口令的时候,应选择 "Remove Passwd",不要输入口令)
二、进入 ~ftp 目录,创建系统操作所需要的子目录。
(注意:此处的 ~ftp 代表你的 ftp 用户的主目录。如:我创建的 ftp 用户的主目录为 /usr/ftp ,那么此处的 ~ftp 即是 /usr/ftp 目录 )
# mkdir bin
# mkdir dev
# mkdir etc
# mkdir lib
# mkdir pub
# mkdir -p usr/lib
# chmod -R 555 *
# chown -R ftp:ftp *
三、修改权限,拷贝相应的运行所需要的文件。
# cp /bin/ls ./bin
# cp /bin/sh ./bin
# cp /etc/passwd ./etc
# cp /etc/group ./etc
# cp /lib/libprot.so.1 ./lib
# cp /usr/lib/libc.so.1 ./usr/lib
# cp /usr/lib/libcurses.so.1 ./usr/lib
# cp /usr/lib/libm.so.1 ./usr/lib
# cp /usr/lib/libresolv.so.1 ./usr/lib
# cp /usr/lib/libsocket.so.1 ./usr/lib
# cp /usr/lib/libsocket.so.2 ./usr/lib
# chmod 111 ./bin/*
# chmod 444 ./etc/*
# chmod 555 ./lib/*
# chmod 555 ./usr/lib/*
# chown bin:bin ./bin/*
# chown bin:bin ./usr/lib/*
# chown bin:bin ./lib/*
# chmod 755 ./pub (如果你希望开放文件上传的权限,可以设置为 777)
四、配置 ~ftp/dev 目录下的字符设备文件。
# find /dev/socksys -print | cpio -pdumv .
# find /dev/zero -print | cpio -pdumv .
五、在 /usr/internet/ip/0.0.0.0 目录下,创建匿名传输服务的目录链接。
# rm -f /usr/internet/ip/0.0.0.0/sco_ftp
# ln -s /usr/ftp /usr/internet/ip/0.0.0.0/scp_ftp
(最后的申明:不建议在 SCO OpenServer 5.0.X 系列上搭建 ftp 的匿名服务)
(如转载请注明出处)
阅读(1567) | 评论(0) | 转发(0) |