FTP - Zugang schützen

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
sedi
User
Beiträge: 104
Registriert: Sonntag 9. Dezember 2007, 19:22

Hallo zusammen,

habe folgendes Problem: Ich habe ein Programm in Python geschrieben, dass Inhalte auf meinem eigenen FTP-Server benötigt und aktualisiert. Wie kann ich nun den Usern einen Zugang erlauben, ohne ihnen das FTP-Passwort sagen zu müssen?

Mir scheint eine Lösung naheliegend, die ein C-Programm nutzt, um Einsicht in die Passwörter zu vermeiden. Dieses Programm steuert Python sozusagen (->embedded python). Da ich aber schon seit langer Zeit nicht mehr mit C programmiert habe hoffe ich, dass euch eine andere Lösung einfällt!

Grafisch handelt es sich irgendwie um folgende Situation:

| Users | ----> | C - Prog |<----| FTP-Server |
CU sedi
----------------------------------------------------------
Python 3.5; Python 3.6
LinuxMint18
Benutzeravatar
Defnull
User
Beiträge: 778
Registriert: Donnerstag 18. Juni 2009, 22:09
Wohnort: Göttingen
Kontaktdaten:

Dein Ansatz kann schon vom Prinzip her nicht funktionieren. Wenn deine Client-Software das Passwort kennt, ist es nicht sicher, ganz egal wie toll du es versteckst.
Bottle: Micro Web Framework + Development Blog
sedi
User
Beiträge: 104
Registriert: Sonntag 9. Dezember 2007, 19:22

Stimmt schon, aber es gehört damit schon erheblicher Aufwand dazu, dass Passwort herauszubekommen, oder?

Ich meine - ist das Passwort in Python hardcoded eingetragen, so kann es ja auf simple Art und Weise in Erfahrung gebracht werden.

Hardcoded in C-Progs dagegen nicht - oder habe ich nen Fehler in der Denke?
CU sedi
----------------------------------------------------------
Python 3.5; Python 3.6
LinuxMint18
Benutzeravatar
Defnull
User
Beiträge: 778
Registriert: Donnerstag 18. Juni 2009, 22:09
Wohnort: Göttingen
Kontaktdaten:

FTP überträgt Passwörter in Klartext. Jeder, der wireshark runter laden kann oder unter linux/unix arbeitet, braucht geschätzte 2 Minuten um das Passwort in Erfahrung zu bringen.
Bottle: Micro Web Framework + Development Blog
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

sedi hat geschrieben:Hardcoded in C-Progs dagegen nicht
Wieso denn nicht? ``strings`` existiert durchaus, ebenso wie Disassember und Debugger.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
sedi
User
Beiträge: 104
Registriert: Sonntag 9. Dezember 2007, 19:22

sh..

also letztlich liegts an ftp - okay.

Tja, dann hat sich das Problem jetzt deutlich verlagert - und somit etwas off topic - aber trotzdem mal die Frage an @Defnull. Es gibt ja auch eine sichere Variante von FTP (sftp oder ssh | ftp... oä.).

Unter der Voraussetzung, dass es "sicheres FTP" gibt, wie kann man obiges Problem dann realisieren?
CU sedi
----------------------------------------------------------
Python 3.5; Python 3.6
LinuxMint18
Benutzeravatar
snafu
User
Beiträge: 6881
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Wie wäre eine Funktion, die das Passwort verschlüsselt und nur das Ergebnis der Verschlüsselung ist einlesbar? Dann muss ein böser Hacker erstmal darauf kommen, wie die ursprüngliche Zeichenkette lautet, die vor der Umwandlung abgefragt wird. :)
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Das Problem ist ja immer noch dass du dem User den Schlüssel in die Hand gibst. Dann fällt die Lösung mit dem Klartext-Passwort-Sniffen zwar weg, aber der User kann ja immer noch das Passwort auslesen.

Uii, wir sind jetzt genau auch an der Stelle angekommen an der DRM nicht funktioniert - weil der User den Schlüssel auch irgendwie bekommen muss um an verschlüsselte Inhalte zu gelangen.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
Defnull
User
Beiträge: 778
Registriert: Donnerstag 18. Juni 2009, 22:09
Wohnort: Göttingen
Kontaktdaten:

snafu hat geschrieben:Wie wäre eine Funktion, die das Passwort verschlüsselt und nur das Ergebnis der Verschlüsselung ist einlesbar? Dann muss ein böser Hacker erstmal darauf kommen, wie die ursprüngliche Zeichenkette lautet, die vor der Umwandlung abgefragt wird. :)
FTP überträgt immer noch im Klartext.

@sedi: Um zu wissen, wie man dein Problem löst, solltest du uns schon sagen, was du überhaupt machen willst.

