PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : DenyHosts für FTP-Absicherung



AndreasMeier
03.11.09, 21:20
Hallo zusammen,

bei mir läuft DenyHosts erfolgreich zur Absicherung des SSH-Zugangs.
Funktioniert einwandfrei.

Jetzt möchte ich zusätzlich einen FTP-Zugang damit absichern, find allerdings nichts, wie ich FTP mit überwachen lassen kann.

Der FTP-Server wird über den Xinetd gestartet, quasi als Wrapper.

Wie kann ich DenyHosts so konfigurieren, dass er den FTP-Server mit überwacht?

Bei Heise war ein Artikel (http://www.heise.de/security/artikel/DenyHosts-271028.html), wie man mit DenyHosts SSH (aber auch FTP) absichern kann.
Leider war der Artikel nur auf SSH zugeschnitten. Aber die FTP-Möglichkeit war zumindest erwähnt (siehe Link, dann mittlerer Absatz):


DenyHosts ist nicht auf SSH allein beschränkt, prinzipiell schützt es auch andere Dienste,
die ein Login oder eine Authentifizierung erfordern, etwa FTP, Telnet und SMTP.



Danke und Gruß
Andreas

Jigsore
04.11.09, 08:57
ob da nun ssh oder ftpd drinsteht, macht doch keinen Unterschied?
Sollten ftp/ftpd nicht funktionieren (Ubuntu), probier den Namen des FTP Daemons.

AndreasMeier
04.11.09, 09:36
Das Problem ist, dass DenyHosts erstmal nur für SSH konfiguriert ist, aber über die


USERDEF_FAILED_ENTRY_REGEX

zusätzliche Konfigurationsmöglichkeiten bietet.

Soweit bin ich schonmal gekommen.

Nun hab ich hier (http://osdir.com/ml/security.denyhosts.user/2007-09/msg00003.html) auch noch den Fall gefunden, wenn Login-Versuche in der /var/log/messages protokolliert werden:


USERDEF_FAILED_ENTRY_REGEX=.* vsftpd.* authentication failure.*rhost=(?P<host>\S+) user=(?P<user>\S+).*


Hab ich in die DenyHosts eingefügt, geht aber noch nicht.

In der /var/log/auth.log taucht aber folgender Eintrag auf, der dem o.g. Link sehr ähnlich sieht und eigentlich den Block hätte auslösen sollen:


vsftpd: pam_unix(vsftpd:auth): authentication failure; logname= uid=0 euid=0 tty=ftp ruser=ftp rhost=xxx.xxx.xxx.xxx user=ftp


Jetzt weiß ich nicht, was an der USERDEF-Expression nicht funktioniert. Kann mir hier jemand dabei aushelfen?

Danke und Gruß
Andreas

AndreasMeier
07.11.09, 08:14
Hat noch keiner von euch DenyHosts verwendet, oder nur zur SSH-Absicherung?

Gibts ein anderes Tool, was ähnlich arbeitet und mehrere Services abdeckt ?

Jigsore
08.11.09, 13:25
Ich nutze deny/allow hosts eigentlich nur manuell wenn überhaupt.

Eher kommt eher (nur) iptables zum einsatz, evtl. in Verbindung mit Ossec oder Snort(inline).

/dev/null_Peter
09.11.09, 07:40
Gibts ein anderes Tool, was ähnlich arbeitet und mehrere Services abdeckt ?

Hi Andreas,

ich nutze für diesen Zweck schon recht lange fail2ban. In dessen conf werden folgende Möglichkeiten für ftp-Überwachung angeboten:



[proftpd-iptables]

enabled = false
filter = proftpd
action = iptables[name=ProFTPD, port=ftp, protocol=tcp]
sendmail-whois[name=ProFTPD, dest=you@mail.com]
logpath = /var/log/proftpd/proftpd.log
maxretry = 6
...

[vsftpd-notification]

enabled = false
filter = vsftpd
action = sendmail-whois[name=VSFTPD, dest=you@mail.com]
logpath = /var/log/vsftpd.log
maxretry = 5
bantime = 1800

# Same as above but with banning the IP address.

[vsftpd-iptables]

enabled = false
filter = vsftpd
action = iptables[name=VSFTPD, port=ftp, protocol=tcp]
sendmail-whois[name=VSFTPD, dest=you@mail.com]
logpath = /var/log/vsftpd.log
maxretry = 5
bantime = 1800


MfG Peter

AndreasMeier
09.11.09, 19:58
Ja, Fail2ban kenn ich bereits von einem Freund.
Hatte aber noch keine Gelegenheit Iptables zu installieren, wobei ja eher das konfigurieren das Problem darstellt.

DenyHosts läuft halt ohne iptables, daher hatte ich die Hoffnung, das eben auch für VSFTP aktivieren zu können.
Geht ja auch theoretisch, wenn man den richtigen Synthax der USERDEF_FAILED_ENTRY_REGEX kennt.

Roger Wilco
09.11.09, 20:35
Wer behauptet denn, dass fail2ban nur mit Netfilter/iptables funktioniert?

# Uses Netfilter/Iptables by default but can also use TCP Wrapper (/etc/hosts.deny) and many other actions.

AndreasMeier
10.11.09, 06:23
Ups, da hab ich dann was falsch verstanden und werd mir fail2ban nochmal anschauen.
Sah von der Konfig ja sehr flexibel aus.

Stormbringer
11.11.09, 05:47
[...]
wenn Login-Versuche in der /var/log/messages protokolliert werden
[...]
In der /var/log/auth.log taucht aber folgender Eintrag auf
Ist denn vllt. genau das das Problem?
DenyHosts liest in /var/log/messages, aber die relevante Meldung erscheint in /var/log/auth.log?

AndreasMeier
11.11.09, 13:06
Tja, weiß ich nicht genau, ob dass das Problem ist.

In der denyhosts.conf steht am Anfang:


# secure log: the log file that contains sshd logging info
SECURE_LOG = /var/log/auth.log


Für SSH klappts dort ja auch, Debian schreibt die Infos von SSH in auth.log und denyhosts schlägt drauf an.

In der Config gibt es auch andere Alternativen, z.B. Suse protokolliert in /var/log/messages,
Redhat z.B. in /var/log/secure.

Ich weiß nicht, in welchem Zusammenhang ich /var/log/messages gelesen hatte (und zu welchem System das gemeint war).

Darum weiß ich nicht, ob das nun für Debian alles so passt.

Blade
04.02.10, 18:55
Teste mal Blockhost, das klappt sowohl zur Absicherung des ssh- wie auch des ftp-Zugriffs von Brutforce-Angriffen... http://www.blockhost.org