OS X Server - SFTP für User ohne Home-Verzeichnis funktioniert nicht

T

terz3

unregistriert
Thread Starter
Dabei seit
11.01.2015
Beiträge
449
Reaktionspunkte
144
Hallo,

würde gerne einen SFTP-Server für Familiendaten bei Bedarf betreiben, will dazu aber nicht viele User erstellen sondern einen Familien-User ohne Home-Verzeichnis der dann genau auf die Familiendaten zugreifen kann. Mit FTP funktioniert es auch, aber wenn ich den FTP-Only-Nutzer auch via SFTP einloggen lassen will, gibt es immer Fehlermeldungen und es klappt nicht (nicht im Terminal, Cyberduck, FileZilla, ...). Ein Admin mit Home-Verzeichnis kann sich via SFTP ganz normal einloggen.

Weiß jemand woran das liegt?
 
Hast du dich mal mit ssh angemeldet und probiert ob das geht? SFTP geht ja über ssh, nicht über ssl ftp, und ich vermute das blockiert wenn es kein home findet, da diverse Konfigurationsdateien die zum Validieren der hosts normal dort liegen. Evlt musst du die /etc/ssh/sshd_config (ssh server config) anpassen.

Hast du mal ein ssh -vvv user@host probiert für einen verbose output? Da sollte sicher der Fehler aufkommen. Alternativ ist auch der sshd (system) log des Servers sicher interessant.
 
Hatte es vergessen zu erwähnen dass ssh natürlich auch nicht geht. Die Antwort nach Eingabe des PW ist:

Code:
Password:
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,keyboard-interactive
debug2: userauth_kbdint
debug2: we sent a keyboard-interactive packet, wait for reply
debug2: input_userauth_info_req
debug2: input_userauth_info_req: num_prompts 1

Was muss ich in sshd_config ändern?
 
Ohne home geht's nicht. Mach einfach das Familiendir zum home und evtl. den user chrooten.
 
Zuletzt bearbeitet:
Nach einigem probieren, funktioniert es (auch mit 10.11) wenn man sich exakt an die Anleitung hält und die Ordner mit all den Rechten korrekt erstellt. Werde irgendwann einmal noch rumprobieren wie man beliebige Ordner für SFTP mit chroot verwenden kann. Bis dahin ist es so ganz ok. Danke für die Hinweise auf die richtige Richtung.
 
Zuletzt bearbeitet:
Habe jetzt noch etwas mit dem SFTP-Server rumprobiert und habe das Problem dass SFTP nur geht wenn SSH aktiviert ist. SSH kann ich aber nur komplett abschalten, wenn es aber an ist, kann ich es beim Hauptnutzer nicht deaktieren/nicht auf das lokale Netz einschränken. Oder mache ich da etwas falsch?

Mir wäre es am liebsten wenn der SFTP-Server nur mit dem chroot'ed User aus dem weltweiten Netz erreichbar ist, der Hauptnutzer (Admin) soll nur aus dem lokalen Netz zugreifen dürfen. Geht das?

Oder gibt es irgendeine andere Möglichkeit Daten verschlüsselt für verschiedene Nutzer (wahrlich keine Computer-Nerds und auch Windows-Nutzer) zur Verfügung zu stellen, will selber auch von unterwegs via iOS darauf zugreifen könnnen (GoodReader kann ja SFTP). Eine Cloud ist keine Alternative, es sei denn eine Cloud auf der Synology oder dem Mini.
 
sftp geht ohne ssh nicht - das müsste dir ja aufgefallen sein, als du die sshd_config bearbeitest hast.
Jo. Dachte es wäre aus meinem Post klar geworden, dass es mir aufgefallen war. ;)
Im Prinzip die 3-Punkte-Antwort: "How about if you force public key authentication for the specific user...", nur invertiert (mit Schlüssel).
Danke! Hatte ja schon mal geschrieben, dass ich viele deiner Beiträge gerne lese/schätze. Habe jetzt die Richtung/richtige Information und werde mich melden wenn ich wider Erwarten auf weitere Probleme stoßen sollte.

Vielleicht noch eine Anschlussfrage: lohnt es sich den Port via Port Forwarding auf einen anderen Port fürs weltweite Netz legen? Im Netz findet man widersprüchliche Aussagen.
 
Habe ich wohl nicht als rethorische Frage verstanden. Sorry :p

Port verlegen mache ich grundsätzlich und immer, außer irgendein Kunde will partout 22 haben.
Du filterst damit viel Logmüll raus.
 
Gibt es da einen empfehlenswerten Port?

Btw habe die Anleitung befolgt, aber es gibt einfach immer Unterschiede zwischen Linux und BSD. Auf dem Mac muss man Folgendes in die sshd_config schreiben:
Code:
Match User USERNAME_HIER
  PasswordAuthentication no
  kbdInteractiveAuthentication no
sonst gibt es noch die interaktive Passwortabfrage. Jetzt scheint es so zu funktionieren wie ich es mir vorstelle.
 
Kannst du frei aus den inoffiziellen auswählen: https://de.wikipedia.org/wiki/Liste_der_standardisierten_Ports
Ich nehme meistens 2222 oder 22222. Trag' die Ports jeweils pro Host in deine .ssh/config ein, dann brauchst du da auch nicht groß dran denken.

Linuxer werden, m.M.n, ziemlich oft ausgebremst, was Parameter bei CMD-Tools betrifft.
Gewöhnt man sich aber auch dran und manchmal zahlt es sich auch wieder aus, einen Blick in die jeweiligen man pages zu werfen.
 
Zuletzt bearbeitet:
Zurück
Oben Unten