Wenn es um User-Daten geht, sollte jeder User ein eigenes Passwort haben. Wenn es um Kollaboration geht, kommst du wohl nicht umher, die Benutzereingaben serverseitig zu prüfen. Der "Die Daten sind vertrauenswürdig, weil mein Programm sie generiert" Ansatz funktionierte noch nie besonders gut.
Bottle: Micro Web Framework + Development Blog
sedi
User
Beiträge: 104
Registriert: Sonntag 9. Dezember 2007, 19:22

@Defnull: Ich dachte das hätte ich bereits. :?:

Ich versuch, das Ganze mal ausführlicher zu beschreiben:
Ich habe Daten auf einem Server liegen, die, wie ich nun erfahren habe, auch für andere Kollegen von Interesse sind. Sie wollen nun an der Datensammlung mitarbeiten. Da die Daten dort alle ein bestimmtes Format haben, habe ich zur Bearbeitung und Erstellung derer eine Oberfläche in Python/Tkinter geschrieben (kleines Problem am Anfang wurde auch in dem Forum gelöst :) ).

Auch ist es so, dass bestimmte User nur bestimmte Datenbereiche einsehen sollen - was aber bereits durch das Programm, das der jeweilige User erhalten soll bereits festgelegt ist.

Einzig das Problem des Zugriffs auf den Server bereitete mir Kopfzerbrechen - jetzt muss ich sagen sind meine Sorgen nach euren Antworten nicht weniger geworden. Aber vor dem nun erhaltenen Wissen über FTP wollte ich schlicht nicht jedem das Passwort aufs Auge drücken.

Ich muss dazu sagen, dass die meisten davon keine PC-Experten sind, aber wer weiß schon wer im Hintergrund schraubt nicht wahr!
CU sedi
----------------------------------------------------------
Python 3.5; Python 3.6
LinuxMint18
Benutzeravatar
jbs
User
Beiträge: 953
Registriert: Mittwoch 24. Juni 2009, 13:13
Wohnort: Postdam

Es gibt ja etwas schönes wie Benutzer und Gruppenrechte.
[url=http://wiki.python-forum.de/PEP%208%20%28%C3%9Cbersetzung%29]PEP 8[/url] - Quak!
[url=http://tutorial.pocoo.org/index.html]Tutorial in Deutsch[/url]
Benutzeravatar
Käptn Haddock
User
Beiträge: 169
Registriert: Freitag 24. März 2006, 14:27

Du könntest auch sftp verwenden. Wenn deine Clients eh eine Software installiert bekommen, dann kannst du auch gleich einen Key verteilen. Die Übertragung läuft dann über ssh und ist verschlüsselt, sowohl Passwort als auch die Datenübertragung.

Gruß Uwe
---------------------------------
have a lot of fun!
sedi
User
Beiträge: 104
Registriert: Sonntag 9. Dezember 2007, 19:22

Also Danke mal an euch alle.

Also folgende Situation - Provider bietet kein sFTP oä. - somit ist nach euren Beiträgen das Sichern des Passwortes fast lächerlich geworden.

Tja - somit ist das Projekt gestorben.
Alternative: Muss mich wohl in CMS - Geschichten einarbeiten :(

Sagt mal ist das denn überhaupt noch zeitgemäß, nur ungesicherte FTP-Zugänge anzubieten?
CU sedi
----------------------------------------------------------
Python 3.5; Python 3.6
LinuxMint18
Dav1d
User
Beiträge: 1437
Registriert: Donnerstag 30. Juli 2009, 12:03
Kontaktdaten:

jbs hat geschrieben:Es gibt ja etwas schönes wie Benutzer und Gruppenrechte.
Mehr braucht man dazu nich zu sagen, naja vllt noch, dass es sowas wie BerliOS oder SourceForge gibt (svn usw.)
the more they change the more they stay the same
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

sedi hat geschrieben:Sagt mal ist das denn überhaupt noch zeitgemäß, nur ungesicherte FTP-Zugänge anzubieten?
Meiner Meinung nach: ganz im Gegenteil. Daher habe ich auf meinen Servern gar nicht erst FTP installiert sondern den Kunden sofort gesagt, dass sie SFTP bekommen und gar nicht erst an FTP denken sollen.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
Hyperion
Moderator
Beiträge: 7478
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Leonidas hat geschrieben:
sedi hat geschrieben:Sagt mal ist das denn überhaupt noch zeitgemäß, nur ungesicherte FTP-Zugänge anzubieten?
Meiner Meinung nach: ganz im Gegenteil. Daher habe ich auf meinen Servern gar nicht erst FTP installiert sondern den Kunden sofort gesagt, dass sie SFTP bekommen und gar nicht erst an FTP denken sollen.
Spricht eigentlich etwas spezifisches für SFTP im Vergleich zu SCP?
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Hyperion hat geschrieben:Spricht eigentlich etwas spezifisches für SFTP im Vergleich zu SCP?
Ich find das Executable angenehmer zu nutzen. :D
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten