用LINUX架设FTP服务器(2)

作者:level 时间:2009-04-14 15:22:00 

1.2 wu-Ftpd的安装

当前,Linux环境下有许多ftp服务器软件可供选择,但是目前最常见的仍然是wu-Ftpd服务器。这里主要讨论该软件的安装和配置。

一般来说,在安装了linux时,缺省都会自动安装wu-ftpd服务器,但是有时候为了某种需要也需要自己亲自重新安装该服务器软件。安装wu-Ftpd有两方式,一种是安装rpm形式的发布包;一种是自己动手去编译生成Ftp服务器。

rpm包可以在http://rpmfind.net/linux/RPM/WByName.html处下载得到,以rpm包方式安装非常简单,只需要在按下面的简单的几个步骤就可以完成,假设下载得到的rpm包存放在/tmp目录下:

#cd /tmp

#rpm -ivh wu-ftpd-1.6.0-9.i386.rpm

压缩的源代码可以在ftp://ftp.wu-ftpd.org/pub/wu-ftpd/出得到。这里我们以最新的1.6.0为例说明如何编译安装wu-ftpd。

1、解开源代码

1) 将压缩的源代码拷贝到/usr/src下

#cp wu-ftpd.1.6.0.tar.gz /usr/src

2) 对压缩文档进行解压缩:

#tar xvfz wu-ftpd.1.6.0.tar.gz

#cd wu-ftpd-1.6.0

2、敲入命令 "./build xxx" ,可以在这里指定一个C语言编译器:"./build CC=yyy xxx" yyy 指用来替代 "cc" 的其他的编译器。对于linux环境下的gcc编译器,命令应该为:"./build CC=gcc xxx"

#build CC=gcc lnx

xxx可以取下面的值:

gen : 通用make(当移植到心得系统时需要拷贝它)

aix : IBM AIX

aux : AU/X

bdi : BSD/OS

bsd : BSD

dec : DEC Unix 3.X

du4 : DEC Unix 4.X or later

dyn : Dynix

fbs : FreeBSD 1.0 or later

hiu : Hitachi Unix

hpx : HP-UX

lnx : Linux (tested on 1.0.30)

nbs : NetBSD 1.X

nx2 : NeXTstep 1.x

nx3 : NeXTstep 3.x

osf : OSF/1

osx : Mac OS X

ptx : ???

sco : SCO Unix 3.2v4.2/SCO OpenServer 5

sgi : SGI Irix 4.0.5a

sny : Sony NewsOS

sol : SunOS 5.x / Solaris 1.x

s41 : SunOS 4.1.x

ult : Ultrix 4.x

uxw : UnixWare 1.1 or later

clean : Clean up object files and such to reduce disk space after building.

install: Install ftpd

Copying Makefiles.

Linking src/config.h

Making support library.

gcc -O3 -fomit-frame-pointer -fno-strength-reduce -pipe -c strcasestr.c

gcc -O3 -fomit-frame-pointer -fno-strength-reduce -pipe -c authuser.c

gcc -O3 -fomit-frame-pointer -fno-strength-reduce -pipe -c snprintf.c

rm -f libsupport.a

ar cq libsupport.a strcasestr.o authuser.o snprintf.o

ranlib libsupport.a

: : :

: : :

: : :

编译成功以后将生成如下几个可执行文件:

ftpd FTP服务器程序

ftpshut 用于关闭FTP守护进程的程序

ftpcount 记数程序,显示目前ftp登录的人数

ftpwho 查看当前FTP服务器的连线情况,类似与系统的who命令,只不过是查看ftp登录的用户

ckconfig 检查FTP的设置是否正确

ftprestart 重新启动ftp服务器

privatepw 改变wu_ftpd组访问文件信息

3、若只是升级到一个新的版本,应该首先备份系统所有的旧的配置文件。否则这些配置文件将被覆盖。为了适应自己的需求,应当编辑样本配置文件来满足自己的要求,具体配置文件的需求参见后面的内容。

4、以超级用户身份敲入命令"./build install"

#build install

installing binaries.

install -c -o bin -g bin -m 110 bin/ftpd /usr/sbin/in.ftpd

install -c -o bin -g bin -m 111 bin/ftpshut /usr/bin/ftpshut

install -c -o bin -g bin -m 111 bin/ftprestart /usr/bin/ftprestart

install -c -o bin -g bin -m 111 bin/ftpcount /usr/bin/ftpcount

