安装Proftpd的完整过程

运维 系统运维
如何安装Proftpd?ProFTPD是个Unix平台上或是类Unix平台上的一种FTP服务器技术程序,Proftpd是在自由软件基金会的版权声明(GPL)之下开发并且发布的免费软件。Proftpd.conf是其下的参数设置。本文讲述的是如何安装Proftpd。

  安装配置一个proftpd的实例的过程,首先说明一下本次安装的目的,接下来分析如何安装、操作Proftpd

  目的:

  安装配置一个proftpd,达到以下要求

  1、 不允许匿名访问。

  2、开放一个帐号,只有在upload目录有上传权限,可以续传,不能改名和删除。

  操作:

  切换到root帐户

  [code:1:de92f96787] su root //输入root的密码。

  [/code:1:de92f96787]

  一、下载proftpd

  这里我们下载了1.2.9版本

  [code:1:de92f96787] wget ftp://ftp.proftpd.org/distrib/source/proftpd-1.2.9.tar.gz

  [/code:1:de92f96787]

  二、安装proftpd

  切换到下载目录,假设为/tmp/proftpd,然后

  [code:1:de92f96787] tar zxvf proftpd-1.2.9.tar.gz //解压

  cd proftpd-1.2.9

  ./configure --prefix=/var/proftpd --sysconfdir=/etc //设置安装目录/var/proftpd,配置文件目录/etc

  1.   make  
  2.  
  3.   make install  
  4.  

  [/code:1:de92f96787]

  三、 新建ftp专用帐号

  就是上面目的中提到的那个专用帐号,这里以skate/skate(u/p)为例。

  1.   [code:1:de92f96787] groupadd skate  
  2.  
  3.   useradd skate -g skate -d /var/ftp -s /sbin/nologin //设置/var/ftp目录为ftp的目录  
  4.  
  5.   passwd skate //设置skate用户的密码  
  6.  
  7.   mkdir /var/ftp/upload  
  8.  
  9.   chown skate.skate /var/ftp/upload //设置upload目录skate用户可写  
  10.  
  11.   [/code:1:de92f96787]  
  12.  

  四、 设置proftpd

  proftpd的配置文件就一个,就是/etc/proftpd.conf

  1.   [code:1:de92f96787] vi /etc/proftpd.conf //打开proftpd.conf  
  2.  
  3.   [/code:1:de92f96787]  
  4.  
  5.   [code:1:de92f96787]  
  6.  

  ####具体配置如下######

  1.   ServerName "Test ftp server..."  
  2.  
  3.   ServerType standalone  
  4.  
  5.   DefaultServer on  
  6.  
  7.   #端口  
  8.  
  9.   Port 21  
  10.  
  11.   Umask 022  
  12.  
  13.   #***线程数  
  14.  
  15.   MaxInstances 30  
  16.  
  17.   User skate  
  18.  
  19.   Group skate  
  20.  
  21.   #DNS反查  
  22.  
  23.   UseReverseDNS off  
  24.  
  25.   IdentLookups off  
  26.  
  27.   #***尝试连接次数  
  28.  
  29.   MaxLoginAttempts 3  
  30.  
  31.   #每用户线程  
  32.  
  33.   MaxClientsPerHost 2  
  34.  
  35.   #***用户数  
  36.  
  37.   MaxClients 20  
  38.  
  39.   DirFakeUser On skate  
  40.  
  41.   DirFakeGroup On skate  
  42.  
  43.   DeferWelcome On  
  44.  
  45.   #日志文件位置  
  46.  
  47.   SystemLog /var/log/proftpd.log  
  48.  
  49.   ServerIdent off  
  50.  
  51.   #限制skate组的skate用户登录时不能切换到其他目录(只能呆在他的home目录)  
  52.  
  53.   DefaultRoot ~ skate,skate  
  54.  
  55.   #设置只允许192.168.0的用户登录  
  56.  
  57.   #Order allow,deny  
  58.  
  59.   #Allow from 192.168.0.  
  60.  
  61.   #Deny from all  
  62.  
  63.   #设置只允许skate用户登录,否则系统用户也可以登录ftp  
  64.  
  65.   #Order allow,deny  
  66.  
  67.   #DenyUser !skate  
  68.  
  69.   #  
  70.  
  71.   #开起全盘的写权限   
  72.  
  73.   AllowOverwrite on  
  74.  
  75.   AllowStoreRestart on  
  76.  
  77.   #允许FXP  
  78.  
  79.   # AllowForeignAddress on   
  80.  
  81.   AllowAll    
  82.  
  83.   #设置skate用户在upload的限制  
  84.  
  85.   #DELE删除权限  
  86.  
  87.   #RNFR RNTO重命名权限  
  88.  
  89.   #RMD XRMD移动目录权限    
  90.  
  91.   DenyUser skate  
  92.  

 #####结束######

  [/code:1:de92f96787]

  编辑完以后按Esc,然后输入:x保存。

