Diskuze: Povolenia webového servera v inej zložke
Tvůrce
Zobrazeno 21 zpráv z 21.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
Nebylo by lepší nastavit +FollowSymlinks a udělat do té složky symlink ve /var/www?
je mozne aj to, ze Apache nedokaze citat subory v tej zlozke kvoli pristupovym pravam, kedze cely obsah /home/marian patri uzivatelovi "marian" a Apache bezi pod uzivatelom www-data, resp. nobody
pridaj mariana do tej istej skupiny, pod ktorou bezi apache a nastav prava pre skupinu: R
mkub mohol by som ťa poprosiť o návod ako to urobiť? Nechápem ako mám pridať mariana do tej istej skupiny ako apache.
jinak přesný popis chyby bys měl najít v logu.
napr.:
usermod -G www-data marian
si pridas uzivatela do skupiny www-data
alebo bez pridavania uzivatela do skupiny, pod ktorym bezi Apache:
chown -R marian:www-data home/marian/Dropbox/Code
a nasledne: a pomocou prikazu chmod si nastav prava pre ten adresar:
chmod -R g+r /home/marian/Dropbox/Code
v niektorych distribuciach nie je log textovy, ale binarny, to je bezne u
systemoch so SystemD namiesto klasickeho Init...
tam, kde je klasicky Init sa loguje za pomoci Syslog a logy su textove a sa
nachadzaju v adresari /var/log...
a co sa tyka SystemD, tak tu by mali pomoct prikazy:
journalctl
systemctl status [sluzba]
Stále to robí to isté... Ale k tomu sa mi podarilo používateľovi marian zrušiť práva na príkaz sudo. Podarilo sa mi to ale opraviť . Pôvodný problém ale stále pretrváva.
Ako to myslíš? Podľa Google sa jedná o odkaz, čož by mohlo vlastne problém vyriešiť.
to +FollowSymlinks je parameter volby
options v konfiguracnom subore Apacha pre dany adresar...
ale nemyslim, ze by to vyriesilo tvoj problem... myslim, ze sa jedna o to, ze
Apache nedokaze citat z toho adresara...
je mozne, ze mu brani v tom aj selinux, co je bezpecnostny pach do jadra
SELinux tomu nebrání, spíš permise nebo špatně nastavený DocumentRoot.
vcera som sa trosku nudil, hladal som veci okolo SystemD a natrafil som aj na
problem s medzi selinuxom a apache...
selinux ked sa zle nastavi, tak dokaze branit apachu k pristupu k suborom...
selinux je totiz bezpecnostny patch do jadra, ktory umoznuje delegovat aj roota na bezneho uzivatela
ale je optazne, ze ci instaloval do systemu aj ten selinux...
a co sa tyka toho DocumentRoot, tak to musi byt nastavene na taky adresar, ktory dokaze Apache citat, cize by mal mat na ten adresar prava R pre uzivatela a skupinu, pod ktorym Apache bezi (cize nobody, alebo www-data)
Já vím co je to SELinux, ale přeci jenom, na hodně platformách je i AppArmor.
ja som uviedol iba mozne priciny, ale pokial ma zle nastavenu bezpecnostnu politiku, tak Apache sa nedostane do toho adresara a moze vyhodit chybu 403...
ale v kazdom pripade v logoch byva uvedene, kde je chyba a to by malo
nasmerovat spravnym smerom...
u Init su logy v textovej forme v /var/log
u SystemD uz nie su textove logy, treba pouzit prikazy
systemctl/journalctl
jest-li to chceš mít pod "svým" portem tak to jdi do nastavení apache
je tam možnost, že když máš třeba default port (80) tak ti načte čistá
ip, pokud chceš mít další web tak mu třeba nastav port 90 a směrovou
složku dej někam do /var třeba /var/www2 což bude složka s 2. webem
dále je možnost přes "ISPConfig" nastavit více webu na který je možné se
dostat přes dns funguje to tak že ve složce "www" si vytvoří clienta s
názvy webů třeba:
www
-- client1
--- altimut.eu
----- log
----- tmp
----- web <- složka se samotným webem
atd..
Takže podarilo sa mi to vyriešiť keď som pridal do /etc/apache2/sites-available/000-default.conf tento kód:
<Directory />
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
Allow from all
</Directory>
nechapem jednu vec... a to je ta, ze preco povolujes vsetko pre adresar /, nestacilo by to nastavit len pre ten adresar, kde mas svoje webove projekty?
ked povolis pre Apache pristup do adresara /, tym otvaras utocnikovi moznost manipulovat so systemom, ako aj vytvaras mu aj zadne dvierka do systemu (napr. moze si kludne precitat obsah adresara /etc, tym moze zistit zo suboru /etc/password aj akych uzivatelov mas v systeme,...
a do /etc/apache2/sites-available/000-default.conf by som nezasahoval, radsej by som vytvoril novy konfiguracny subor napr. /etc/apache2/sites-available/projekt.conf (kde projekt je nazov projektu) a nasledne pomocou a2ensite projekt tu konfiguraciu stranky povolil
a nabuduce problemy s webserverom nedavaj do Linuxu, ale do Webove servery...
pre adresar / by mal byt pristup pre Apache denny, nie allow
Máš pravdu, správny kód teda bude:
<Directory /home/marian/Dropbox/Code>
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Require all granted
Allow from all
</Directory>
Čo sa týka zaradenia vlákna, nevšimol som si sekciu webové servery, ospravedlňujem sa.
//Môžem teda poprosiť admina aby zmenil správnu odpoveď, prípadne presunul vlákno?
Zobrazeno 21 zpráv z 21.