怎样配置ProFTPD服务器
创始人
2024-07-21 07:40:49
0

  ProFTPD设计目标是实现一个安全且易于设定的FTP Server。怎样配置ProFTPD服务器?ProFTPD的特点又有哪些?

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

一、ProFTPD的主要包括如下特点:

  * 单一主设置文件,包含许多指令以及其支配的组,pache 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&! nbsp;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 nogrou! p

  修改为:

  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文件。

  然后运行命令:

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

  则下次系统启动以后,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是否正常运行:

  1.   C:WINDOWS>ftp 192.168.2.33  
  2.  
  3.   Connected to 192.168.2.33.  
  4.  
  5.   220 ProFTPD 1.2.0rc3 Server (ProFTPD Default Installation)[ftpd.test.com.cn]  
  6.  
  7.   User (192.168.2.33:(none)): ideal  
  8.  
  9.   Password:  
  10.  
  11.   230 User ideal logged in.  
  12.  
  13.   ftp> 
  14.  

  则现在你配置成功一个安全可靠的Proftpd服务器。

【编辑推荐】

  1. 如何配置proFTD
  2. 在CentOS系统安装配置proftpd
  3. ProFTPD mod_tls模块CA SSL证书验证漏洞
  4. Linux中建立安全的ProFTPD应用经验谈
  5. ProFTPD STAT命令远程拒绝服务攻击漏洞
  6. ProFTPD字符编码SQL注入漏洞

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...
2012年第四季度互联网状况报... [[71653]]  北京时间4月25日消息,据国外媒体报道,全球知名的云平台公司Akamai Te...