install -c -o bin -g bin -m 111 bin/ftpwho /usr/bin/ftpwho

install -c -o bin -g bin -m 111 bin/privatepw /usr/bin/privatepw

installing manpages.

install -c -o bin -g bin -m 444 doc/ftpcount.1 /usr/man/man1/ftpcount.1

install -c -o bin -g bin -m 444 doc/ftpwho.1 /usr/man/man1/ftpwho.1

install -c -o bin -g bin -m 444 doc/ftpaccess.5 /usr/man/man5/ftpaccess.5

install -c -o bin -g bin -m 444 doc/ftpconversions.5 /usr/man/man5/ftpconversio5

install -c -o bin -g bin -m 444 doc/ftphosts.5 /usr/man/man5/ftphosts.5

install -c -o bin -g bin -m 444 doc/xferlog.5 /usr/man/man5/xferlog.5

install -c -o bin -g bin -m 444 doc/ftpd.8 /usr/man/man8/ftpd.8

5、编辑 "/etc/inetd.conf" 文件,指向新的ftpd守护进程,大多数情况下,这一步是不必的,因为在build install时,会将新的守护进程拷贝覆盖老的守护进程。若希望使用ftpd的增强的扩展功能,应该在这行最后加上"-a"选项。

ftpd守护进程一般可以携带如下参数,也可以不带任何参数:

-d debug参数,当ftpd守护进程出现错误时,会将错误信息写入到系统记录文件/usr/adm/syslog中

-l 记录每次ftp会话信息到/usr/adm/messages中

-t 设置当FTP客户端多久无操作就自动断线,这个参数后面指定等待的时间,如 -t 600 表示若客户

端若连续10分钟没有动作就自动断线,缺省值是15分钟

-a 使用ftpaccess配置文件内容对ftpd进行更详细复杂的设置

-A 不使用ftpaccess配置文件的设置,缺省值是-A

-i 当客户端有上载文件的动作时,就记录在文件xferlog中

-L 使用户连接ftp服务器期间使用的所有命令都被记录到/usr/adm/messages中

6、拷贝tar、gzip、gunzip、compress、uncompress等文件到 "~ftp/bin"中,拷贝"ls"为"~ftp/bin/ls"。

7、若是第一次安装,使用"ckconfig"程序查找ftpd的各种配置文件存放目录:ftpconversions、ftpusers、和ftpgroups。在"doc/examples"目录下有样本文件。"ckconfig"是一个可执行程序,确保修复该程序检测到的任何问题。

标签:LINUX,架设,FTP服务器
0
投稿

猜你喜欢

  • 也谈Google搜索引擎对原创内容的识别

    2008-07-11 14:08:00
  • 很好很强大,很黄很暴力

    2008-01-08 20:25:00
  • 饭团:百度竞价实战教程第一课

    2010-03-07 14:22:00
  • 邮件系统的选型与架构专题(下篇)

    2010-03-12 18:45:00
  • Docker获取镜像报错docker: Error response from daemon

    2022-09-01 04:14:54
  • 自定义WordPress的FEED地址

    2010-03-23 08:27:00
  • Linux环境使用g++编译C++方法总结

    2021-11-10 22:09:35
  • 未来在拐角:成功站长改写落魄岁月

    2009-03-11 17:53:00
  • 阿里妈妈新政策 出自好意 却未必能被接受

    2008-07-19 07:12:00
  • 08年,个人站长赚钱将更加困难

    2008-02-21 12:18:00
  • 微软计划明年二月推出支持电容触控面板手机

    2009-11-09 08:31:00
  • GoDaddy域名管理如何添加子域名

    2010-04-24 13:17:00
  • 淘宝技术发展(Oracle、支付宝、旺旺)

    2012-03-05 20:10:01
  • 谈谈搜索引擎更新周期问题

    2008-01-20 10:33:00
  • 在 RHEL8 /CentOS8 上建立多节点 Elastic stack 集群的方法

    2023-07-21 15:46:57
  • 如何让搜索引擎快速搜录你的网站

    2009-02-11 14:09:00
  • 使用文章来增加流量和排名

    2009-01-23 12:53:00
  • Linux系统下利用C程序输出某进程的内存占用信息

    2023-11-03 03:39:27
  • 巧用404错误页 对搜索引擎友好挽留用户

    2009-01-17 18:07:00
  • Linux下Apache服务器设置的两个要点

    2009-09-09 09:00:00
  • asp之家 网站运营 m.aspxhome.com