Ograniczanie uprawnień użytkownika do danego folderu

Zombie
AidisProPlayer
AidisProPlayer

Jak zrobić żeby dany użytkownik miał dostęp do jednego folderu w /home/ i ssh tylko z tym folderem.

bopke
bopke Moderator forum.lvlup.pro

Zainteresuj się poleceniem chroot i uprawnieniami dostępu. https://pl.wikipedia.org/wiki/Chroot https://pl.wikipedia.org/wiki/Chmod

AidisProPlayer
AidisProPlayer

czyli co mam zrobić bo to mi nic nie mówi chmod mam ale dany użytkownik może przeglądać inne foldery.

bopke
bopke Moderator forum.lvlup.pro

Musisz go zamknąć przez chroot w jego katalogu domowym

AidisProPlayer
AidisProPlayer

a jakimi komendami? root@box:~# chroot /mnt/gentoo/ /bin/bash box / #

ale mi chodzi żeby użytkownik nie miał dostępu do np plików roota lub plików stron www.

żeby Tylko właściciel ma prawo do odczytu i zapisu i wykonania. jak zrobić.

bopke
bopke Moderator forum.lvlup.pro
AidisProPlayer
AidisProPlayer

żeby Tylko właściciel ma prawo do odczytu i zapisu i wykonania. taki chmod lub coś jak zrobić komendy.

bopke
bopke Moderator forum.lvlup.pro

AidisProPlayer:

taki chmod lub coś jak zrobić komendy.

Masz to opisane w artykule na wikipedii który wrzuciłem w pierwszym poście.

Timo
Timo Moderator forum.lvlup.pro

Mi się nie chciało bawić w chrooty, więc zrobiłem tak: chown -R USER:USER /home/user chmod -R 700 /home/user I wtedy USER2 nie może wejść w /home/user, ale np. taki /opt/ zobaczy. Chroot lepszym rozwiązaniem.

AidisProPlayer
AidisProPlayer

a jak nadać to wszystkim plikom roota na vps. a i jak zrobić żeby inny użytkownik widział tylko folder w /home/jegofolder

bopke
bopke Moderator forum.lvlup.pro

AidisProPlayer:

a jak nadać to wszystkim plikom roota na vps

Jak będziesz się bawił chmodem z plikami systemu to zobaczysz jak łatwo można rozwalić system. To nie jest rozwiązanie.

Timo:

Mi się nie chciało bawić w chrooty, więc zrobiłem tak:

chown -R USER:USER /home/user

chmod -R 700 /home/user

I wtedy USER2 nie może wejść w /home/user, ale np. taki /opt/ zobaczy. Wtedy USER2 nadal ma uprawnienia do zaglądania wszędzie, poza tym jednym katalogiem, tu chodzi o odwrotną operacje - USER ma dostęp tylko do swojego katalogu i nic więcej.

AidisProPlayer:

a i jak zrobić żeby inny użytkownik widział tylko folder w /home/jegofolder Poczytaj więcej o tym chroot, jak ktoś Ci poda rozwiązanie na tacy to nic się nie nauczysz

http://allanfeid.com/content/creating-chroot-jail-ssh-access

pierwszy z google

AidisProPlayer
AidisProPlayer

a niema po polsku?

bopke
bopke Moderator forum.lvlup.pro

Spróbuj sam pogooglać, ktoś tego za Ciebie nie będzie robił w nieskończoność :thinking:

Timo
Timo Moderator forum.lvlup.pro

http://allanfeid.com/content/creating-chroot-jail-ssh-access Wygląda mi na prosty poradnik, komendy wręcz do przekopiowania (pamiętaj by używać z rozsądkiem i rozumieć każdą komendę, którą wpisujesz!) i nic szczególnego.

AidisProPlayer
AidisProPlayer

a w adduser - s sshusers user o co chodzi z sshusers?

Timo
Timo Moderator forum.lvlup.pro

Tak jak opisane w poradniku, tworzysz grupę sshusers.

bopke
bopke Moderator forum.lvlup.pro

Masz napisane tuż nad tym The way I'm setting this up, is that all my chrooted users will be added to the sshusers group. So we must setup the group, then add the user. Wszyscy użytkownicy tej grupy będą poddani chrootowi, więc trzeba najpierw ich oddzielić od reszty użytkowników.

AidisProPlayer
AidisProPlayer

czy tak

$ sshusers groupadd $ adduser - s sshusers serwer-hurtworld-1 $ mkdir - p / home / serwer-hurtworld-1 / { dev , etc , lib , usr , bin } $ mkdir - p / home / serwer-hurtworld-1 / $ chown root . home / serwer-hurtworld-1 / $ mknod - m 666 / home / serwer-hurtworld-1 / null c 1 3 i wrzystko?

bopke
bopke Moderator forum.lvlup.pro

Pierwsza komenda na pewno źle.

Przeczytałeś w ogóle ten poradnik, czy bezmyślnie kopiujesz komendy, nie rozumiejąc ich? Jeżeli to drugie to zacznij od początku, a jak nie rozumiesz poradnika po angielsku, to tu masz prosty poradnik jak znaleźć podobny po polsku: http://lmgtfy.com/?q=poradnik+chroot+ssh Nie musi on działać, ponieważ mało jest opracowań po polsku, pisanie ich się nie opłaca.

AidisProPlayer
AidisProPlayer

jakoś niema poradników po polsku w twoim linku.

bopke
bopke Moderator forum.lvlup.pro

