热门关键字:  ubuntu  分区  Fedora  linux系统进程  函数

当前位置 :| 主页>Linux教程>软件应用>

Linux下proftpd的安装配置与管理方法

来源: 作者: 时间:2007-03-25 Tag: 点击:
一. proftpd 简介。

proftpd 是一款开放源码的ftp服务器软件,它是原来世界范围使用最广泛的wu-ftpd的改进版,它修正了wu-ftpd的许多缺陷,在许多方面进行了重大的改进,其中一个重要变化就是它学习了Apache 的配置方式,使proftpd的配置和管理更加简单易懂。本文将介绍它在Red hat Linux 9中最基本的安装和配置。

二.软件的相关资源。

官方网站:http://www.proftpd.org/

源码软件包:proftpd是开源的软件,可以去其官方网站下载。目前最新稳定版本为1.2.10。

帮助文档: 该软件包中包含。

FAQ:该软件包中包含。

配置文件样例:该软件包中包含。

三.软件的安装。

1.安装

由其官方网站中下载其源码软件包proftpd-1.2.10. tar.gz。接下来我将对安装过程的一些重要步骤,给出其解释:

[root@localhost root]
#tar xzvf proftpd-1.2.10. tar.gz
[root@localhost root]
#cd bind-9.3.1
[root@localhost bind-9.3.1]
#./configure 
[root@localhost bind-9.3.1]
#make
[root@localhost bind-9.3.1]
#make install


tar xzvf bind-9.3.1.tar.gz 解压缩软件包。

./configure 针对机器作安装的检查和设置,大部分的工作是由机器自动完成的,但是用户可以通过一些参数来完成一定的设置,其常用选项有:

./configure --help 察看参数设置帮助。

--enable-ipv6 支持ipv6。

可以设置的参数很多,可以通过 -help察看需要的,一般情况下,默认设置就可以了。

默认情况下,安装过程应该建立了:

proftpd的deamon为/usr/local/sbin/proftpd

proftpd的配置文件,/usr/local/etc/proftpd.conf。

2.启动:

[root@localhost root]
# /usr/local/sbin/proftpd -c 
/usr/local/etc/proftpd.conf


-c选项用来指定配置文件的位置,不指定的话默认位置是 /usr/local/etc/proftpd.conf 。

正常情况下proftpd应该启动了,ps aux 应该可以查到proftpd的进程,或netstat -an 也可以看到21端口的服务已经起来了。(ftp默认端口)

如果要设置开机自启动ftp server,只需在/etc/rc.d/rc.local中加入一行

/usr/local/sbin/proftpd

#!/bin/sh
#
# This script will be executed
*after* all the other init scripts.
# You can put your own 
initialization stuff in here if you don't
# want to do the full Sys V style init stuff.
touch /var/lock/subsys/local
/usr/local/sbin/proftpd

四.软件的配置。

1.初始配置文件

默认配置文件的位置为:

/usr/local/etc/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              "
ServerType              
standalone
DefaultServer               
on
# Port 21 is the standard FTP port.
Port                            21


ServerType 指定FTP Server 的启动类型,一般使用standalone方式比较简单,如果访问量不大,为节省资源考虑用xinetd侦听启动,必须在这里指定。Port 指定FTP的侦听端口,一般使用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


Umask 指定FTP server 进程的Umask 值,022与Linux系统得默认值一致。

MaxInstances 指定 FTP server 的最大连接数。

# Set the user and group under 
which the server will run.
User          nobody 
Group         nogroup 
# To cause every FTP user to be
"jailed" (chrooted) into their home
# directory, uncomment this line.
#DefaultRoot ~
DefaultRoot


User 和Group 指定proftpd 进程启动时的有效用户ID,处于安全考虑默认的身份是nobody,有一点要指出的是,一般Red Linux 9.0 中默认是没有nogroup 这个组的,把Group指定为nobody 即可。

DefaultRoot 选项限制Linux 系统用户通过FTP方式登录时将被限制在其home 目录下。

# Set the maximum number of seconds
a data connection is allowed
# to "stall" before being aborted.
#TimeoutStalled                  300

AllowRetrieveRestart             on
AllowStoreRestart                on

# Normally, we want files to be overwriteable.
<Directory />
  AllowOverwrite                on
</Directory>


TimeoutStalled 指定一个连接的超时时间。

AllowRetriveRestart 和AllowStroeRestart 指定允许断点续传。

<Anonymous ~ftp>
  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
  <Limit WRITE>
    DenyAll
  </Limit>
</Anonymous>


这一部分,将在后面详细介绍。


相关文章:
QT之1(PC机上搭建环境及应用)
安装wine
解决安装CentOS5之后,vi不显示颜色的问题
linux控制台下的一个好东西-splitvt
Vmware-server目标主机积极拒绝,无法连接
vmware server 1.0.6 for linux相关命令
逐步设置vim C/C++语法高亮显示和自动缩进
在VM虚拟机器Linux下安裝VMware Tool的方法
玩了一下compiz-fusion
BMP-Beep Media Player
VIM 文件编码识别与乱码处理(一)
VIM 文件编码识别与乱码处理(二
VI技巧
让firefox 支持 amule (ed2k 协议)
为CentOS 5.1中的Firefox 1.5安装Flash插件……
vi 在编辑某文件时,在该文件内查找东西用何命令?
Freebsd + wine1.1.9 + 国元网上证券交易(通达信
emacs 代码补全功能
安装drupal-6.2和简体中文语言包
谈 Linux GNU 实用工具兼容性
Linux 文件压缩工具指南 一些免费和实用工具的评
Emacs 基础知识
介绍 Emacs 的编辑环境
在 Emacs 中编辑文本
生活在Emacs中
生活在emacs中2
生活在Emacs中3
Linux命令行性能检测工具
Linux下Expect配置
生活在Emacs中4