Pure Ftpd: Unterschied zwischen den Versionen

Aus Linupedia.org
Wechseln zu: Navigation, Suche
 
K (Quellen)
 
(24 dazwischenliegende Versionen von 4 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
 +
{{Infobox_Software|
 +
Name=PureFTPd
 +
|Screenshot=
 +
|Beschreibung=
 +
|Hersteller=
 +
|AktuelleVersion=1.0.21
 +
|AktuelleVersionFreigabeDatum= 21. Februar 2006
 +
|Betriebssystem=diverse Linux, Unix
 +
|Kategorie= File-Server
 +
|Lizenz= BSD-Lizenz
 +
|Deutsch=ja
 +
|Website=[http://www.pureftpd.org/project/pure-ftpd www.pureftpd.org]
 +
}}
 +
Autor: [http://www.yehudi.de Yehudi]
 +
 +
{{Box Test||
 +
* [[openSUSE]] 10.3
 +
* [[openSUSE]] 10.2
 +
* SUSE Linux 10.0
 +
* SUSE Linux 9.3
 +
* [[Fedora]] 7
 +
}}
 +
{{Box Wissen||
 +
* Umgang mit der [[Konsole]]
 +
* Verwendung von einem [[Paketmanager]] und Unterschiede von diesen
 +
}}
 +
 
Durch eine erweiterte Konfiguration mit Pure-ftpd kann der Server ausreichend/umfangreich abgesichert werden.
 
Durch eine erweiterte Konfiguration mit Pure-ftpd kann der Server ausreichend/umfangreich abgesichert werden.
  
Zeile 5: Zeile 32:
 
Mit Pure FTP können individuelle Einstellungen für diverse User gemacht werden, so dass es einem großen Teil von Internet-Providern zum Einsatz kommt.
 
Mit Pure FTP können individuelle Einstellungen für diverse User gemacht werden, so dass es einem großen Teil von Internet-Providern zum Einsatz kommt.
  
Mit Apt/Synaptic lässt sich der Dienst kinderleicht installieren. Wir geben „pure“ in die Suche von Synaptic ein, klicken es an, und apt erledigt alles von alleine, zu lösende Abhängigkeiten brauchen uns nicht weiter belasten.
+
== Installation ==
  
SuSE sollte nun als default Einstellung /srv/ftp/ gewählt haben.
+
Mit [[Apt]]/Synaptic lässt sich der Dienst kinderleicht installieren. Wir geben „pure“ in die Suche von Synaptic ein, klicken es an, und apt erledigt alles von alleine, zu lösende Abhängigkeiten brauchen uns nicht weiter belasten.
  
Um den Server zu starten nutzen wir den Befehl:
+
in der Konsole mit
 +
apt-get install pure-ftpd
 +
oder
 +
smart install pure-ftpd
 +
 
 +
== Konfiguration ==
 +
 
 +
[[openSUSE]] sollte nun als default Einstellung /srv/ftp/ gewählt haben.
 +
 
 +
Um den Server zu starten müssen wir nutzen wir als [[root]] den Befehl:
  
'''Code:'''
 
 
  pure-ftpd &
 
  pure-ftpd &
 +
 +
oder
 +
 +
rcpure-ftpd start
  
  
 
Und um das zu überprüfen:
 
Und um das zu überprüfen:
  
'''Code:'''
+
  ss -lp | grep ftp
  netstat -a | grep ftp
 
  
  
 
und stoppen tun wir das ganze mit dem Befehl:
 
und stoppen tun wir das ganze mit dem Befehl:
  
'''Code:'''
 
 
  killall pure-ftpd
 
  killall pure-ftpd
  
Zeile 30: Zeile 67:
  
 
Mit den Editierungen aus diesem Konfigurationsfile startet man mit der Konsolenaufforderung:
 
Mit den Editierungen aus diesem Konfigurationsfile startet man mit der Konsolenaufforderung:
'''Code:'''
 
  
 
  pure-conf.pl/etc/pure-ftpd/pureftpd.conf
 
  pure-conf.pl/etc/pure-ftpd/pureftpd.conf
Zeile 37: Zeile 73:
 
den Dienst.
 
den Dienst.
  
Um sich aber die Bequemlichkeit von Linux zu nutze zu machen, den Dämon bereits mit einschalten des PCs zu starten, muss im Runlevel-Editor, welcher in SuSE unter Yast in Systeme zu finden ist, im einfachen Modus ganz unkompliziert nur pure-ftpd auf Ja gesetzt werden.
+
Um sich aber die Bequemlichkeit von Linux zu nutze zu machen, den Dämon bereits mit einschalten des PCs zu starten, muss im Runlevel-Editor, welcher in [[openSUSE]] unter [[YaST]] in Systeme zu finden ist, im einfachen Modus ganz unkompliziert nur pure-ftpd auf Ja gesetzt werden.
  
In der Firewall muss hierfür ganz einfach nur der Port 21 unter TCP freigeschaltet werden.
+
In der [[Firewall]] muss hierfür ganz einfach nur der Port 21 unter TCP freigeschaltet werden.
  
 
Mit ftp ip-Adresse kann jetzt der Server getestet werden.
 
Mit ftp ip-Adresse kann jetzt der Server getestet werden.
Zeile 47: Zeile 83:
 
Werden in der zentralen Konfigurationsdatei Änderungen vorgenommen, dann müssen sie mit dem Befehl
 
Werden in der zentralen Konfigurationsdatei Änderungen vorgenommen, dann müssen sie mit dem Befehl
  
'''Code:'''
 
 
  rcpure-ftpd restart
 
  rcpure-ftpd restart
  
Zeile 58: Zeile 93:
  
 
Wollen wir den Anonymus aber aussperren, und nur noch dem Benutzern mit Passwort Zugang gewähren, so ändern wir in der pure-ftpd.conf die Zeile
 
Wollen wir den Anonymus aber aussperren, und nur noch dem Benutzern mit Passwort Zugang gewähren, so ändern wir in der pure-ftpd.conf die Zeile
'''Code:'''
 
  
 
  AnonymousOnly yes
 
  AnonymousOnly yes
Zeile 65: Zeile 99:
 
in
 
in
  
'''Code:'''
 
 
  AnonymousOnly no
 
  AnonymousOnly no
 
 
  
 
ChrootEveryone yes sollte niemals geändert werden, da sonst der besucher das Homeverzeichnis verlassen kann, und den Rest des PCs ausspionieren kann, auch wenn er auf Grund der Rechte, keinen Schaden am System verursachen kann.
 
ChrootEveryone yes sollte niemals geändert werden, da sonst der besucher das Homeverzeichnis verlassen kann, und den Rest des PCs ausspionieren kann, auch wenn er auf Grund der Rechte, keinen Schaden am System verursachen kann.
'''
 
Code:'''
 
Mit NoAnonymos yes
 
 
  
 +
Mit
 +
NoAnonymos yes
 
verweigert man den Zugriff der anonymen Besucher total.
 
verweigert man den Zugriff der anonymen Besucher total.
  
 
Um allen Benutzer einen gemeinsamen Ordner einzubinden, auf den alle zugreifen können, erstellen wir im Verzeichnis /srv/ den Ordner public.
 
Um allen Benutzer einen gemeinsamen Ordner einzubinden, auf den alle zugreifen können, erstellen wir im Verzeichnis /srv/ den Ordner public.
  
'''Code:'''
 
 
  mkdir -p /srv/public/
 
  mkdir -p /srv/public/
  
Zeile 86: Zeile 114:
 
Bei allen Benutzern erstellen wir ebenfalls diesen Ordner:
 
Bei allen Benutzern erstellen wir ebenfalls diesen Ordner:
  
'''Code:'''
 
 
  mkdir -p /home/yehudi/public/
 
  mkdir -p /home/yehudi/public/
  
Zeile 93: Zeile 120:
  
 
Dann binden wir sie mit dem Befehl:
 
Dann binden wir sie mit dem Befehl:
'''
+
 
Code:'''
 
 
  mount --bind /srv/public /home/yehudi/public
 
  mount --bind /srv/public /home/yehudi/public
  
Zeile 103: Zeile 129:
 
Unter root rufen wir in der Konsole mit dem Befehl kate das Programm auf, mit dem wir dann folgende Zeil zufügen:
 
Unter root rufen wir in der Konsole mit dem Befehl kate das Programm auf, mit dem wir dann folgende Zeil zufügen:
  
'''Code:'''
 
 
  /srv/public /home/yehudi/public none bind, auto, rw 0 0
 
  /srv/public /home/yehudi/public none bind, auto, rw 0 0
  
Zeile 111: Zeile 136:
 
Ein anderer Weg, Austauschverzeichnisse umzusetzen, bringt Pure-ftpd von Haus aus mit. Dazu muss in der Konfigurationsdatei ChrootEveryone ausdokumentiert sein
 
Ein anderer Weg, Austauschverzeichnisse umzusetzen, bringt Pure-ftpd von Haus aus mit. Dazu muss in der Konfigurationsdatei ChrootEveryone ausdokumentiert sein
  
'''Code:'''
 
 
  # ChrootEveryone  yes
 
  # ChrootEveryone  yes
  
Zeile 118: Zeile 142:
  
 
Dort wird dann
 
Dort wird dann
'''Code:'''
 
  
 
  public
 
  public
Zeile 126: Zeile 149:
 
eingegeben. Da mit dieser Methode alle User sich frei im Dateisystem bewegen können sei davon abgeraten.
 
eingegeben. Da mit dieser Methode alle User sich frei im Dateisystem bewegen können sei davon abgeraten.
  
Mit SuSE Linux werden alle Zugriffe unter /var/log/messages protokoliert. Mit dem Befehl
+
Mit [[openSUSE]] werden alle Zugriffe unter /var/log/messages protokoliert. Mit dem Befehl
  
'''Code:'''
 
 
  cat /var/log/messages | grep -i „ftp“
 
  cat /var/log/messages | grep -i „ftp“
  
Zeile 136: Zeile 158:
 
Mit
 
Mit
  
'''Code:'''
 
 
  /usr/sbin/pure-ftpwho
 
  /usr/sbin/pure-ftpwho
  
Zeile 144: Zeile 165:
 
Mit
 
Mit
  
'''Code:'''
 
 
  AnonymousBandwidth 8
 
  AnonymousBandwidth 8
 
  UserBandwith                        8
 
  UserBandwith                        8
 
  Quota                          1000:10
 
  Quota                          1000:10
  
--[[Benutzer:Yehudi|Yehudi]] 23:12, 16. Aug 2006 (CEST)
 
 
kann man festlegen mit wieviel kb/sec der Datendurchsatz für die User ist. (Hier 8kb/sec) Mit der Quota wird angeordnet, dass alle User 1000 Dateien bis zu 10MB ansammeln können.
 
kann man festlegen mit wieviel kb/sec der Datendurchsatz für die User ist. (Hier 8kb/sec) Mit der Quota wird angeordnet, dass alle User 1000 Dateien bis zu 10MB ansammeln können.
'''
+
 
Virtuelle Benutzer'''
+
== Virtuelle Benutzer ==
  
 
Ein weiteres Plus an Sicherheit ist, dass mit virtuellen Benutzern die ftp-User nicht an die User des Betriebssystems gebunden sind.
 
Ein weiteres Plus an Sicherheit ist, dass mit virtuellen Benutzern die ftp-User nicht an die User des Betriebssystems gebunden sind.
  
 
Mit 4 Befehlen wird eine entsprechende Gruppe angelegt:
 
Mit 4 Befehlen wird eine entsprechende Gruppe angelegt:
'''Code:'''
+
 
 
  group ftpgroup
 
  group ftpgroup
 
  useradd -g ftp -s
 
  useradd -g ftp -s
Zeile 167: Zeile 186:
 
In dem Konfig-File werden jetzt die FTP-User festgelegt:
 
In dem Konfig-File werden jetzt die FTP-User festgelegt:
  
'''Code:'''
 
 
  PureDB
 
  PureDB
           /etc/pure-ftpd/pureftpd.fdb
+
           /etc/pure-ftpd/pure-ftpd.fdb
  
  
 
Nach dem Neustart von Pure ist die bestehende Benutzerverwaltung abgekoppelt. Nun soll der User tux angelegt werden:
 
Nach dem Neustart von Pure ist die bestehende Benutzerverwaltung abgekoppelt. Nun soll der User tux angelegt werden:
  
'''Code:'''
 
 
  pure-pw useradd tux -j -u
 
  pure-pw useradd tux -j -u
 
       ftpuser -d /home/ftpuser/tux
 
       ftpuser -d /home/ftpuser/tux
  
 
Eine Übersicht über die Passwortdatei erhält man mit dem Befehl:
 
Eine Übersicht über die Passwortdatei erhält man mit dem Befehl:
'''
+
 
Code:'''
 
 
  pure-pw show tux
 
  pure-pw show tux
  
Zeile 186: Zeile 202:
 
Um die Benutzerdaten in Binärform zu übersetzen genügt:
 
Um die Benutzerdaten in Binärform zu übersetzen genügt:
  
'''Code:'''
 
 
  pure-pw mkdb
 
  pure-pw mkdb
  
  
 
Nun liegt der Benutzer in der Userdatenbank /etc/pure-ftpd/pureftpd.pdb
 
Nun liegt der Benutzer in der Userdatenbank /etc/pure-ftpd/pureftpd.pdb
 +
 +
== Quellen ==
 +
* PCWELT Linux(Ausgabe folgt noch)
 +
* http://www.pureftpd.org/project/pure-ftpd - offizielle Projekt-Homepage
 +
* http://www.pureftpd.de/ - deutsche Homepage
 +
* http://www.x-fish.org/tux_pureftpd00.html - Konfigurations-Anleitung
 +
* http://notes.twinwork.net/pureftpd/ - Konfiguration (englisch)
 +
* Frontends:
 +
** http://lkr.sourceforge.net/kcmpureftpd/ - kcmpureftpd
 +
** http://purify.sourceforge.net/ - PureAdmin
 +
* [[w:PureFTPd]]
 +
* [[l:PureFtpd]]
 +
* [[s:Pure-FTPd]]
 +
----
 +
[[ftp|zurück zur FTP Übersicht]]<br/>
 +
[[File-Server|zurück zur File-Server Übersicht]]<br/>
 +
 +
[[Kategorie:File Server]][[Kategorie:FTP]]
 +
[[Kategorie:Internet]]

Aktuelle Version vom 28. November 2013, 21:01 Uhr

PureFTPd

Basisdaten
Entwickler:
Aktuelle Version: 1.0.21
letzte Veröffentlichung: 21. Februar 2006
Betriebssystem: diverse Linux, Unix
Kategorie: File-Server
Lizenz: BSD-Lizenz
Deutschsprachig: ja
Webseite: www.pureftpd.org

Autor: Yehudi

Diese Beschreibung wurde mit folgenden Distributionen getestet:
Diese Anleitung setzt die Kenntnis folgender Artikel vorraus:


Durch eine erweiterte Konfiguration mit Pure-ftpd kann der Server ausreichend/umfangreich abgesichert werden.

Pure-ftpd bietet mit wenig Editierungen eine großartige Funktionalität

Mit Pure FTP können individuelle Einstellungen für diverse User gemacht werden, so dass es einem großen Teil von Internet-Providern zum Einsatz kommt.

Installation

Mit Apt/Synaptic lässt sich der Dienst kinderleicht installieren. Wir geben „pure“ in die Suche von Synaptic ein, klicken es an, und apt erledigt alles von alleine, zu lösende Abhängigkeiten brauchen uns nicht weiter belasten.

in der Konsole mit

apt-get install pure-ftpd

oder

smart install pure-ftpd

Konfiguration

openSUSE sollte nun als default Einstellung /srv/ftp/ gewählt haben.

Um den Server zu starten müssen wir nutzen wir als root den Befehl:

pure-ftpd &

oder

rcpure-ftpd start


Und um das zu überprüfen:

ss -lp | grep ftp


und stoppen tun wir das ganze mit dem Befehl:

killall pure-ftpd


Die Einstellungen sind in der Datei /etc/pure-ftpd/pureftpd.conf veränderbar.

Mit den Editierungen aus diesem Konfigurationsfile startet man mit der Konsolenaufforderung:

pure-conf.pl/etc/pure-ftpd/pureftpd.conf


den Dienst.

Um sich aber die Bequemlichkeit von Linux zu nutze zu machen, den Dämon bereits mit einschalten des PCs zu starten, muss im Runlevel-Editor, welcher in openSUSE unter YaST in Systeme zu finden ist, im einfachen Modus ganz unkompliziert nur pure-ftpd auf Ja gesetzt werden.

In der Firewall muss hierfür ganz einfach nur der Port 21 unter TCP freigeschaltet werden.

Mit ftp ip-Adresse kann jetzt der Server getestet werden.

Bis jetzt ist der Server als Anonymus zugänglich, und der Upload nur als Anonymus nicht erlaubt. Diese Einstellung sollte auch so beibehalten werden, oder den Anonymen Zugang komplett ausstellen. Da FTP-Server im Internet schnell bekannt werden, und missbraucht werden kann. Für alle Dateien, die sich auf einem Server befinden ist letztendlich der Betreiber verantwortlich.

Werden in der zentralen Konfigurationsdatei Änderungen vorgenommen, dann müssen sie mit dem Befehl

rcpure-ftpd restart


neu gestartet werden.

In der Defaulteinstellung wird bei Pure-ftpd die bereits bestehende Benutzerverwaltung des Betriebssystemes genutzt. Bei Linux ist es gewöhnlich eine Mischung aus /etc/passwd und /etc/shadow, mit der man sich auch auf dem PC als Benutzer sich einloggen kann.

Wer sich jetzt mit einem vorhandenen Benutzernamen und korrektem Passwort einloggt, der landet nun im Homeverzeichnis des Users. Als Anonymus, landet man in dem Verzeichnis /srv/ftp/.

Wollen wir den Anonymus aber aussperren, und nur noch dem Benutzern mit Passwort Zugang gewähren, so ändern wir in der pure-ftpd.conf die Zeile

AnonymousOnly yes


in

AnonymousOnly no

ChrootEveryone yes sollte niemals geändert werden, da sonst der besucher das Homeverzeichnis verlassen kann, und den Rest des PCs ausspionieren kann, auch wenn er auf Grund der Rechte, keinen Schaden am System verursachen kann.

Mit

NoAnonymos yes

verweigert man den Zugriff der anonymen Besucher total.

Um allen Benutzer einen gemeinsamen Ordner einzubinden, auf den alle zugreifen können, erstellen wir im Verzeichnis /srv/ den Ordner public.

mkdir -p /srv/public/


Bei allen Benutzern erstellen wir ebenfalls diesen Ordner:

mkdir -p /home/yehudi/public/


yehudi, wird durch die jeweiligen vorhandenen Benutzer des Systemes ausgetauscht. Die Verzeichnisse sollten für die schreibende Gruppe beschreibbar sein.

Dann binden wir sie mit dem Befehl:

mount --bind /srv/public /home/yehudi/public


jeweils ein.

Da man wir ja nicht jedes mal nach dem Einschalten des PCs wieder die Prozedur des mounten vornehmen wollen, automatisieren wir das Ganze. Unter root rufen wir in der Konsole mit dem Befehl kate das Programm auf, mit dem wir dann folgende Zeil zufügen:

/srv/public /home/yehudi/public none bind, auto, rw 0 0


Logischerweise muss dieser Vorgang für jeden Benutzer gemacht werden.

Ein anderer Weg, Austauschverzeichnisse umzusetzen, bringt Pure-ftpd von Haus aus mit. Dazu muss in der Konfigurationsdatei ChrootEveryone ausdokumentiert sein

# ChrootEveryone   yes


Nun muss in /etc/pure-ftp/pureftpd-dir-aliases erstellt werden.

Dort wird dann

public
/srv/public


eingegeben. Da mit dieser Methode alle User sich frei im Dateisystem bewegen können sei davon abgeraten.

Mit openSUSE werden alle Zugriffe unter /var/log/messages protokoliert. Mit dem Befehl

cat /var/log/messages | grep -i „ftp“


kann man sich alle log-Notizen zu ftp anschauen.

Mit

/usr/sbin/pure-ftpwho


kann man kontrollieren, wer gerade auf dem Rechner eingeloggt ist.

Mit

AnonymousBandwidth 8
UserBandwith                        8
Quota                           1000:10

kann man festlegen mit wieviel kb/sec der Datendurchsatz für die User ist. (Hier 8kb/sec) Mit der Quota wird angeordnet, dass alle User 1000 Dateien bis zu 10MB ansammeln können.

Virtuelle Benutzer

Ein weiteres Plus an Sicherheit ist, dass mit virtuellen Benutzern die ftp-User nicht an die User des Betriebssystems gebunden sind.

Mit 4 Befehlen wird eine entsprechende Gruppe angelegt:

group ftpgroup
useradd -g ftp -s
 /bin/false ftpuser
mkdir /home/ftpuser
chwn ftpuser /home/ftpuser


In dem Konfig-File werden jetzt die FTP-User festgelegt:

PureDB
          /etc/pure-ftpd/pure-ftpd.fdb


Nach dem Neustart von Pure ist die bestehende Benutzerverwaltung abgekoppelt. Nun soll der User tux angelegt werden:

pure-pw useradd tux -j -u
      ftpuser -d /home/ftpuser/tux

Eine Übersicht über die Passwortdatei erhält man mit dem Befehl:

pure-pw show tux


Um die Benutzerdaten in Binärform zu übersetzen genügt:

pure-pw mkdb


Nun liegt der Benutzer in der Userdatenbank /etc/pure-ftpd/pureftpd.pdb

Quellen


zurück zur FTP Übersicht
zurück zur File-Server Übersicht