本文是经过实践过得出的,对于急于起FTP服务器的仁兄,一定是大叫为好!
一 安装Red Linux 7.0 二 安装Wu-ftp2.6.1 (华盛顿大学FTP服务器) 本文是不允许anonymous用户登录。
建立一个guest账号,,使公司内部人员使用,并且不允许用Telnet登录。 以下是步骤: (1) 增加一个用户账号: 命令usedadd 用户账号 eg: usedadd szanlai passwd szanlai (passwd 是设定口令) 建立密码 (2) 定义指向用户的shell 为空shell: 命令 chsh 用户账号 eg: chsh szanlai 修入 /bin/hello (/bin/hello 是指向szanlai 的shell) 以上两步可以用一条命令做 usedadd -d szanlai -s /bin/hello szanlai (-d 是增加用户,,-s 是指向什么shell) (3) 修改/etc/shells文件,在shells文末增加所指向的shell gedit shellls (4) 修改/etc/passwd 文件,,,就是将用户账号目录指成虚拟登录根目录,(这就是chroot所指的效果) eg: szanlai:x:500:500:/home/ftp/:/bin/hello change à szanlai:x:500:500:/home/ftp/./szanlai:/bin/hello 注意不要在i : 之间加上 "/" ,,,否则登录不进 这一个改动是将/home/ftp/ 虚拟指向 /szanlai/ 由/bin/hello " A /./ B " 是指将A à B 。 (5) 之后,需做一个构架,,在szanlai目录下新建 /bin , /etc , /lib , /dev 目录 (因为定义了虚拟登录根目录 (6) 将ls命令文件cp 一份到虚拟目录(/home/ftp/bin) cp /bin/ls /home/ftp/bin (7) 再将ls 共享文件cp进虚拟目录(/home/ftp/lib) 而如何知道一个执行文件所需要的共享文件呢? 用ldd 命令可知。 Eg : ldd ls 再将所见到的文件全部cp 到/home/ftp/lib (8) 将空shell 修改,, mknod /bin/hello c 1 3 (1 不是 L) 再赋与权限 chmod 666 hello (9)再将/etc/group ,/etc/passwd 文件cp 进/home/ftp/etc 再分别修改两个文件。使在虚拟登录目录下,只能有一个用户登入 1 group 将root 与用户账号之间的 账号全部删除,,一个不留。 2 Passwd 就是将所要登录进去的假根目录 如之前(4)的 /home/ ftp/./szanlai =è /szanlai/ (10)修改ftpaccess 一个是class 类别指向 guest 二个是将groupguest 指向 用户账号 (11)之后,就是用chmod命令来设置权限,,, (12).......................................................end...........; 本人email : nothing_much@21cn.com 如有什么问题和疑问 欢迎来信共研!
|