ProFTPd

Aus Wiki
Zur Navigation springen Zur Suche springen

Allgemein

proFTPd (http://www.proftpd.org) ist ein sicherer und "full-featured" FTP-Server. Analog zu →VsFTPd wird proFTPd ebenfalls via ipkg installiert. ProFTPd bietet allerdings mehr Features und Konfigurationsmöglichkeiten als →VsFTPd Für weitere Details siehe →Generelle Infos.

Installation

Zum Installieren wie gehabt:

ipkg update
ipkg install proftpd


Generelle Konfiguration

Editieren der Konfigurationsdatei:

vi /opt/etc/proftpd.conf 

Folgenden Eintrag auskommentieren, damit jeder FTP-User nur in "seinem" Home-Verzeichnis gefesselt wird (chroot), anstatt auf alle Dateien der NSLU Zugriff zu haben:

DefaultRoot                     ~

Servername, der nach der Verbindungsaufnahme noch vor dem login angezeigt wird, evtl. abändern - z.B.:

ServerName                      "FTP-Server"

Folgende Konfigurations Optionen einfügen:

UseReverseDNS                   off
IdentLookups                    off

im oberen Bereich ergänzen (nicht ans Ende anhängen), sodass der Beginn der Konfigurationsdatei z.B. so aussieht:

ServerName                      "FTP-Server"
ServerType                      standalone oder inetd (→siehe Konfiguration der Betriebsart)
DefaultServer                   on
WtmpLog                         off
UseReverseDNS                   off
IdentLookups                    off
 

Es empfiehlt sich, aus Sicherheitsgründen den Root-Zugang via FTP zu deaktivieren. Dazu im Bereich <Global> folgende Konfigurationsoption setzen:

RootLogin Off

Optional:

Deaktivieren des Anonymen-Zugangs:

vi /opt/etc/proftpd.conf

Den kompletten Anonymous-Bereich auskommentieren:

#<Anonymous ~ftp>
#...
#</Anonymous>

Konfiguration der Betriebsart

Im Gegensatz zu →bftpd und →VsFTPd kann proFTPd entweder als Standalone Server oder mittels →xinetd betrieben werden. Wenn proFTPd als Standalone-Server betrieben wird, entfällt die Ladezeit, allerdings verbraucht proFTPd auch dann Sytem-Resourcen, wenn kein User eingeloggt ist. Im folgenden werden beide Betriebsarten beschrieben, die Wahl der Betriebsart liegt schließlich beim Systemverwalter. Es kann auch später zwischen den Betriebsarten gewechselt werden, sodass die für den speziellen Einsatzfall passende Lösung ermittelt werden kann.

Betrieb mittels xinetd

Voraussetzung:

  • xinetd installiert und konfiguriert

Der FTP-Server proFTPd wird vom → xinetd (extended Internet Daemon) gestarted und nach dem Beenden der Verbindung wieder beendet. D.h. wenn keine Verbindung besteht, verbraucht der FTP-Server keinerlei Systemresourcen (weder Speicher noch CPU-Zeit). Damit der proFTPd vom Internet Daemon gestarted wird, muß ihm dies in Form einer Serverdefinitionsdatei mitgeteilt werden.


Bei der Installation wurde bereits eine xinetd Datei für proFTPd angelegt. Falls später ein Zugriff auf den FTP-Server aus dem Internet stattfinden soll, sollte ein "only_from" Statement eingefügt werden (für weitere Hinweise siehe auch →xinetd).

vi /opt/etc/xinetd.d/proftpd

Statement ergänzen:

only_from = 0.0.0.0/0

sodass dieses File so aussieht:

#
# ProFTPd FTP daemon - http://www.proftpd.org
#
service ftp
{
      flags            = REUSE
      socket_type      = stream
      instances        = 30
      wait             = no
      user             = root
      server           = /opt/sbin/proftpd
      server_args      = --config /opt/etc/proftpd.conf
      log_on_success   = HOST PID
      log_on_failure   = HOST
      disable          = no
      only_from        = 0.0.0.0/0
}

Neustarten von xInetd damit die Änderungen wirksam werden:

/opt/etc/init.d/S10xinetd

Anpassen/checken des Servertyps in Konfigurationsdatei:

vi /opt/etc/proftpd.conf

Eintrag checken/ändern:

ServerType  inetd

Es sollte kein Startscript für proFTPd unter /opt/etc/init.d vorhanden sein. Dies ist nur für den Standalone-Betrieb nötig und stört hier eher.

rm /opt/etc/init.d/S58proftpd

→Weiter zur Benutzerverwaltung


Betrieb als Standalone Server

Für den Standalone-Betrieb von proFTPd ist kein xinetd nötig. Falls dieser installiert ist, muß in der proFTPd-Definitionsdatei der proFTPd deaktiviert werden, da xinetd ansonsten bei einer FTP-Anfrage versucht, proFTPd zu starten, obwohl dieser bereits als Standalone-Server läuft. Dies führt unweigerlich zu Fehlern.

vi /opt/etc/xinetd.d/proftpd

proFTPd disablen:

disable = yes

Neustarten von xinetd:

/opt/etc/init.d/S10xinetd

Anpassen/checken des Servertyps in Konfigurationsdatei:

vi /opt/etc/proftpd.conf

Eintrag checken/ändern:

ServerType  standalone

Zum Start von proFTPd ist noch ein Startscript nötig, damit dieser auch nach einem Reboot der NSLU gestartet wird. Dieses befindet sich bereits auf der NSLU und muß lediglich ins korrekte Verzeichnis kopiert werden:

cp /opt/doc/proftpd/S58proftpd /opt/etc/init.d


Einrichten der User

User via Weboberfläche anlegen

User via Weboberfläche der NSLU einrichten (hier beispielhaft User:ftpuser):

  • Weboberfläche der NSLU im Webbrowser öffnen.
  • In den Bereich "Administration" wechseln (evtl. Benutzername und Passwort des Admin-Users eingeben)
  • In's Untermenü "Users" wechseln
  • Folgende Daten eingeben:
Name: ftpuser
Comment: z.B. FTP-User
Passwort/Verify Passwort: FTP_PWD
Create Private Folder: aktivieren

Setzen des Home-Verzeichnis

Damit ein Login via FTP klapp, muss noch das HOME-Verzeichnis in der zentralen Nutzer/Passwort-Datei /etc/passwd ergänzt werden.

vi /etc/passwd

Die Einträge in der Passwort-Datei sind nach folgendem Schema aufgebaut:

username:pwd:uid:gid:Kommentar:Home-Verzeichnis:Login-Shell

Nach dem eben angelegten User ftpuser suchen und das Home-Verzeichnis anpassen: Originaleintrag:

ftpuser:FTP_PWD:2005:501:FTP-User::/dev/null

abändern in:

ftpuser:FTP_PWD:2005:501:FTP-User:/ftpuser:/dev/null

Bei allen Nutzern die via FTP berechtigt sein sollen, sich einzuloggen, das entsprechende HOME-Verzeichnis ergänzen.

Hinweis:
Wenn z.B. das Passwort eines Users via Weboberfläche geändert wird, oder jede sonstige Änderung an den Einstellungen eines Users, wird das Homeverzeichnis zurückgesetzt. D.h. es muss gemäß obiger Anleitung erneut angepasst werden, ansonsten klappt der FTP-Zugang nicht mehr.


Ausslchuß bestimmter User

Aus Sicherheitsgründen ist es möglich - und empfehlenswert - bestimmte User (root, guest, mail, ...) von einer FTP-Anmeldung auszuschließen, unabhängig ob ein Home-Verzeichnis gesetzt ist oder nicht. Diese auszuschließenden User werden in der Datei /opt/etc/ftpusers angegeben.

vi /opt/etc/ftpusers

Darin alle auszuschließenden User eingeben (pro Zeile ein Username) Z.B.:

root
admin
guest
nobody
mail
spamd
ftp


FTP-Zugang testen

  • Mittels FTP-Programm:
    • FTP-Programm öffnen
    • Server-Adresse: IP_DER_NSLU
    • User: ftpuser
    • Passwort: FTP_PWD
    • Verbindung herstellen
    • Es sollte kein Fehler gemeldet werden und der Verzeichnisinhalt sollte zu sehen sein
  • Mittels Webbrowser:


SSL-Verschlüsselung

Optional kann SSL-Verschlüsselung verwendet werden, um Passwort und/oder Daten verschlüsselt zu übertragen. Dies erhöht die Sicherheit enorm. Um SSL zu aktivieren, sind umfangreiche Einstellungen nötig.


Voraussetzung:

OpenSSL installiert und konfiguriert


Erzeugen der Schlüssel und Zertifikate

Wichtige Hinweise:

Für die SSL-Zertifikate sind einige Parameter wichtig. Diese sind:

  • C (country:2 Zeichen)
  • ST (State/Provinz)
  • L (Locality/Ort)
  • O (Organisation)
  • OU (Organisational Unit)
  • CN (Common Name)

Im folgenden müssen Schlüssel und Zertifikate für den eigenen Server erstellt werden. Zu beachten ist, dass der Common Name, Organisation und Organisational Unit jeweils unterschiedlich bei CA und Server gewählt werden (→ siehe auch Anmerkungen CA). Ansonsten kann es zu Problemen kommen, die bis dahin reichen, dass das erstellen der Zertifikate mit einem kryptischen Fehler abbricht.

Beim Serverzertifikat muss unbedingt der Common Name (CN) des Zertifikates mit der Domain des Servers (→ i.A. Dynamic DNS-Adresse) bzw. genauer des Hostnamens übereinstimmen. Andernfalls wird der FTP-Client beim Besuch der Seite diese Diskrepanz jedesmal anmahnen.

Die Zertifikate haben - im Gegensatz zu den Keys - eine begrenzete Gültigkeitsdauer. Diese beträgt standardmäßig 365 Tage. D.h. Das Zertifikat wird nach einem Jahr ungültig und muß neu erstellt werden. Die Gültigkeit kann allerdings mit Hilfe des Parameters -days auf einen beliebigen Wert gesetzt werden.

Die Keys und Zertifikate haben ein Passwort zum Schutz vor fremden Zugriff. Für eine Serveranwendung ist dieser Schutz leider etwas hinderlich, da erst das Passwort eingegeben werden müßte, bevor der Apache-Server komplett starten würde. Dies wäre nach jedem Neustart von Apache und damit auch des Servers erforderlich. Deshalb wird hier der Passwortschutz von den Zertifiakten entfernt. D.h. wenn ein Fremder die Zertifikate in die Hände bekommen würde, könnte er evtl. die Kommunikation zwischen Server und Webbrowser belauschen.


Generierung SSL.Key:

cd /opt/etc/ssl/key
openssl genrsa -des3 -out proftpd.key 1024
Hinweis: Passwort key_pwd muss vergeben werden 

Entfernen des Passworts key_pwd:

mv proftpd.key proftpd.key.orig
openssl rsa -in proftpd.key.orig -out proftpd.key
chmod 600 proftpd.key

Erzeugung Certificate Signing Request (CSR):

Wichtig: Bei der Frage nach dem Common Name (CN), den Domainnamen (→ z.B. Dynamic DNS - Domain) angeben. Ansonsten "meckert" der Browser bzw. FTP-Client später, dass angesurfte Webseite und Zertifikat nicht zusammen passen.
openssl req -new -key proftpd.key -out proftpd.csr

Folgende Eingaben sind notwendig (Bitte Organization Name und -Unit sowie Common Name abändern siehe Anmerkungen oben):

Country Name: de
State or Province Name: de
Locality Name: .
Organization Name: private
Organizational Unit Name: server
Common Name: domain 
Email Address: .
A challenge password: .
An optional company name: .

Zertifikat signieren:

Ins CA-Verzeichnis wechseln:

cd ../ca

Signieren (Abfragen mit y bestätigen):

openssl ca -config ca.config -out ../cert/proftpd.crt -infiles ../key/proftpd.csr

Verifizieren:

openssl verify -CAfile ca.crt ../cert/proftpd.crt

Ausgabe sollte folgendermaßen aussehen:

../cert/proftpd.crt: OK


Zertifikate kopieren

ProFTPd erwartet die Zertifikate im Unterverzeichnis /opt/etc/ftpd. Deshalb müssen die eben erzeugten Zertifikate dorthin kopiert werden.

cp /opt/etc/ssl/ca/ca.crt /opt/etc/ftpd
cp /opt/etc/ssl/key/proftpd.key /opt/etc/ftpd
cp /opt/etc/ssl/cert/proftpd.crt /opt/etc/ftpd

Konfiguration von xinetd

Damit sowohl "normaler", als auch SSL-verschlüsselter FTP-Zugriff sowohl von externen FTP-Clients (aus dem Internet), als auch intern funktioniert, muß ein sog. Virtueller FTP-Server (Virtualhost) angelegt werden. Der externe Zugriff läuft über einen eigenen Port (z.B. 2021, kann frei gewählt werden) via Virtualhost und der interne Zugriff weiterhin auf Port 21. Der Zugriff aus dem Internet soll natürlich weiterhin via Standardport 21 erfolgen. D.h. der DSL-Router muß Port 21 von extern an Port 2021 der NSLU weiterleiten. Für diesen Zweck sind einige Konfigurationsoperationen an mehreren Dateien nötig.

Die folgenden Schritte dieses Abschnitts sind nur erforderlich, falls proFTPd via →xinetd betrieben wird.

Neuen externen FTP-Service z.B. ftpext definieren, der auf Port 2021 liegt:

vi /etc/services

folgende Zeile einfügen:

ftpext		2021/tcp			# External FTP

proFTd xinetd-Konfigurationsdatei editieren:

vi /opt/etc/xinetd.d/proftpd

Folgende Zeilen ans Ende der Datei anfügen, um den zusätzlichen Service zu definieren. Damit "lauscht" der xinetd auch auf Port 2021 und startet bei Bedarf proFTPd:

service ftpext
{
      flags            = REUSE
      port             = 2021
      socket_type      = stream
      instances        = 30
      wait             = no
      user             = root
      server           = /opt/sbin/proftpd
      server_args      = --config /opt/etc/proftpd.conf
      log_on_success   = HOST PID
      log_on_failure   = HOST
      disable          = no
      only_from        = 0.0.0.0/0
}

Neustarten von xinetd:

/opt/etc/init.d/S10xinetd

Konfiguration von proFTPd für SSL

proFTPd Konfiguration anpassen:

vi /opt/etc/proftpd.conf

Folgende Zeilen im Bereich Global (zwischen <Global> ... </Global>) ergänzen:

<IfModule mod_tls.c>
	
	TLSLog /opt/var/proftpd/tls.log
       
# Clients are required to use FTP over SSL/TLS when talking to this server
# off  - clients can connect using insecure FTP or secure FTP/SSL
# ctrl - encrypt only the ctrl channel using FTP/SSL
# data - encrypt only the data channel using FTP/SSL (not recommended)
# on   - encrypt both the ctrl and data channels using FTP/SSL
	TLSRequired off

# Server's certificate
	TLSRSACertificateFile /opt/etc/ftpd/proftpd.crt
	TLSRSACertificateKeyFile /opt/etc/ftpd/proftpd.key

# CA the server trusts
	TLSCACertificateFile /opt/etc/ftpd/ca.crt

# Authenticate clients that want to use FTP over SSL/TLS
# off - client SSL certificates are not requried
# on  - client SSL certificates are required 
	TLSVerifyClient off
</IfModule>

und im oberen Bereich (vor Global):

<IfModule mod_tls.c>
       TLSEngine on
# Set the TLSProtocol to one of the following
# SSLv23 - Use SSL3 for ctrl and TLS1 for data channels (works with most clients)
# SSLv3  - Use only SSL3
# TLSv1  - Use only TLS1
	TLSProtocol SSLv23
</IfModule>

Die Einträge TLSProtocol, TLSRequired und TLSVerifyClient entsprechend den Anforderungen anpassen.

Achtung:
Wird TLSREQUIRED auf ctrl,data oder on gesetzt, sind nur noch SSL-verschlüsselte Verbindungen möglich, die nicht alle FTP-Clients unterstützen. Andererseits erhöhen diese Einstellungen die Sicherheit, da keine unverschlüsselte Verbindung möglich ist. Die Auswahl der Einstellung obliegt dem angedachten Einsatzzweck des Servers.


Ans Ende der Konfigurationsdatei noch den folgenden Virualserver-Block einfügen:

#External Virtual SSL-FTP-Server
<VirtualHost 192.168.0.221>
ServerName			"Private FTP server"
Port				2021
IdentLookups                   off
Umask				027
AllowOverwrite                 on
DefaultRoot                    ~
PassivePorts                    60019 60049
MasqueradeAddress               Dynamic-DNS-Domain

<IfModule mod_tls.c>
TLSEngine                      on

</IfModule>
</VirtualHost>


Mittels MasqueradeAddress wird proFTPd angewiesen, die externe Dyndns-Domain zu übertragen, anstatt der internen IP-Adresse der NSLU. Deshalb diesen Eintrag mit der registrierten Dynamic DNS-Adresse ersetzen. Mit dem Eintrag PassivePorts wird prFTPd angewiesen, einen bestimmten Port aus dem Bereich 50019 bis 50039 zu verwenden.


Test der SSL-Verbindung Intern

Die Webbrowser Firefox und Internetexplorer beherrschen FTP nur in der Klartext-Version (kein SSL).

  • FTP-Programm öffnen
  • Server-Adresse: IP_DER_NSLU
  • Protokoll: FTPES - FTP über explizites TLS/SSL
  • User: ftpuser
  • Passwort: FTP_PWD
  • Verbindung herstellen
  • Es sollte kein Fehler gemeldet werden und der Verzeichnisinhalt sollte zu sehen sein
Hinweis:
  • Protokoll: Manche FTP-Clients bieten neben FTPES (explizites TLS/SSL) auch FTPS (implizites TLS/SSL), das allerdings mit proFTPd nicht funktioniert
  • Dies testet die interne SSL-Verbindung. Die externe Verbindung muß im folgenden Kapitel erst konfiguriert werden, bevor er im darauf folgenden Kapitel getestet werden kann.


Test der externen SSL-Verbindung

Analog den Angaben im Kapitel →FTP Internetfreigabe eine Portweiterleitung im DSL-Ruter anlegen mit folgenden Daten:

Bezeichnung: z.B. FTP-Passiv
Protokoll: TCP
Von Port: 60019
Bis port: 60049
An IP-Adresse: IP_DER_NSLU
An Port: 60019 bis 60049

Eine weitere:

Bezeichnung: z.B. FTP-SSL-Server
Protokoll: TCP
von Port: 21
An IP-Adresse: IP_DER_NSLU
An Port: 2021

Die Webbrowser Firefox und Internetexplorer beherrschen FTP nur in der Klartext-Version (kein SSL) deshablb taucht hier kein Punkt für einen Test mittels Webbrowser auf.

  • FTP-Programm öffnen
  • Server-Adresse: DYNDNS-DOMAIN
  • Protokoll: FTPES - FTP über explizites TLS/SSL
  • User: ftpuser
  • Passwort: FTP_PWD
  • Verbindung herstellen
  • Es sollte kein Fehler gemeldet werden und der Verzeichnisinhalt sollte zu sehen sein
Hinweis zum Protokoll:
Manche FTP-Clients bieten neben FTPES (explizites TLS/SSL) auch FTPS (implizites TLS/SSL), das allerdings mit proFTPd nicht funktioniert


Beispielkonfiguration

Hier sollen zwei komplette Beispielkonfigurationsfiles vorgestellt werden, die alle oben genannten Punkte enthalten.

Beispiel: FTP-Server

ServerName			"FTP-Server"
ServerType			inetd
DefaultServer			on
WtmpLog                        off

UseReverseDNS                  off
IdentLookups                   off

# Port 21 is the standard FTP port.
Port				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			10 


<Global>
 RootLogin Off
 RequireValidShell off
 AuthUserFile /etc/passwd
 AllowStoreRestart on
#  TransferRate RETR 25
#  TransferRate APPE,STOR 100:2048

</Global>


# Set the user and group under which the server will run.
User				nobody
Group				nobody

# To cause every FTP user to be "jailed" (chrooted) into their home
# directory, uncomment this line.
DefaultRoot 			~

# 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 ~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			5
#
#  # 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>


Beispiel: SSL-FTP-Server

# 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			"FTP-Server"
ServerType			inetd
DefaultServer			on
WtmpLog                        off

UseReverseDNS                  off
IdentLookups                   off

<IfModule mod_tls.c>
TLSEngine                      on
TLSProtocol			SSLv23

</IfModule>

# Port 21 is the standard FTP port.
Port				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			10 


<Global>
 RootLogin Off
 RequireValidShell off
 AuthUserFile /etc/passwd
 AllowStoreRestart on
#  TransferRate RETR 25
#  TransferRate APPE,STOR 100:2048


<IfModule mod_tls.c>
       TLSLog /opt/var/proftpd/tls.log
# Set the TLSProtocol to one of the following
# SSLv23 - Use SSL3 for ctrl and TLS1 for data channels (works with most clients
# SSLv3  - Use only SSL3
# TLSv1  - Use only TLS1
#        TLSProtocol SSLv23 

# Clients are required to use FTP over SSL/TLS when talking to this server
# off  - clients can connect using insecure FTP or secure FTP/SSL
# ctrl - encrypt only the ctrl channel using FTP/SSL
# data - encrypt only the data channel using FTP/SSL (not recommended)
# on   - encrypt both the ctrl and data channels using FTP/SSL
       TLSRequired off

# Server's certificate
       TLSRSACertificateFile /opt/etc/ftpd/proftpd.crt
       TLSRSACertificateKeyFile /opt/etc/ftpd/proftpd.key

# CA the server trusts
       TLSCACertificateFile /opt/etc/ftpd/ca.crt

# Authenticate clients that want to use FTP over SSL/TLS
# off - client SSL certificates are not requried
# on  - client SSL certificates are required
       TLSVerifyClient off
</IfModule>
</Global>


# Set the user and group under which the server will run.
User				nobody
Group				nobody

# To cause every FTP user to be "jailed" (chrooted) into their home
# directory, uncomment this line.
DefaultRoot 			~

# 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 ~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			5
#
#  # 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>

#External Virtual SSL-FTP-Server
<VirtualHost 192.168.0.221>
ServerName			"FTP-Server"
Port				21
IdentLookups                   off
Umask				027 
AllowOverwrite                 on
DefaultRoot                    ~
PassivePorts 			60019 60049
MasqueradeAddress              schiele.homelinux.org

<IfModule mod_tls.c>
TLSEngine                      on 

</IfModule>
</VirtualHost>