unix/linux advanced file permissions

Razmjena savjeta i trikova o podešavanju sustava i programa.

Moderator/ica: Moderatori/ce

Odgovori
Avatar
stefan
Moderator
Postovi: 4366
Pridružen/a: 28 sij 2009, 18:46
Spol: M
OS: openSUSE Leap KDE

unix/linux advanced file permissions

Post Postao/la stefan »

Like some other animals, the gecko can perform a neat trick when threatened by a predator: it can amputate its own tail. The dropped tail serves to distract the predator, and by losing it, the lizard can run faster.
Avatar
shrike
Moderator
Postovi: 10322
Pridružen/a: 07 pro 2007, 18:07
Spol: Y
OS: utuntu 19.10
Kontakt:

Re: unix/linux advanced file permissions

Post Postao/la shrike »

Zanimljivo štivo!
Es gibt keinen Gott, kein Universum, keine menschliche Rasse, kein irdisches Leben, keinen Himmel, keine Hölle. Es ist alles ein Traum - ein grotesker und dummer Traum. Nichts existiert außer dir. Und du bist nur ein Gedanke - ein vagabundierender Gedanke, ein nutzloser Gedanke, ein heimatloser Gedanke, der verloren in der leeren Ewigkeit wandelt!
Avatar
stefan
Moderator
Postovi: 4366
Pridružen/a: 28 sij 2009, 18:46
Spol: M
OS: openSUSE Leap KDE

Re: unix/linux advanced file permissions

Post Postao/la stefan »

shrike je napisao/la:Zanimljivo štivo!
Da, i meni je bilo...
Ima i nastavak.. Access Control Lists pa onda AppArmor i SELinux

Za ACL:
http://www.vanemery.com/Linux/ACL/linux-acl.html
http://www.unixsite.com/2011/03/14/linu ... -examples/

U AppArmor i SELinux ne zelim ni ulaziti...

Netko je bio spomenuo da se u NTFS permissionsima moze vise nego u linuxu? :D
Like some other animals, the gecko can perform a neat trick when threatened by a predator: it can amputate its own tail. The dropped tail serves to distract the predator, and by losing it, the lizard can run faster.
Avatar
shrike
Moderator
Postovi: 10322
Pridružen/a: 07 pro 2007, 18:07
Spol: Y
OS: utuntu 19.10
Kontakt:

Re: unix/linux advanced file permissions

Post Postao/la shrike »

selinux je dosta zeznut. Ja sam se više puta sa njime bavio i konfiguracija je paklenska, a rizik da ti sustav postane nebootabilnim je dosta velik. Pozitivno je to što direktno preko selinuxa može ukinut funkcioniranje svih nepotrebnih servisa:D Čovjek ne bi vjerovao koliko se ubrzanje dobije za istu iskoristivost, samo sa 90% manje smeća koje se nepotrebno vrti u pozadini!!!!
Es gibt keinen Gott, kein Universum, keine menschliche Rasse, kein irdisches Leben, keinen Himmel, keine Hölle. Es ist alles ein Traum - ein grotesker und dummer Traum. Nichts existiert außer dir. Und du bist nur ein Gedanke - ein vagabundierender Gedanke, ein nutzloser Gedanke, ein heimatloser Gedanke, der verloren in der leeren Ewigkeit wandelt!
Avatar
drade
Postovi: 910
Pridružen/a: 12 svi 2010, 07:57
OS: linux

Re: unix/linux advanced file permissions

Post Postao/la drade »

shrike je napisao/la:selinux je dosta zeznut. Ja sam se više puta sa njime bavio i konfiguracija je paklenska, a rizik da ti sustav postane nebootabilnim je dosta velik. Pozitivno je to što direktno preko selinuxa može ukinut funkcioniranje svih nepotrebnih servisa:D Čovjek ne bi vjerovao koliko se ubrzanje dobije za istu iskoristivost, samo sa 90% manje smeća koje se nepotrebno vrti u pozadini!!!!
disableanje procesa preko selinux politika je besmisleno, radije ga disableas prilikom startanja sustava (rc-update, chkconfig, update-rc.d ... itd.), ili deinstaliras paket (kao sto to svaki "dobar" covjek radi s NetworkManager paketom :P).

selinux je "sandboxing" alat (mehanizam) i za to bi ga se trebalo koristiti, ili uopce ne.

Dodatak na OP; za izlistavanje selinux konteksta necega na sustavu koristi se (zapravo zamo -Z argument, ali ovako je meni prakticnije):

Kod: Označi sve

ls -laZ
When you're a kid and you wanna go "Weee !", but you ain't got drugs yet ... You hold out for your life, hold on to your little GONADS ... and STRIFE.
Avatar
shrike
Moderator
Postovi: 10322
Pridružen/a: 07 pro 2007, 18:07
Spol: Y
OS: utuntu 19.10
Kontakt:

Re: unix/linux advanced file permissions

Post Postao/la shrike »

E da, ali selinux je nekako sveobuhvatniji. Nije samo stvar da se onemogući nešto iz rc, već u tome da selinux nekako zablokira brdo bespotrebnih poziva i funkcija biblioteka koje nešto korisno rade, ali imaju i neki beskorisni/bespotrebni element koji samo guši sustav zauzimanjem resursa. Nisam totalno ovo skužio, ali jesam vidio da selinux blokira brdo stvari od legitimni aplikacija, ALI da ja ne primjećujem da nešto nije u redu ili da se ne odvija. Ne znam kako to drugačije objasniti osim na način da su se blokirale bespotrebne kalkulacije unutar potrebnih elemenata.
Es gibt keinen Gott, kein Universum, keine menschliche Rasse, kein irdisches Leben, keinen Himmel, keine Hölle. Es ist alles ein Traum - ein grotesker und dummer Traum. Nichts existiert außer dir. Und du bist nur ein Gedanke - ein vagabundierender Gedanke, ein nutzloser Gedanke, ein heimatloser Gedanke, der verloren in der leeren Ewigkeit wandelt!
Avatar
drade
Postovi: 910
Pridružen/a: 12 svi 2010, 07:57
OS: linux

