Problem z SFTP i chrootowalnymi katalogami
: 11 lutego 2014, 15:07
Witam,
Muszę przygotować serwer pod sftp, więc postanowiłem go zabezpieczyć chrootem. Niestety borykam się z problemem który wynika albo z mojego błędu albo niewiedzy i niezrozumienia tematu.
W konfiguracji ssh mam wpisy:
Użytkownik wygląda tak:
Uprawnienia na chrootowanym folderze wyglądają tak:
Cała, prowadząca do niego ścieżka, jest własnością roota.
Zgodnie z poradnikiem: https://wiki.archlinux.org/index.php/SFTP-chroot, aby nie pozwolić na eskalację uprawnień, robię montowanie katalogu w którym użytkownik ma prawa zapisu (/home/test) do katalogu chrootowanego (/var/chrooted/test)
I do tej pory wszystko zgadza się z wszelkimi poradnikami jakie znalazłem na sieci.
Mój problem pojawia się w momencie w którym próbuje cokolwiek zrobić na zasobie do którego się podłączam.
Problemem są uprawnienia na folderze, ale właśnie tego nie potrafię rozgryźć.
Muszę przygotować serwer pod sftp, więc postanowiłem go zabezpieczyć chrootem. Niestety borykam się z problemem który wynika albo z mojego błędu albo niewiedzy i niezrozumienia tematu.
W konfiguracji ssh mam wpisy:
Kod: Zaznacz cały
Subsystem sftp internal-sftp
Match User test
ChrootDirectory /var/chrooted/test
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no
Kod: Zaznacz cały
test:x:505:505::/home/test:/sbin/nologin
Kod: Zaznacz cały
ls-l /var/chrooted/
drwxr-x---. 3 root root 4096 Feb 11 12:58 test
Zgodnie z poradnikiem: https://wiki.archlinux.org/index.php/SFTP-chroot, aby nie pozwolić na eskalację uprawnień, robię montowanie katalogu w którym użytkownik ma prawa zapisu (/home/test) do katalogu chrootowanego (/var/chrooted/test)
Kod: Zaznacz cały
mount --bind /var/chrooted/test/ /home/test/
Mój problem pojawia się w momencie w którym próbuje cokolwiek zrobić na zasobie do którego się podłączam.
Kod: Zaznacz cały
ls -ld /var/chrooted/test/
drwxr-x---. 3 root root 4096 Feb 11 12:58 /var/chrooted/test/
ls -l /var/chrooted/test/total 4
drwxrwxrwx. 2 test test 4096 Feb 11 12:58 folder1
Kod: Zaznacz cały
sftp test@ip
test@ip's password:
sftp> ls
Couldn't get handle: Permission denied
sftp> cd folder1
Couldn't canonicalise: Permission denied