Portál AbcLinuxu, 14. května 2025 02:07
-rw-r--r-- 1 foo www-data 0 2010-08-17 16:00 index.htmlNN
523 cd /root/ 524 ls 525 useradd test 526 useradd test2 527 touch test 528 chown test:test test 529 groupadd test3 530 touch test2 531 chown test2:test2 test2 532 s 533 ls 534 ls -alih 535 ls 536 groups 537 groups test2 538 groups test 539 ls 540 usermod --help 541* 542 usermod -G test3 test 543 usermod -G test3 tes2 544 usermod -G test3 test2 545 groups test 546 groups test2 547 ls 548 su test 549 ls 550 cd /etc/apache2/ 551 ls 552 cd sites-available/ 553 ls 554 rm default-ssl 555 ls 556 cp default test2 557 ls 558 mv default test 559 ls 560 vi test 561 ls 562 cat test > test2 563 ls 564 vi test2 565 ls 566 vi test 567 vi test2 568 cd /usr/src/ 569 ls 570 cata 571 ls -alih 572 cd .. 573 ls 574 cd /usr/src/ 575 ls 576 rm -r * 577 ls 578 mkdir test 579 mkdir test2 580 ls 581 cd /var/www/ 582 ls 583 cp index.html /usr/src/test 584 cp index.html /usr/src/test2 585 ls 586 cd /root/ 587 ls 588 cd /etc/apache2/ 589 ls 590 cd sites-enabled/ 591 ls 592 rm * 593 a2ensite test 594 a2ensite test2 595 . /etc/init.d/apache2 start & 596 ls 597 useradd www-data 598 ls 599 . /etc/init.d/apache2 start & 600 ls 601 usermod -G www-data test 602 usermod -G www-data test2 603 cd /usr/src/ 604 ls 605 chown -R test:test test 606 chown -R test2:test2 test2 607 ls 608 cd /etc/init.d/ 609 ./apache2 stop & 610 ./apache2 start & 611 lynx localhost 612 history 613 history | more 614 history 615 history | more 616 ls 617 history 618 cat /root/.profile 619 ls 620 history > /root/histToho bordelu kolem si nevsimej. Vytvoris dve konta a nechas soubory jejim vlastnikum (chown user:user). Kazdy uzivatel je sam sobe skupinou.. ale pridas je do dalsi skupiny (usermod -G www-data), takze si nebudou moc lez po souborech, ale apache je bude moc spoustet. NN
www-data
číst nějaký soubor, může ten soubor číst i jiný uživatel, který je členem skupiny www-data
. Takže jenom tímhle způsobem nejde zajistit, aby uživatel nemohl procházet soubory ostatních uživatelů. Aby ostatní uživatelé nemohli číst cizí soubory, i když jsou členy skupiny www-data, je potřeba jim nějak zabránit vstupu do adresářů ostatních uživatelů. Například na kořenové adresáře těch webů odebrat skupině www-data
právo x
(vlastník se tam dostane, protože právo x
vlastníka má přednost, členové skupiny www-data
se do něj nedostanou, ostatní ano, pokud je pro ostatní nastaveno právo x
). Pak by se tam ale nedostal ani Apache, takže je nutné ještě pro uživatele apache
pro dané adresáře přes ACL nastavit právo x
. Případně druhá varianta, bez ACL, je všechny uživatele zařadit ještě do skupiny www-data-bez-apache
, té odebrat právo x
na adresáře a Apache dovnitř pustit přes právo x
pro ostatní. Jiný způsob mne nenapadá (pokud teda nechcete další práva přes ACL nastavovat všem souborům a adresářům).
Varianta s ACL:
>ls -l drwx------+ web1 www-data 6 17. srp 18:30 web1 drwx------+ web2 www-data 6 17. srp 18:30 web2 drwx------+ web3 www-data 6 17. srp 18:30 web3 >getfacl web1 … user:apache:r-x … >getfacl web2 … user:apache:r-x … >getfacl web3 … user:apache:r-x …Varianta s druhou skupinou:
>ls -l drwx---r-x web1 www-data-bez-apache 6 17. srp 18:30 web1 drwx---r-x web2 www-data-bez-apache 6 17. srp 18:30 web2 drwx---r-x web3 www-data-bez-apache 6 17. srp 18:30 web3Je to ale jenom teorie, prakticky jsem to nikdy nezkoušel, tak nevím, zda jsem nepřehlédl něco, co by umožnilo takovéhle nastavení práv obejít.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.