当前位置:首页 > CN2资讯 > 正文内容

ProFTPD 服务器

2天前CN2资讯

本科毕业设计所设计的系统需要用到一个ftp服务器。我选择的是ProFTPD服务器。

一.ProFTPD 服务器介绍

ProFTPD is a highly configurable FTP daemon for Unix and Unix-like
operating systems.  

二.官方地址

http://www.proftpd.org/

三.安装步骤

  • 解压下载的文件

  • 命令终端进入到解压后的文件目录(该目录一般和解压之前的文件名同名)

  • 输入    ./configure

  • 输入   make

  • 输入   sudo make install

    注:更详细的说明,请参考解压后的文件中的INSTALL文件


  • 四.创建 ftp组以及ftp用户

      为了使匿名用户登录进系统之后具有访问目录的权限,需要创建一个锁定的用户“ftp”,并把该“ftp”用户归到"ftp"group中。

       使用的命令有:

       1.sudo groupadd ftp

       2.sudo useradd ftp -g ftp -d /host/LIVES


    五.配置文件 proftpd.conf

    proftpd.conf 一般位于  /usr/local/etc 目录,下面给出一种配置文件,它是我毕业设计所需的。

  • # 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          "ProFTPD Default Installation"

  • ServerType          standalone

  • DefaultServer           on

  • # Port 21 is the standard FTP port.

  • Port                21

  • # Don't use IPv6 support by default.

  • UseIPv6             off

  • # 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

  • # 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 /host/LIVES

  • # Normally, we want files to be overwriteable.

  • AllowOverwrite      on

  • # Bar use of SITE CHMOD by default

  • <Limit SITE_CHMOD>

  •  DenyAll

  • </Limit>

  • # A basic anonymous configuration, no upload directories.  If you do not

  • # want anonymous users, simply delete this entire <Anonymous> section.

  • <Anonymous /host/LIVES/users>

  • <Limit LOGIN>

  • AllowAll

  • </Limit>

  •  RequireValidShell off

  •  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            10000

  •  # We want 'welcome.msg' displayed at login, and '.message' displayed

  •  # in each newly chdired directory.

  •  DisplayLogin          welcome.msg

  •  DisplayChdir          .message

  •  # Limit WRITE everywhere in the anonymous chroot

  • <Limit WRITE>

  •    AllowAll

  • </Limit>

  • <Limit READ>

  •  AllowAll

  • </Limit>

  • <Limit STOR>

  •  AllowAll

  • </Limit>

  • </Anonymous>

  • 上面配置的效果是: 将所有匿名用户的操作目录限制在 “/host/LIVES/users",匿名用户可以读写修改目录和文件。当然还有其他的功能,在此不一一细说。

    六.方便操作的shell脚本

    脚本名称:

  • #!/bin/sh

  • # ProFTPD files

  • FTPD_BIN=/usr/local/sbin/proftpd

  • FTPD_CONF=/usr/local/etc/proftpd.conf

  • PIDFILE=/usr/local/var/proftpd.pid

  • # If PIDFILE exists, does it point to a proftpd process?

  • if [ -f $PIDFILE ]; then

  •  pid=`cat $PIDFILE`

  • fi

  • if [ ! -x $FTPD_BIN ]; then

  •   echo "$0: $FTPD_BIN: cannot execute"

  •   exit 1

  • fi

  • case $1 in

  •   start)

  •     if [ -n "$pid" ]; then

  •       echo "$0: proftpd [PID $pid] already running"

  •       exit

  •     fi

  •     if [ -r $FTPD_CONF ]; then

  •       echo "Starting proftpd..."

  •       $FTPD_BIN -c $FTPD_CONF

  • else

  •       echo "$0: cannot start proftpd -- $FTPD_CONF missing"

  •     fi

  •     ;;

  •   stop)

  •     if [ -n "$pid" ]; then

  •       echo "Stopping proftpd..."

  •       kill -TERM $pid

  • else

  •       echo "$0: proftpd not running"

  •       exit 1

  •     fi

  •     ;;

  •   restart)

  •     if [ -n "$pid" ]; then

  •       echo "Rehashing proftpd configuration"

  •       kill -HUP $pid

  • else

  •       echo "$0: proftpd not running"

  •       exit 1

  •     fi

  •     ;;

  •   *)

  •     echo "usage: $0 {start|stop|restart}"

  •     exit 1

  •     ;;

  • esac

  • exit 0

  • 该脚本的使用方法:

  • sudo      ./ start  

  • sudo     ./ restart

  • sudo      ./ stop

  • 它们的含义是显而易见的,值得注意的是"./proftpd restart"并不会关闭已经开启的进程,而是重新读取配置文件,这样后来开启的进程使用的都是刚读入的配置文件。


      你可能想看:

      扫描二维码推送至手机访问。

      版权声明:本文由皇冠云发布,如需转载请注明出处。

      本文链接:https://www.idchg.com/info/23250.html

      分享给朋友:

      “ProFTPD 服务器” 的相关文章

      有效的被墙检测方法与工具指南

      被墙检测是指对于网站或网页进行一系列测试,以判断其是否被网络审查所封锁。这一过程不仅是技术上的探索,也是用户获取信息自由的重要环节。在如今的信息时代,能够顺利访问需要的信息,对个人和企业来说都是至关重要的。被墙检测帮助我们确认某些敏感网站或关键词的可达性,揭示了网络审查背后的复杂机制。 被墙检测的重...

      CloudCone VPS评测:高性能与灵活计费方案的完美结合

      在谈论CloudCone VPS之前,让我给你介绍一下这家服务商。CloudCone成立于2017年,起源于美国,主要是在洛杉矶的MultaCom机房提供云主机和VPS服务。自创立以来,CloudCone逐步发展壮大,不断优化和提升其服务质量,为用户提供便捷的云计算解决方案。可以说,CloudCon...

      水牛VPS:高性能虚拟专用服务器的最佳选择与比较

      水牛城VPS,顾名思义,是在美国纽约州布法罗市托管的虚拟专用服务器。这种服务器因其独特的地理位置和优越的技术配置,吸引了众多用户,特别是需要高性能和灵活性的网站和应用程序。这类服务的定义非常简单,但其特点却非常丰富。通常来说,水牛城VPS提供了良好的网络带宽、灵活的存储选项,以及能够根据用户需求进行...

      Digital-VM优惠码:解锁超值VPS主机服务的最佳选择

      Digital-VM成立于2019年初,专注于为用户提供基于KVM架构的VPS主机服务。在这短短的几年中,它已经迅速崛起,成为业界的一颗新星。作为一个技术驱动的品牌,Digital-VM不断创新,以满足各种客户需求,提供高性能、灵活性和可靠性的VPS解决方案。 我觉得Digital-VM的成长路程相...

      蘑菇云:自然与核爆炸的惊人现象及其深远影响

      蘑菇云这个词,一提起来让人既熟悉又敬畏。它的外形就像个倒立的蘑菇,顶部宽大、底部则较小,这是因为它源自于强大爆炸所产生的气体。这种云朵看似平常,却是一种强烈爆炸后气体与空气混合的结果。虽然蘑菇云在现代多被与核爆炸联系在一起,但实际上,火山喷发及一些天体撞击也可能产生自然形成的蘑菇云。 了解蘑菇云的形...

      无限流量VPS:完美解决高流量需求的虚拟专用服务器方案

      大家好,今天我们来聊聊无限流量VPS,这个在市场上越来越受欢迎的虚拟专用服务器选项。无限流量VPS是指用户在支付固定的月租或年租费用后,能够无后顾之忧地使用数据流量。这样的服务到底有什么神奇之处,为什么越来越多的人选择它,我带你一起看看。 说到无限流量VPS,它的核心在于“无限流量”。想象一下,你的...