SSH i zamkni
SSH i zamknięcie użytkownika w swoim katalogu
Postanowiłem udostępnić bezpłatnie konta www i ssh ale w pewnym momencie napotkałem na dość spory problem.
Kiedy użytkownik A wrzuci stronę do "public_html" to użytkownik B ma dostęp do kodu. Jeśli próbuję nadać uprawnienia z pomocą polecenia ,,chmod'' tak aby nie miał dostępu do nich to serwer www również ich nie ma.
Wymyśliłem aby zrobić coś takiego jak jest z ftp (jail), że użytkownik ma dostęp tylko do swojego katalogu np. /home/użytkownik i widzi go jako /, ale nie wiem jak to zrobić? Z góry dziękuję za pomoc.
Kiedy użytkownik A wrzuci stronę do "public_html" to użytkownik B ma dostęp do kodu. Jeśli próbuję nadać uprawnienia z pomocą polecenia ,,chmod'' tak aby nie miał dostępu do nich to serwer www również ich nie ma.
Wymyśliłem aby zrobić coś takiego jak jest z ftp (jail), że użytkownik ma dostęp tylko do swojego katalogu np. /home/użytkownik i widzi go jako /, ale nie wiem jak to zrobić? Z góry dziękuję za pomoc.
Dziękuję. Wszystko działa poprawnie, ale teraz użytkownicy widzą katalog /home jako /, a chciałbym żeby widzieli swoje katalogi domowe jako /. Jakieś pomysły?
Oczywiście chodzi o rozwiązanie tego na grupach.
Edycja:
Znalazłem coś takiego:
ale niestety nie działa?
Zwraca:
Oczywiście chodzi o rozwiązanie tego na grupach.
Edycja:
Znalazłem coś takiego:
Kod: Zaznacz cały
Match Group osftp
ChrootDirectory /home/%u
AllowTCPForwarding no
X11Forwarding no
ForceCommand internal-sftp
Zwraca:
Kod: Zaznacz cały
Błąd: Server unexpectedly closed network connection
Błąd: Nie można połączyć się z serwerem
Sam bym chciał wiedzieć jak?
Dodane:
Mam problem z tym poradnikiem bo chciałbym aby dodawać użytkowników nie do /home tylko np do katalogu /home/jail
w pliku /etc/ssh/sshd_config
ustawiam tak:
Wyświetla mi to przy próbie logowania:
A jak zmienię zamiast /home na /home/jail to pokazuję tak:
Wie ktoś jak temu zaradzić?
Dodane:
Mam problem z tym poradnikiem bo chciałbym aby dodawać użytkowników nie do /home tylko np do katalogu /home/jail
w pliku /etc/ssh/sshd_config
ustawiam tak:
Kod: Zaznacz cały
Match User test4
ChrootDirectory /home
AllowTCPForwarding no
X11Forwarding no
ForceCommand /usr/lib/openssh/sftp-server
Match User test4
ChrootDirectory /home
AllowTCPForwarding no
X11Forwarding no
Kod: Zaznacz cały
$ ssh [email protected]
[email protected]'s password:
/bin/bash: No such file or directory
Connection to 192.168.2.104 closed.
Kod: Zaznacz cały
ssh [email protected]
[email protected]'s password:
Read from remote host 192.168.2.104: Connection reset by peer
Connection to 192.168.2.104 closed.
Kod: Zaznacz cały
Match Group sftpusers
ChrootDirectory /home/jail/%u
AllowTCPForwarding no
X11Forwarding no
ForceCommand internal-sftp
Użytkowników tworzysz z grupą "sftpusers" i katalogami domowymi w "/home/jail" o nazwach takich jak loginy użytkowników.
Pamiętaj aby nadać odpowiednich właścicieli i prawa do katalogów.
Jeśli coś się sypnie spróbuj usunąć linię:
Kod: Zaznacz cały
ForceCommand internal-sftp
Kod: Zaznacz cały
ldd `which mc`
Pokazuje mi to
tylko tego pierwszego nie znalazłem bo nie ma podanej ścieżki
Kod: Zaznacz cały
# ldd `which mc`
linux-gate.so.1 => (0xb7fa3000)
libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xb7ee3000)
libgpm.so.2 => /usr/lib/libgpm.so.2 (0xb7edd000)
libslang.so.2 => /lib/libslang.so.2 (0xb7dff000)
libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7ca4000)
libpcre.so.3 => /usr/lib/libpcre.so.3 (0xb7c7b000)
libdl.so.2 => /lib/i686/cmov/libdl.so.2 (0xb7c77000)
libm.so.6 => /lib/i686/cmov/libm.so.6 (0xb7c50000)
/lib/ld-linux.so.2 (0xb7fa4000)