Debian ProFTP: Unterschied zwischen den Versionen

Aus Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 67: Zeile 67:


==Optional: FTP-Server aus dem Internet erreichbar==
==Optional: FTP-Server aus dem Internet erreichbar==
Um den FTP-Server aus dem Internet erreichbar zu machen, muß der Port 21 im DSL-Router an die IP-Adresse des Servers weitergeleitet werden.
Um den FTP-Server aus dem Internet erreichbar zu machen, muß der Port 21 und die Passive-Ports 60019...60049 im DSL-Router an die IP-Adresse des Servers weitergeleitet werden.
Zusätzlich ist eine kleine Anpassung an der Konfiguration erforderlich:
Zusätzlich ist eine kleine Anpassung an der Konfiguration erforderlich:
  vi /etc/proftpd/proftpd.conf
  vi /etc/proftpd/proftpd.conf
Den Eintrag '''''MasqueradeAddress''' auf die Dyndns-Adresse z.B. '''Domain.org''' setzen:
Den Eintrag '''''MasqueradeAddress''' auf die Dyndns-Adresse z.B. '''Domain.org''' setzen:
  MasqueradeAddress  '''Domain.org'''
  MasqueradeAddress  '''Domain.org'''

Version vom 29. Juni 2009, 05:47 Uhr

Allgemein

proFTPd (http://www.proftpd.org) ist ein sicherer und "full-featured" FTP-Server.


Installation

apt-get update
apt-get install adduser proftpd

Nach dem Download startet ein Script, das nachfrägt, ob proFTPd from inetd oder standalone laufen soll. Bei niedrigem FTP-Aufkommen sollte from inetd gewählt werden, da der Server dann nur bei Bedarf gestartet wird und nicht permanent Ressourcen verbraucht.

Konfigurtion

Der FTP-Server ist bereits relativ gut vorkonfiguriert, so dass nur kleinere Anpassungen nötig sind:

vi /etc/proftpd/proftpd.conf

Folgenden Änderungen durchführen:

Damit Proftpd erst seine Welcome-Meldung ausgibt, nachdem der User sein Passwort eingegeben hat, folgende Option on setzen

DeferWelcome       on

Definition der für passives FTP benutzten Ports:

PassivePorts       60019 60049

Damit sich angemeldete User nur in Ihrem zugewiesenen home-Verzeichnis bewegen können folgende option auskommentieren (#-Zeichen am Anfang der Zeile entfernen):

DefaultRoot        ~

Damit sich User einloggen können, die keine Login-Shell haben, folgende Option auskommentieren:

RequireValidShell  off

Der User root sollte aus Sicherheitsgründen nicht loginberechtigt sein. Deshalb folgende Option ergänzen (nach dem Eintrag DefaultRoot):

RootLogin          off

Nur die User, die der Gruppe ftpusers (siehe nächster Abschnitt) angehören, sollen berechtigt werden, sich per ftp anzumelden. Folgende Zeilen unmittelbar vor dem ersten <IfModule ...> - Eintrag einfügen:

# Login nur von Mitgliedern der Gruppe ftpuser erlauben
<Limit LOGIN>
  DenyGroup !ftpusers
</Limit>


User anlegen

Alle User, die sich per ftp anmelden können sollen, müssen der Gruppe ftpusers angehören (siehe vorhergehendes Kapitel). Neue angelegte User können direkt dieser Grppe zugeordnet werden bzw. bereits bestehende dieser zugefügt werden.

Es ist möglich, für ftp spezielle User anzulegen, die sich nur via ftp anmelden können, nicht aber an einer shell (z.B. via putty) (siehe nicht loginberechtiger User). Alle User, die sich nicht per Shell anmelden können sollen, sollten als nicht loginberechtigte User angelegt werden.

addgroup ftpusers

Im folgenden werden die beiden Möglichkeiten beschrieben am Beispiel des users ftpuser (bei Bedarf ftpuser und /home/ftpuser anpassen. Das /home/ - Verzeichnis eines Users sollte üblicherweise identisch mit dem Usernamen sein):

Loginberechtigter User:

adduser --home /home/ftpuser --shell /bin/bash --ingroup ftpusers ftpuser

Nicht loginberechtigter User

adduser --home /home/ftpuser --shell /bin/false --ingroup ftpusers --disabled-login ftpuser

Die beiden Befehle fragen einige Details (z.B. Passwort) zum neuen User ab.


Bereits vorhandene User (z.B. user_old der Gruppe ftpusers zufügen:

adduser user_old ftpusers


Funktionstest

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


Optional: FTP-Server aus dem Internet erreichbar

Um den FTP-Server aus dem Internet erreichbar zu machen, muß der Port 21 und die Passive-Ports 60019...60049 im DSL-Router an die IP-Adresse des Servers weitergeleitet werden. Zusätzlich ist eine kleine Anpassung an der Konfiguration erforderlich:

vi /etc/proftpd/proftpd.conf

Den Eintrag MasqueradeAddress auf die Dyndns-Adresse z.B. Domain.org setzen:

MasqueradeAddress   Domain.org