#p#

  五、 启动服务

  编辑一个启动脚本(这个是从网上copy的,不是我写的,感谢那个写这个脚本的人,很好用,thx)

  [code:1:de92f96787] vi /etc/rc.d/init.d/proftpd[/code:1:de92f96787]

  [code:1:de92f96787]

  #####脚本内容开始########

 

  1.   #!/bin/sh  
  2.  
  3.   #  
  4.  
  5.   # Startup script for ProFTPD  
  6.  
  7.   #  
  8.  
  9.   # chkconfig: 345 85 15  
  10.  
  11.   # description: ProFTPD is an enhanced FTP server with \  
  12.  
  13.   # a focus toward simplicity, security, and ease of configuration. \  
  14.  
  15.   # It features a very Apache-like configuration syntax, \  
  16.  
  17.   # and a highly customizable server infrastructure, \  
  18.  
  19.   # including support for multiple 'virtual' FTP servers, \  
  20.  
  21.   # anonymous FTP, and permission-based directory visibility.  
  22.  
  23.   # processname: proftpd  
  24.  
  25.   # config: /etc/proftpd.conf  
  26.  
  27.   #  
  28.  
  29.   # By: Osman Elliyasa   
  30.  
  31.   # $Id: proftpd.init.d,v 1.7 2002/12/07 21:50:27 jwm Exp $  
  32.  
  33.   # Source function library.  
  34.  
  35.   . /etc/rc.d/init.d/functions  
  36.  
  37.   if [ -f /etc/sysconfig/proftpd ]; then  
  38.  
  39.   . /etc/sysconfig/proftpd  
  40.  
  41.   fi  
  42.  
  43.   #下面这行设置环境变量,注意设置好你的proftpd的安装目录  
  44.  
  45.   PATH="$PATH:/usr/local/sbin:/var/proftpd/bin:/var/proftpd/sbin" 
  46.  
  47.   # See how we were called.  
  48.  
  49.   case "$1" in  
  50.  
  51.   start)  
  52.  
  53.   echo -n "Starting proftpd: "  
  54.  
  55.   daemon proftpd $OPTIONS  
  56.  
  57.   echo  
  58.  
  59.   touch /var/lock/subsys/proftpd  
  60.  
  61.   ;;  
  62.  
  63.   stop)  
  64.  
  65.   echo -n "Shutting down proftpd: "  
  66.  
  67.   killproc proftpd  
  68.  
  69.   echo  
  70.  
  71.   rm -f /var/lock/subsys/proftpd  
  72.  
  73.   ;;  
  74.  
  75.   status)  
  76.  
  77.   status proftpd  
  78.  
  79.   ;;  
  80.  
  81.   restart)  
  82.  
  83.   $0 stop  
  84.  
  85.   $0 start  
  86.  
  87.   ;;  
  88.  
  89.   reread)  
  90.  
  91.   echo -n "Re-reading proftpd config: "  
  92.  
  93.   killproc proftpd -HUP  
  94.  
  95.   echo  
  96.  
  97.   ;;  
  98.  
  99.   suspend)  
  100.  
  101.   hash ftpshut >/dev/null 2>&1  
  102.  
  103.   if [ $? = 0 ]; then  
  104.  
  105.   if [ $# -gt 1 ]; then  
  106.  
  107.   shift  
  108.  
  109.   echo -n "Suspending with '$*' "  
  110.  
  111.   ftpshut $*  
  112.  
  113.   else  
  114.  
  115.   echo -n "Suspending NOW "  
  116.  
  117.   ftpshut now "Maintanance in progress"  
  118.  
  119.   fi  
  120.  
  121.   else  
  122.  
  123.   echo -n "No way to suspend "  
  124.  
  125.   fi  
  126.  
  127.   echo  
  128.  
  129.   ;;  
  130.  
  131.   resume)  
  132.  
  133.   if [ -f /etc/shutmsg ]; then  
  134.  
  135.   echo -n "Allowing sessions again "  
  136.  
  137.   rm -f /etc/shutmsg  
  138.  
  139.   else  
  140.  
  141.   echo -n "Was not suspended "  
  142.  
  143.   fi  
  144.  
  145.   echo  
  146.  
  147.   ;;  
  148.  
  149.   *)  
  150.  
  151.   echo -n "Usage: $0 {start|stop|restart|status|reread|resume"  
  152.  
  153.   hash ftpshut  
  154.  
  155.   if [ $? = 1 ]; then  
  156.  
  157.   echo '}'  
  158.  
  159.   else  
  160.  
  161.   echo '|suspend}'  
  162.  
  163.   echo 'suspend accepts additional arguments which are passed to ftpshut(8)'  
  164.  
  165.   fi  
  166.  
  167.   exit 1  
  168.  
  169.   esac  
  170.  
  171.   if [ $# -gt 1 ]; then  
  172.  
  173.   shift  
  174.  
  175.   $0 $*  
  176.  
  177.   fi  
  178.  
  179.   exit 0  
  180.  

  #######脚本结束#########

  1.   [/code:1:de92f96787]  
  2.  

  按Esc,输入:x保存。

  然后添加到系统服务并启动

  1.   [code:1:de92f96787]  
  2.  
  3.   chkconfig --add profptd  
  4.  
  5.   service proftpd start[/code:1:de92f96787]  
  6.  

  以后可以用service proftpd restart来重起proftpd。

  六、总结

  ***,有一个用来限制登陆的特殊命令,就是LOGIN。在 中用这个,可以禁止或者允许连接进来。但是,如果不在Server config,

  或者中使用的话,他将失去效用,或者说被忽略掉(比如在中使用就是无效的)。

  proftpd感觉还是比vsftp功能配置上好用一点,主要掌握好 段基本上应用来说就没有问题了。这就是安装Proftpd的完整过程。

【编辑推荐】

  1. Proftpd中针对实体用户的设定
  2. Proftpd配置文件结构分析
  3. ProFTP下的参数说明
  4. Porftpd.conf的配置格式
  5. Proftpd 的结构
  6. Debian下配置ProFTPd服务器
  7. Proftpd的设定、编译与安装
  8. 用Xinetd启动Proftpd

 

责任编辑:zhaolei 来源: CSDN
相关推荐

2023-09-02 21:50:21

2011-03-03 13:07:13

安装Proftpd

2011-02-25 09:44:51

怎样安装Proftpd

2011-02-22 09:50:01

2011-02-24 14:23:18

2011-03-03 14:47:35

2011-03-07 17:24:33

ProFTPD安装

2011-03-03 09:04:25

2011-03-03 14:47:35

2011-02-24 14:47:48

ProFTPD

2011-03-03 13:32:07

Proftpd安装

2011-02-23 10:43:17

2011-03-01 14:46:53

Debian Proftpd

2011-03-02 17:49:20

Proftpd安装

2011-02-25 14:35:06

ubuntuproftp安装

2011-02-24 15:04:58

ProftpdCentos

2011-03-03 11:06:44

Ubuntu安装ProFTPD

2011-03-08 11:28:15

proftpd

2011-02-23 10:11:10

ProFTPd安装

2011-02-25 15:38:12

ProftpdRedHat
点赞
收藏

51CTO技术栈公众号