Nowe posty

xx Co wybrać? (1)
Wczoraj o 21:54:29
xx Zlecę skrypt w bashu (0)
2020-02-19, 14:07:39
xx Nadawanie praw katalogom takich, jak nazwa usera (4)
2020-02-17, 14:15:18
xx Fedora na laptopie HP 15-bs152nw brak wifi (44)
2020-02-16, 12:17:18
xx Komputer do nauki linuxa (10)
2020-02-15, 07:03:28
xx Patronat serwisow internetowych. (1)
2020-02-13, 00:13:24
xx Xfce-terminal v 0.8.7.4 - jak ustawić wklejanie skopiowanego tekstu? (3)
2020-02-12, 18:59:24
xx HD ISO, jak odzyskać starsze pliki (6)
2020-02-12, 10:54:31
xx QEMU KVM gpu passthrough brak obrazu (4)
2020-02-11, 17:05:06
xx i7-9700 + Intel H370 (0)
2020-02-11, 12:36:55

Autor Wątek: Uprawnienia  (Przeczytany 870 razy)

Offline 1709

  • Users
  • Guru
  • *****
  • Wiadomości: 2353
  • 1709
    • Zobacz profil
Uprawnienia
« dnia: 2018-03-26, 13:13:41 »
Stworzylem sobie katalog
( w katalogu domowym )
$ ls -l
total 8
drwxr--r-- 2 root tele 4096 Mar 25 21:51 tt/
Z plikiem w srodku
# ls -l tt
total 4
-rw-rw-r-- 1 tele tele 56 Mar 25 21:42 t

Celem testu bylo tylko odebranie praw wykonywalnosci,
- aby po kliknieciu przypadkiem plik sie nie uruchomil
- nie uruchomil sie nawet jesli dostanie prawa wykonywalnosci
( a najlepiej gdyby zaden plik w katalogu ich nie dostal )
- aby nie dalo sie uruchomic skryptu takze innym programem
- aby mozna bylo go przeczytac w edytorze tekstowym.

Problem w tym, ze z konta uzytkownika
nie moge sie dostac do katalogu i
nie moge otworzyc pliku.

$ ls -l tt
ls: cannot access tt/t: Permission denied
total 0
-????????? ? ? ? ?            ? t
$ ls /home/tele/Desktop/test/tt
ls: cannot access /home/tele/Desktop/test/tt/t: Permission denied
t



Czy cos zrobilem zle odbierajac prawa wykonywalnosci
dla katalogu i pliku w nim ?

Kalkulator uprawnien
https://chmod-calculator.com/
« Ostatnia zmiana: 2018-03-26, 13:23:04 wysłana przez 1709 »
PS: Brak polskiej czcionki, nie jest to brak lenistwa, a jej brak w systemie i brak czasu na reczne poprawki.

Offline parana

  • Users
  • Stały bywalec
  • ***
  • Wiadomości: 100
    • Zobacz profil
Odp: Uprawnienia
« Odpowiedź #1 dnia: 2018-03-26, 14:01:40 »
Katalog zawsze musi mieć prawo x
« Ostatnia zmiana: 2018-03-26, 14:31:27 wysłana przez parana »
ASRock A320M-HDV 3.0, ASRock TPM2-S, Athlon 200GE, 2X4GB 2400MHz Ballistix Sport LT, PCIe Gen 3 M2 Silicon 128 GB, 2XSSD Silicon Power A55 256GB, Logic M4, Be quiet! B9 350W, SilentiumPC Zephyr 80mm. GNU/Linux Debian 10
Nauka na VPS - https://mikr.us/?r=a406 (Polecam 5% taniej)

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 2564
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
    • keybase.io/pkraszewski
Odp: Uprawnienia
« Odpowiedź #2 dnia: 2018-03-26, 14:09:23 »
* Atrybut "wykonywalności" do katalogu to to, czy wolno ci do niego wejść. Jak nie możesz wejść, to nie wyświetlisz zawartości.

