SFTP låsa användare till sin home mapp

Permalänk
Medlem

SFTP låsa användare till sin home mapp

Jag försöker låsa SFTP användare till sin homefolder, men det går inte riktigt vägen.

ssh config:

Subsystem sftp internal-sftp UsePAM yes Match Group sftpgroup #ChrootDirectory %h #ChrootDirectory /sftp/chroot/%u ChrootDirectory /sftp/chroot/ ForceCommand internal-sftp X11Forwarding no AllowTcpForwarding no

Då jag har såhär så fungerar det utmärkt att connecta osv, men då hamnar jag en folder ner så att säga. Då jag provar någon av dom utkommenterade så får jag:

Fel: Network error: Software caused connection abort
Fel: Kunde inte ansluta till servern

Så hur går jag riktigt tillväga?

Jag har gjort i princip som denna tutorial: http://www.tecmint.com/restrict-sftp-user-home-directories-us...

Visa signatur

Citera om du vill ha svar :)

Permalänk
Medlem

Hittade denna guide som verkar vara liknande : https://wiki.archlinux.org/index.php/SFTP_chroot

Ser dock i den guiden något om att root måste vara ägare av chroot directoryt. Kan det vara något rättighetsproblem?

Permalänk
Medlem
Skrivet av nikmind:

Hittade denna guide som verkar vara liknande : https://wiki.archlinux.org/index.php/SFTP_chroot

Ser dock i den guiden något om att root måste vara ägare av chroot directoryt. Kan det vara något rättighetsproblem?

hmm ja det är möjligt, som jag har det nu är root ägare av /sftp och /sftp/chroot
Sen /sftp/chroot/username ägs av användare:minftpgrupp om jag ändrar till root:root på den foldern får jag Fel: Unable to open .: permission denied

edit, fungerar när jag sätter root:root som ägare av /sftp/chroot/användare och chmod 750/755 dock så har användaren inga rättigheter att skapa mappar, hur kommer jag runt det? det fungerar ju att göra en mapp i deras home och sätta användaren som ägare, men det blir ju ännu ett moment ^^

jag får försöka knåpa ihop ett script eller nå för att lägga till användare ^^

Visa signatur

Citera om du vill ha svar :)

Permalänk
Medlem

Ja, som jag läser det så är det en säkerhetsrisk att ge de skrivrättigheter i chroot. Dvs. de kan då kunna ta sig ut ur chroot'en.

Antar att sista partiet i wikin jag länkade till ger någon form av "lösning" på hur man skulle kunna göra.

Permalänk
Medlem
Skrivet av nikmind:

Ja, som jag läser det så är det en säkerhetsrisk att ge de skrivrättigheter i chroot. Dvs. de kan då kunna ta sig ut ur chroot'en.

Antar att sista partiet i wikin jag länkade till ger någon form av "lösning" på hur man skulle kunna göra.

fick det att fungera som det skulle i min test vm, nu när jag ska lägga till det i min server så får jag samma connection error som jag hade när det var fel permissions.

Denna gång har jag satt användarens home till /mnt/raid/SFTP/användare, jag tycker jag har gjort som innan... men jag får det ej att fungera.

Disken är mountad med detta i fstab om det spelar nån roll: UUID=9b82f301-0801-422e-9362-29f870b45a18 /mnt/raid ext4 defaults 0 2

output av ls -l hela vägen upp...

felmeddelandet jag får:
"Fel: Network error: Software caused connection abort
Fel: Kunde inte ansluta till servern"

Användaren är i rätt grupp, det har jag trippelcheckat och användarens home är satt till /mnt/raid/SFTP/användare

Vad missar jag riktigt?

Edit:

Kollade ssh loggen

Jan 16 16:07:30 nas sshd[26679]: fatal: bad ownership or modes for chroot directory component "/mnt/raid/"

aha det var så petnoga, det var chmod 777 på den foldern, så 755 löste det...

Visa signatur

Citera om du vill ha svar :)

Permalänk
Medlem

Ja, det verkar extremt petnoga på rättigheterna detta

Permalänk
Medlem
Skrivet av nikmind:

Ja, det verkar extremt petnoga på rättigheterna detta

Det är för att säkerställa att man inte får säkerhetshål. chroot är till för att låsa in användaren. Då är det dumt om det är uppenbart att denne kan ta sig ut

Permalänk
Medlem

Jo, dumt att förstöra det som är grundtanken med chroot

Permalänk
Medlem

Jag gjorde som så att jag satt användarnas home till /mnt/raid/SFTP/användarnamn och sedan skapade jag en mapp i deras mapp där dom har rättigheter att skriva etc, sen binda jag den mappen till /var/www/användarnamn...

Dock blir det ju en hel del kommandon varje gång man ska lägga upp en användare, går det att göra ett script av det hela på något vänster så man kör tex ./nyuser ANVÄNDARNAMN

så kör den hela den här raddan fast den hämtar användarnamnet man skriver efter ./script om ni hänger med hur jag tänker:

useradd USERNAME -d /mnt/raid/SFTP/USERNAME -g sftpgroup -s /sbin/nologin passwd USERNAME mkdir /mnt/raid/SFTP/USERNAME chown root:root /mnt/raid/SFTP/USERNAME/ chmod 755 /mnt/raid/SFTP/USERNAME/ mkdir /mnt/raid/SFTP/USERNAME/html chown USERNAME:sftpgroup /mnt/raid/SFTP/USERNAME/html mkdir /var/www/USERNAME/ADRESS chown USERNAME:sftpgroup /var/www/USERNAME

Visa signatur

Citera om du vill ha svar :)