Ik had weer eens zin in het schrijven van een mini howto. Misschien hebben jullie er iets aan
Btw ik heb dit getest met behulp van Debian Lenny.
Een kleine howto hoe je sftp users kan chrooten. Let op, let op: maak beslist geen enkele fout met het instellen van permissies anders gaat het onderstaande niet werken ;-)
Op de server /etc/sshd/sshd_config zo aanpassen:
Daarna sshd restarten:
Daarna een sftp groep aanmaken:
En natuurlijk de user die we willen chrooten:
Deze user voegen we aan de chroot groep toe:
Daarna passen we de homedir van de te chrooten user aan:
Juiste key uploaden en klaar
Kijk maar:
Chroot SFTP met Public/Private Keys Howto:
Een kleine howto hoe je sftp users kan chrooten. Let op, let op: maak beslist geen enkele fout met het instellen van permissies anders gaat het onderstaande niet werken ;-)
Op de server /etc/sshd/sshd_config zo aanpassen:
code:
1
2
3
4
5
6
7
8
| #Subsystem sftp /usr/lib/openssh/sftp-server Subsystem sftp internal-sftp Match Group sftpusr ForceCommand internal-sftp ChrootDirectory /home/%u X11Forwarding no AllowTcpForwarding no |
Daarna sshd restarten:
server1:/home/jdoe/.ssh# invoke-rc.d ssh restart Restarting OpenBSD Secure Shell server: sshd.
Daarna een sftp groep aanmaken:
server1:~# addgroup sftpusr Adding group `sftpusr' (GID 1001) ... Done.
En natuurlijk de user die we willen chrooten:
server1:/home# adduser --disabled-password --shell /bin/false --gecos "John Doe" --uid 920677 jdoe Adding user `jdoe' ... Adding new group `jdoe' (920677) ... Adding new user `jdoe' (920677) with group `jdoe' ... Creating home directory `/home/jdoe' ... Copying files from `/etc/skel' ...
Deze user voegen we aan de chroot groep toe:
server1:/home/jdoe/.ssh# adduser jdoe sftpusr Adding user `jdoe' to group `sftpusr' ... Adding user jdoe to group sftpusr Done.
Daarna passen we de homedir van de te chrooten user aan:
server1:/home# chown root:root jdoe server1:/home/jdoe# mkdir uploads server1:/home/jdoe# chown jdoe:jdoe uploads server1:/home/jdoe# mkdir .ssh server1:/home/jdoe# chmod 0700 .ssh server1:/home/jdoe# chown jdoe:jdoe .ssh server1:/home/jdoe# touch .ssh/authorized_keys server1:/home/jdoe# chmod 0600 .ssh/authorized_keys server1:/home/jdoe# chown jdoe:jdoe .ssh/authorized_keys
Juiste key uploaden en klaar
jdoe@desktop1:~/.ssh$ sftp -o IdentityFile=~/.ssh/testkey_rsa jdoe@server1 Connecting to server... sftp> ls uploads sftp> cd .. sftp> pwd Remote working directory: / sftp> ls -al drwxr-xr-x 4 0 0 31 Aug 28 12:13 . drwxr-xr-x 4 0 0 31 Aug 28 12:13 .. drwx------ 2 920677 920677 28 Aug 28 11:26 .ssh drwxr-xr-x 2 920677 920677 6 Aug 28 12:16 uploads sftp> cd ../../ sftp> pwd Remote working directory: / sftp> ls -al drwxr-xr-x 4 0 0 31 Aug 28 12:13 . drwxr-xr-x 4 0 0 31 Aug 28 12:13 .. drwx------ 2 920677 920677 28 Aug 28 11:26 .ssh drwxr-xr-x 2 920677 920677 6 Aug 28 12:16 uploads sftp>
[ Voor 2% gewijzigd door een moderator op 01-09-2009 22:52 . Reden: leesbaar gemaakt :) ]
Alles hat ein Ende nur die Wurst hat zwei