Hits : 3619

Proftpd Mail Server :: Mini How To 


Contents


Proftpd


http://www.proftpd.org

http://www.proftpd.org/docs/

Highly configurable GPL-licensed FTP server software

top

Install


1.3.3c [29/Oct/2010]

# wget -c ftp://ftp.proftpd.org/distrib/source/proftpd-1.3.3c.tar.bz2
# tar jxvf proftpd-1.3.3c.tar.bz2
# cd proftpd-1.3.3c
# ./configure
# make
# make install


top

Config


/usr/local/etc/proftpd.conf

ServerName                      "ProFTPD Default Installation"
ServerType                      standalone
DefaultServer                   on
Port                            21
UseIPv6                         off
Umask                           022
MaxInstances                    30
User                            nobody
Group                           nogroup
AllowOverwrite          on
<Limit SITE_CHMOD>
  DenyAll
</Limit>
<Anonymous ~ftp>
  User                          ftp
  Group                         ftp
  UserAlias                     anonymous ftp
  MaxClients                    10
  DisplayLogin                  welcome.msg
  DisplayChdir                  .message
  <Limit WRITE>
    DenyAll
  </Limit>
</Anonymous>


top


To verify that our configuration file is valid, we simple run:

proftpd -t


for example in my archlinux box:

# proftpd -t
Checking syntax of configuration file
 - Fatal: Group: Unknown group 'nogroup' on line 30 of '/usr/local/etc/proftpd.conf'


so i should fix it:

# sed -r -i 's/(nobody|nogroup)/ftp/' /usr/local/etc/proftpd.conf


# proftpd -t
Checking syntax of configuration file
Syntax check complete.

Run 


Simple we just run (you must be root) :

# proftpd


ps -ef | grep pro[f]tpd


or even better:

pgrep proftpd


top

Debug


Before you start your proftpd installation, you should first debug proftpd to catch common errors:

# proftpd -n -d 1


Check your modules:

# proftpd -l


View all your settings:
eg. (in my linux box):

Formatter "highlight/html" not found

top


Verify


Formatter "highlight/html" not found

top

Virtual Users


O proftpd ftp server έχει την δυνατότητα να υποστηρίζει virtual users. Αυτό μας δίνει την δυνατότητα για 2 πράγματα:
  1. Όταν έχουμε πραγματοποιήσει εγκατάσταση σε ένα chroot περιβάλλον
  2. Όταν θέλουμε να υποστηρίζουμε πολλαπλά virtual host και πολλαπλούς χρήστες χωρίς να χρειάζεται να "πειράζουμε" το σύστημά μας.

Η προσθήκη χρηστών είναι εξαιρετικά εύκολη και απλή, απλά χρειάζεται να δημιουργήσουμε με το πρόγραμμα ftpasswd,
που βρίσκεται εντός του λογισμικού μας, ένα παρόμοιο αρχείο με το /etc/passwd.

Παράδειγμα χρήσης:

ftpasswd --passwd --name ftpuser --home=/tmp/ --shell=/bin/bash  --uid=10001


Θα μας ζητήσει να δώσουμε το συνθηματικό του χρήστη και θα παράγει ένα αρχείο: ftpd.passwd
Τώρα το μόνο που μένει είναι να δηλώσουμε στο αρχείο ρυθμίσεων του proftpd μας το αρχείο με την ακριβή του διαδρομή.
Με λίγα λόγια προσθέτουμε μία γραμμή στο proftpd.conf ως εξής:

AuthUserFile  /usr/local/etc/ftpd.passwd


Και επανεκκινούμε τον proftpd

top