Szybko przeszukałem google i przez 5 minut nie udało mi się znaleźć sensownego opracowania. Prawie nikt nie pisze takich rzeczy po polsku, bo to trafi do zbyt małej ilości ludzi. Przeczytaj uważnie wcześniejszy poradnik, wspomóż się w trudniejszych momentach tłumaczem i sam powinieneś dobrze zrozumieć co tam jest napisane. Jeżeli będzie z tym problem to spróbuj wygooglać coś innego.

AidisProPlayer
AidisProPlayer

Bo mam lekkie problemy z tym poradnikiem http://allanfeid.com/content/creating-chroot-jail-ssh-access bo nie rozumiem niektórych funkcji.

bopke
bopke Moderator forum.lvlup.pro

Wymień dokładnie których, a najlepiej pojedyńczo wpisuj je w google lub czytaj ich manuale w systemie man , np man ls

AidisProPlayer
AidisProPlayer

czyli

$ groupadd sshusers $ adduser -g sshusers serwer-hwserver1

a dalej bo tam jest coś z root

bopke
bopke Moderator forum.lvlup.pro

AidisProPlayer:

coś z root Nie wiem o czym konkretnie mówisz, mam Ci wyjaśnić co to jest cd, mkdir?

AidisProPlayer
AidisProPlayer

to wiem ale po co jest tworzenie tych folderów $ mkdir -p /var/jail/{dev,etc,lib,usr,bin} $ mkdir -p /var/jail/usr/bin $ chown root.root /var/jail

bopke
bopke Moderator forum.lvlup.pro

Jeżeli Twój użytkownik ma móc wykonywać jakiekolwiek komendy, to musi widzieć ich pliki. zamknięcie go przez chroot sprawia, że plików od komend nie widzi, czyli nie może ich wykonać.

AidisProPlayer
AidisProPlayer

no on ma wykonywać komendy tylko na plikach w folderze /home/

bopke
bopke Moderator forum.lvlup.pro

ale najpierw musi mieć do nich dostęp, żeby móc ich używać.

AidisProPlayer
AidisProPlayer

ale to nie tworzy folderów w /home/

bopke
bopke Moderator forum.lvlup.pro

AidisProPlayer:

$ mkdir -p /var/jail/{dev,etc,lib,usr,bin}

$ mkdir -p /var/jail/usr/bin

Zakładając, że katalog domowy użytkownika jest w /var/jail, to te dwie komendy tworzą foldery w jego katalogu domowym. jeżeli chcesz, żeby katalog domowy użytkownika był w domyślnym miejscu, to zamieniasz var/jail/ na przykładowo /home/user/.

AidisProPlayer
AidisProPlayer

i wtedy do jest do użytkownika czy grupy?

$ groupadd sshusers $ adduser -g sshusers serwer-hwserver1 $ mkdir -p /home/serwer-hwserver1/ $ chown serwer-hwserver1.serwer-hwserver1 /home/serwer-hwserver1/

bopke
bopke Moderator forum.lvlup.pro

do danego użytkownika

AidisProPlayer
AidisProPlayer

$ groupadd sshusers $ adduser -g sshusers serwer-hwserver1 $ mkdir -p /home/serwer-hwserver1/ $ chown serwer-hwserver1.serwer-hwserver1 /home/serwer-hwserver1/

bopke
bopke Moderator forum.lvlup.pro

AidisProPlayer:

chown serwer-hwserver1.serwer-hwserver1 /home/serwer-hwserver1/

jeżeli już to chown serwer-hwserver1:serwer-hwserver1 /home/serwer-hwserver1/

AidisProPlayer
AidisProPlayer

i to wrzystko?

bopke
bopke Moderator forum.lvlup.pro

AidisProPlayer:

i to wrzystko?

w jakim kontekście? w ten sposób utworzysz tylko katalog domowy.

AidisProPlayer
AidisProPlayer

a to po co? $ mknod -m 666 /var/jail/dev/null c 1 3 $ cd /var/jail/etc $ cp /etc/ld.so.cache . $ cp /etc/ld.so.conf . $ cp /etc/nsswitch.conf . $ cp /etc/hosts .

bopke
bopke Moderator forum.lvlup.pro

te polecenia kopiują do strefy zamkniętej przez chroot pliki wymagane do działania.

AidisProPlayer
AidisProPlayer

To wszystko?

$ groupadd sshusers $ adduser -g sshusers serwer-hwserver1 $ mkdir -p /home/serwer-hwserver1/ $ chown serwer-hwserver1:serwer-hwserver1 /home/serwer-hwserver1/ $ mknod -m 666 /var/jail/dev/null c 1 3 $ cd /home/serwer-hwserver1/ $ cp /etc/ld.so.cache $ cp /etc/ld.so.conf $ cp /etc/nsswitch.conf $ cp /etc/hosts $ cp /usr/bin/ls $ cp /usr/bin/bash $ ldd /bin/ls $ cd /sbin $ wget -O l2chroot http://www.cyberciti.biz/files/lighttpd/l2chroot.txt $ chmod +x l2chroot $ l2chroot ls $ l2chroot bash w /etc/ssh/sshd_config: Match group sshusers ChrootDirectory /home/serwer-hwserver1/ X11Forwarding no AllowTcpForwarding no

bopke
bopke Moderator forum.lvlup.pro

przeczytałeś cały poradnik? Masz tam odpowiedź na takie pytania

AidisProPlayer
AidisProPlayer

i pytanie tak mam robić każdego użytkownika?

bopke
bopke Moderator forum.lvlup.pro

Każdego który ma być zamknięty przez chroot.

AidisProPlayer
AidisProPlayer

Ok dzięki.