* "aby nie dalo sie uruchomic skryptu takze innym programem" i "aby mozna bylo go przeczytac w edytorze tekstowym" są sprzeczne. Wywołanie skryptu przez "bash skrypt", "python skrypt" albo "mojUlubionyInterpreter skrypt" nie robi nic poza czytaniem tego skryptu - nie jest wymagane uprawnienie do uruchomienia. Przed takim uruchomieniem nie broni nawet dodanie noexec do flag montowania katalogu domowego. Atrybut wykonywalności włącza jedynie mechanizm interpretacji pierwszej linijki skryptu (#!/....) jako interpretera do uruchomienia skryptu bez jawnego jego podawania.

test.sh   rwxr-xr-x:
#!/bin/sh
echo "Hello world"
można uruchomić tak:

> ./test.sh   # bo jest wykonywalny oraz ma bangline na początku
> sh ./test.sh # bo da się przeczytać (nie ma innych wymagań)
Paweł Kraszewski
~Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

Offline 1709

  • Users
  • Guru
  • *****
  • Wiadomości: 2353
  • 1709
    • Zobacz profil
Odp: Uprawnienia
« Odpowiedź #3 dnia: 2018-03-26, 14:41:32 »
Cytuj
* Atrybut "wykonywalności" do katalogu to to, czy wolno ci do niego wejść.
Tu mnie zaskoczyles  :D

Zdaje sobie sprawe ze mozliwosc przeczytania pliku
nie zabroni programowi ktory go czyta,
skopiowania zawartosci do pamieci i jego wykonanie z uprawnieniami.

Ale zauzmy ze uffam tylko programom nano i tar,
Czy moge uruchomic np. firefoxa bez sandboxa,
zeby nie mogl czytac plikow w katalogu domowym ?
( przy zalozeniu ze pliki tymczasowe bedzie trzymal w /tmp , a nie w katalogu domowym )

Edytowane
Zauwazylem ze jesli chcemy ograniczyc prawa do jakiegos katalogu
np. /home/tele/test/
to nalezy usunac prawa wejscia ( x ) dla innych uzytkownikow
$ ls -l test
total 4
-rw-rw-r-- 1 tele tele 5 Mar 26 13:06 t
i uruchamiac programy z innego konta uzytkownika
$ ls -l /home/tele/test/t
-rw-rw-r-- 1 tele tele 5 Mar 26 13:06 /home/tele/test/t
$ su test -c 'ls -l /home/tele/test/t'
Password:
ls: cannot access /home/tele/test/t: Permission denied

Jedyny problem jeszcze widze tylko w tym ze programy moga sobie
nawzajem czytac pliki tymczasowe, ale usuwac podobno juz niekoniecznie.
Cytuj
Sticky bit jest używany, gdy zachodzi potrzeba aby w danym współdzielonym katalogu wszyscy użytkownicy mogli tworzyć katalogi i pliki ale aby nie mogli sobie wzajemnie usuwać ich.
http://www.linuxexpert.pl/posts/2132/prawa-dostepu-do-plikow/

Edytowane
Zle przeczytalem o Sticky bit, to dotyczy uztkownikow,
 a nie programow na tym samym koncie.
« Ostatnia zmiana: 2018-03-26, 16:08:07 wysłana przez 1709 »
PS: Brak polskiej czcionki, nie jest to brak lenistwa, a jej brak w systemie i brak czasu na reczne poprawki.

Offline vanhelzing

  • Users
  • Prawie jak Guru
  • ****
  • Wiadomości: 314
    • Zobacz profil
Odp: Uprawnienia
« Odpowiedź #4 dnia: 2018-03-26, 17:42:53 »
Cytuj
Czy moge uruchomic np. firefoxa bez sandboxa,
zeby nie mogl czytac plikow w katalogu domowym ?

Możesz stworzyć użytkownika "firefox" i uruchamiać firefoksa z jego uprawnieniami.

Offline 1709

  • Users
  • Guru
  • *****
  • Wiadomości: 2353
  • 1709
    • Zobacz profil
Odp: Uprawnienia
« Odpowiedź #5 dnia: 2018-03-26, 19:31:22 »
Dzieki wszystkim za wyjasnienia. :)
PS: Brak polskiej czcionki, nie jest to brak lenistwa, a jej brak w systemie i brak czasu na reczne poprawki.