Re: unix/linux advanced file permissions

Post Postao/la drade »

shrike je napisao/la:E da, ali selinux je nekako sveobuhvatniji. Nije samo stvar da se onemogući nešto iz rc, već u tome da selinux nekako zablokira brdo bespotrebnih poziva i funkcija biblioteka koje nešto korisno rade, ali imaju i neki beskorisni/bespotrebni element koji samo guši sustav zauzimanjem resursa. Nisam totalno ovo skužio, ali jesam vidio da selinux blokira brdo stvari od legitimni aplikacija, ALI da ja ne primjećujem da nešto nije u redu ili da se ne odvija. Ne znam kako to drugačije objasniti osim na način da su se blokirale bespotrebne kalkulacije unutar potrebnih elemenata.
Mislim da se razilazimo u pojmovima. Nisam rekao da selinux blokira nesto iz rc, selinux je, kako sam napomenuo u svom prethodnom postu, "sandboxing" mehanizam kojime zapravo radis restrikciju tko/sto ima pristup cemu (u najjednostavnijem smislu).

Konceptualno, selinux je nesto poput internog vatrozida izmedju raznih programa na sustavu (ali nije vatrozid, "per se"). Dodatno, ti sam kao administrator sustava mozes kreirati politike kojima nesto uvjetujes na svom sustavu.

Na primjer, izlistavanje selinux konteksta servisnih portova:

Kod: Označi sve

semanage port -l | grep -i http
ce ti izlisatati na kojem servisnom portu (kako je uvjetovano selinux politikom) je dozvoljeno httpd daemonu slusati i primati konekcije.

To mozes izmjeniti (recimo httpd daemon):

Kod: Označi sve

semanage port -d -t http_port_t -p tcp 80
semanage port -a -t http_port_t -p udp 12345
Gore navedeni set komandi radi sljedece:
1. Onemogucava httpd daemonu da slusa i prima konekcije putem TCP-a na servisnom portu 80.
2. Omogucava httpd daemonu da slusa i prima konekcije na servisnom portu 12345 koristeci UDP.

Ovo mozes napraviti i sa FS resursima, npr. kojemu direktoriju/datoteci httpd daemon moze pristupati a kojima ne moze.

Kod: Označi sve

chcon --reference /originalni/httpd_dir /novi_httpd_dir
ili

Kod: Označi sve

chcon -R -t httpd_sys_content_t /novi_httpd_dir
Prva naredbena linija ce se referencirati na postojeci direktorij (recimo onaj u kojemu drzis root direktorije virtualnih hostova) i te iste dozvole dati novom direktoriju. Druga naredbena linija ce postaviti kontekst koji je potreban kako bi httpd daemon imao pristup navedenom direktoriju (kontekst se dobiva koristenjem komande ls -Z).

Bla, bla, bla, bla ... Pisanje vlastitih selinux politika je "biatch" u najmanjem smislu rijeci :D. Selinux je opsirna tema, a ovo su tek neke osnove.

Sto sam zapravo htio reci jest sljedece; za onemogucavanje nekog servisa/programa da se pokrece na sustavu koristi rc skripte ili deinstaliraj paket, a za "sandboxing" istog koristi selinux.
When you're a kid and you wanna go "Weee !", but you ain't got drugs yet ... You hold out for your life, hold on to your little GONADS ... and STRIFE.
Avatar
shrike
Moderator
Postovi: 10322
Pridružen/a: 07 pro 2007, 18:07
Spol: Y
OS: utuntu 19.10
Kontakt:

Re: unix/linux advanced file permissions

Post Postao/la shrike »

Mislim da mi pričamo o dvije različite stvari. Ne koristim selinux za onemogućavanje servisa, već dajem komentar da sam primjetio da se sa selinuxom sve brže izvodi. Objašnjenje za to ubrzanje dajem u vidu toga da su neki aspekti aplikacija onemogućeni, no kako ja ne vidim nikakvu razliku pretpostavljam da su te sve stvari koje više ne rade i koje selinux blokira totalno redundantne.
Es gibt keinen Gott, kein Universum, keine menschliche Rasse, kein irdisches Leben, keinen Himmel, keine Hölle. Es ist alles ein Traum - ein grotesker und dummer Traum. Nichts existiert außer dir. Und du bist nur ein Gedanke - ein vagabundierender Gedanke, ein nutzloser Gedanke, ein heimatloser Gedanke, der verloren in der leeren Ewigkeit wandelt!
Avatar
drade
Postovi: 910
Pridružen/a: 12 svi 2010, 07:57
OS: linux

Re: unix/linux advanced file permissions

Post Postao/la drade »

Ne bih bas rekao da se sve brze izvodi. Managiram selinux enabled servere, nisam primjetio nikakve promjene "performance wise" imajuci selinux ukljucen ili iskljucen.
When you're a kid and you wanna go "Weee !", but you ain't got drugs yet ... You hold out for your life, hold on to your little GONADS ... and STRIFE.
Odgovori