当前位置:中国星空学习网首页>Linux/DOS>Linux配置>正文  
ProFtpd快速指南

 

j30B0j30B0j30B0
ProFTPD是一个Unix平台上或是类Unix平台上(如Linux, FreeBSD等)的FTP服务器程序,它是在自由软件基金会的版权声明(GPL)下开发、发布的免费软件,也就是说任何人只要遵守GPL版权声明,都可以随意修改源始码。

ProFTPD设计目标是实现一个安全且易于设定的FTP Server。目前Unix或类Unix平台上FTP Server十分有限,最常使用的恐怕就是wu-ftpd了。虽然wu-ftpd有着极佳的效能同时也是一套很好的软件,然而它却欠缺了许多Win32平台上FTP Server的一些特色,同时wu-ftpd过去也有不少的安全漏洞陆续被发现。ProFTPD的原创者本身就曾经花非常多的时间寻找wu-ftpd的漏洞加以改进并且增加许多功能。然而十分不幸的是,他很快地发现显然wu-ftpd需要全部重新的改写才能补足欠缺的设定能力以及缺乏的一些功能。ProFTPD不是从其它FTP Server的既有原始码修改而产生的,相反的,它是完全独立而完整、重新改写的FTP Server。

ProFTPD的主要包括如下特点:

* 单一主设置文件,包含许多指令以及其支配的组,完全都是直观的设定。如果各位对Apache Web Serve的设置不陌生的话相信一定会觉得十分容易操作设定。

* 每个目录都可以定义一个".ftpaccess"设置文件,就如同Apache的".htaccess"文件一样可以设定该目录的存取权限。

* 可设定多个虚拟FTP server,而匿名FTP服务更是十分容易。

* 可根据系统的负载(load)选择以单独运作(stand-alone)方式或是由inetd启动。

* 匿名FTP的根目录不需要特定的目录结构、系统二进制执行文件或其它系统文件。

* ProFTPD不执行任何外部程序以免造成安全漏洞。

* 具有隐藏目录或隐藏文件,源自于Unix形式的档案权限,或是user/group类型的档案权限设定。

* 能够以一般使用者在单独运作(stand-alone)模式下执行,以减少某些藉由攻击方式取得root权的可能性。注:此功能与Unix的操作系统有关。

* 支持系统记录以及utmp/wtmp。
记录的方式与wu-ftpd的标准完全兼容,也支持记录内容的延伸格式。

* 支持Shadow password,包括了帐号使用期限设定的功能。

编译和安装 

Proftpd提供了多种安装格式,包括源代码方式、RPM方式、deb方式(debian软件包)等。本文主要讨论源代码方式的安装。

从ftp.proftpd.net下载最新版本的proftpd-1.2.0rc3到Linux服务器上。然后按照如下步骤进行处理:

[root@ftpd /]# cp proftpd-1.2.0rc3.tar.gz /usr/src/
[root@ftpd /]# cd /usr/src
[root@ftpd src]# tar xvfz proftpd-1.2.0rc3.tar.gz
[root@ftpd src]# cd proftpd-1.2.0rc3
[root@pftd proftpd-1.2.0rc3]# ./configure
[root@pftd proftpd-1.2.0rc3]# make
[root@pftd proftpd-1.2.0rc3]# make install

到现在为止,你已经完成了proftpd的编译和安装。并且在/usr/local/etc/目录下有一个默认的proftpd配置文件proftpd.conf。

启动测试

对于笔者的试验系统RedHat6.2来说,需要将该配置文件中:

Group nogroup

修改为:

Group nobody

因为redhat系统中nobody用户属于nobody组,而不是nogroup组。

若需要将proftpd设置为系统启动时自动启动则通过如下命令拷贝启动文件:

[root@ftpd proftpd-1.2.0rc3]# cp ./contrib/dist/rpm/proftpd.init.d /etc/rc.d
/init.d/proftpd

然后修改该脚本的可执行属性:

[root@ftpd /]# chmod +x /etc/rc.d/init.d/proftpd

然后编辑/etc/rc.d/init.d/functions:

修改

export PATH="/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin"



export PATH="/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin:/usr/local/sbin"

注:若将在运行./cofigure命令时通过--prefix选项指定将proftpd安装在/usr/sbin目录下则不需要修改fuctions文件。

然后运行命令:

[root@ftpd rc3.d]# chkconfig --level 35 proftpd on

则下次系统启动以后,proftpd将自动启动。

最后,需要确保系统当前没有ftp服务器在运行:

[root@ftpd /]# netstat -ln

若输出中不包含

tcp 0 0 0.0.0.0:21 0.0.0.0:* LISTEN

这样的内容则可以直接启动proftpd,否则需要关闭以前的ftpd服务器。对于一般的缺省Linux安装来说,则需要通过以下的途径来关闭ftp服务器:

编辑/etc/inetd.conf文件,在

ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l -a

一行前加上#:

#ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l -a

然后:

[root@ftpd /]# ps ax|grep inetd
350 ? S 0:00 inetd

得到inetd的进程号 ,重新启动inetd进程:

[root@ftpd /]# kill -HUP 350

然后通过如下命令启动proftpd:

[root@ftpd /]# /etc/rc.d/init.d/proftpd start

这时候可以通过如下命令来测试proftpd是否正常运行:

C:WINDOWS>ftp 192.168.2.33
Connected to 192.168.2.33.
220 ProFTPD 1.2.0rc3 Server (ProFTPD Default Installation)[ftpd.test.com.cn]
User (192.168.2.33:(none)): ideal
Password:
230 User ideal logged in.
ftp>

则现在你就拥有了一个安全可靠的ftp服务器。

FAQ

1、我安装proftpd以后,出现了问题,我如何调试?

通过通过命令/usr/local/sbin/proftpd -d9 -n启动proftpd来进行调试,则proftpd就会将调试信息打印到consle上以供调试之用。

2、为什么我的proftpf启动以后,匿名用户不能登录?

查看proftp配置文件/usr/local/etc/proftpd.conf,修改为(这里/home/ftp可以是任何希望匿名用户登录以后的当前根目录,但是确保要使该目录允许ftp用户访问),并且若部分的User指令指定的用户为ftp用户,则需要在配置文件中添加如下命令指示:

RequireValidShell off

3、我如何实现一个正常用户登录以后将其的访问限定在某个目录之下?

可以通过指令DefaultRoot来实现。例如若希望将ftpusers组的用户限定在自己的home目录下,则需要首先创建该组:

/usr/sbin/groupadd ftpusers

然后将用户ideal加入到该组中:

usrmod -G ftpusers ideal

最后在在proftpd.conf文件中添加如下内容:

DefaultRoot ~ ftpusers

也可以限制用户登录以后仅仅访问自己主目录下的一个子目录:

DefaultRoot ~/anoftp ftpusers

当然也可以将用户限制在其他目录之下,而不是自己的home目录下:

DefaultRoot /tmp ftpusers

也可以限定一个用户组的某些用户被限制,而其他不作限制:

DefaultRoot ~ ftpusers,!empolyee

这个指令指示仅仅限制ftpusers组中的不是empolyee组的用户进行限制。

4、我如何使用户登陆时不显示ftp服务器版本信息,以增强安全性?

在proftpd.conf中添加如下内容:

ServerIdent off

则再次登录时,显示如下内容:

C:WINDOWS>ftp 192.168.2.33
Connected to 192.168.2.33.
220 ftpd.test.com.cn FTP server ready.
User (192.168.2.33:(none)):

5、在proftpd环境下如何设定虚拟主机?

可以通过指令:VirtualHost来实现,一个最简单的例子:


ServerName "virtual FTP server"

若你仅仅希望通过匿名访问某个虚拟主机,则使用如下的指令:



ServerName "virtual FTP server"


DenyAll




User private
Group private


AllowAll






这样192.168.2.35的这台主机则仅仅允许匿名登录。

笔者的proftpd.conf配置文件内容为:

# This is a basic ProFTPD configuration file (rename it to
# proftpd.conf for actual use. It establishes a single server
# and a single anonymous login. It assumes that you have a user/group
# "nobody" and "ftp" for normal operation and anon.

ServerName "test.com.cn FTP Server"
ServerType standalone
DefaultServer on

# Port 21 is the standard FTP port.
Port 21
# Umask 022 is a good standard umask to prevent new dirs and files
# from being group and world writable.
Umask 022

# To prevent DoS attacks, set the maximum number of child processes
# to 30. If you need to allow more than 30 concurrent connections
# at once, simply increase this value. Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd)
MaxInstances 30


RequireValidShell off
ServerIdent off


# Set the user and group that the server normally runs at.
User nobody
Group nobody

# Normally, we want files to be overwriteable.

AllowOverwrite on


# A basic anonymous configuration, no upload directories.

User ftp
Group ftp
# We want clients to be able to login with "anonymous" as well as "ftp"
UserAlias anonymous ftp

# Limit the maximum number of anonymous logins
MaxClients 10

# We want welcome.msg displayed at login, and .message displayed
# in each newly chdired directory.
DisplayLogin welcome.msg
DisplayFirstChdir .message

# Limit WRITE everywhere in the anonymous chroot

DenyAll

DefaultRoot ~ ftpusers

ServerName "virtual FTP server"

DenyAll

User private
Group private

AllowAll

 

上一篇: Sendmail安装入门
下一篇: OpenLDAP快速安装指南
站内公告
栏目导航
 Windows系统
 Linux/DOS
 办公应用
 工具软件
 图形图象
 网络应用
 安全防御
 网络编程
 软件教程
 实用技术
最新文章
中国星空图片网
·人体艺术
·性感美眉
·生活自拍
·幽默搞笑
·超级帅哥
·精彩万花筒
·梦幻景色
中国星空探索网
·神秘追踪 灵异接触
·鬼故事 灵异空间 图片
·未解之谜 探索宇宙
中国星空两性网
·两性图文 我的性事 情人 成人幽默
·性爱技巧 两性测试 性爱误区
·性事花边 生育避孕 性保健 性疾病
·两性生理 文化 讨论 心理 知识
·爱人同志 非常男女 一夜情
中国星空算网命
·手机吉凶 QQ号码吉凶 周公解梦
·塔罗牌测试 狗年运程
·关公灵签 紫薇斗数 八字排盘
·测试:你的成功指数有多少
·测验你的家庭是否美满?
·面相: 面型 眼睛 耳朵 口唇
·手相:拉你一把奶油桂花手
·测试:你能成为大富翁吗?
联系方式 设为首页
中国星空旗下---中国星空学习网    Copyright 2005-2050 Year   xx.happy369.com  Networks.All rights reserved
中国星空网所有内容均来源于网络,版权属于原作者,如侵犯到您的权益,请与我们联系,我们将尽快予以删除或处理。
中国星空不承担由于内容的合法性及健康性所引起的一切争议和法律责任。
陕ICP备05011765号 联系我们 
《女人如烟》--演唱:魏佳艺