ďťż
 
 
   Lstat Permission denied w apache2
 
 

Tematy

 
    
 

 

 

 

Lstat Permission denied w apache2





marg1 - 30-10-2009 15:11
Witam.
Nie wiem, czy ten problem jest tak rzadki, czy taki prosty do rozwiązania, ale Google na ten temat według mnie jest dosyć małomówne.
Chciałem sobie zainstalować lstat do apache 2 i efekt jest taki, że pod adresem statystyk mam: Software error:
Cant open configfile /usr/local/lstat/etc/pages/user.config : Permission denied
 at /usr/local/lstat/lib//Misc.pm line 220
BEGIN failed--compilation aborted at /usr/local/lstat/lib//Misc.pm line 220.
Compilation failed in require at /usr/local/lstat/lib//Std_obj.pm line 2.
BEGIN failed--compilation aborted at /usr/local/lstat/lib//Std_obj.pm line 2.
Compilation failed in require at /usr/local/lstat/lib//Plugins.pm line 4.
BEGIN failed--compilation aborted at /usr/local/lstat/lib//Plugins.pm line 4.
Compilation failed in require at /var/www/lstat/lstat.cgi line 10.
BEGIN failed--compilation aborted at /var/www/lstat/lstat.cgi line 10.

For help, please send mail to the webmaster (webmaster@localhost), giving this error message and the time and date of the error. Chętnie bym sobie wysłał mail do siebie, gdybym wiedział, jak to naprawić.

Jest taki temat odnośnie tego błędu http://forum.dug.net.pl/viewtopic.php?id=10117
tylko nie wiem, co z niego wynika, że odmowa dostępu to widzę.
W Google tylko 2 tematy o tym, ten jest drugi:
http://forum.infojama.pl/framehelper...posts&t=105017
Zmieniałem prawa do pliku ,,user.config'' przez ,,chmod 775'' i nic to nie dało, jak i przez: chown -R marg1 Nie wiem jak ten fakt rozumieć. marg1@siduxbox:~$ sudo  a2enmod cgi
Your MPM seems to be threaded. Selecting cgid instead of cgi.
Module cgid already enabled /etc/apache2/sites-available/default
<VirtualHost *:80>
        ServerAdmin webmaster@localhost

        DocumentRoot /var/www
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>

        ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
        <Directory "/usr/lib/cgi-bin">
                AllowOverride None
                Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
                Order allow,deny
                Allow from all
        </Directory>

<Directory "/var/www">

    #for execute CGI files
    Options ExecCGI FollowSymLinks
    AddHandler cgi-script .pl
</Directory>
ErrorLog /var/log/apache2/error.log

        # Possible values include: debug, info, notice, warn, error, crit,
        # alert, emerg.
        LogLevel warn

        CustomLog /var/log/apache2/access.log combined

    Alias /doc/ "/usr/share/doc/"
    <Directory "/usr/share/doc/">
        Options Indexes MultiViews FollowSymLinks
        AllowOverride None
        Order deny,allow
        Deny from all
        Allow from 127.0.0.0/255.0.0.0 ::1/128
    </Directory>

</VirtualHost> /etc/apache2/httpd.conf
Include /etc/apache2/lstat.conf Bez uzupełnienia tego pliku przez powyższy wpis wyświetlał mi się jedynie niezinterpretowany plik tekstowy.



lessmian2 - 30-10-2009 15:30
Wklej logi Apache2 i zawartość pliku /etc/apache2/lstat.conf. Możesz też podać źródło na którym się wzorowałeś konfigurując to wszystko.



marg1 - 30-10-2009 15:41
Jeśli chodzi o katalog /var/log/apache2 to mam go pusty, ale apache2 sam w sobie działa.
Z tego korzystałem przy instalacji lstat
http://dug.net.pl/tekst/79/instalacja_lstat_na_apache2/
z resztą wspólnymi siłami trochę modyfikowany świeży artykuł
lstat.conf
Alias /lstat/ "/var/www/lstat/"

<Directory "/var/www/lstat/">
#for execute CGI files
    Options ExecCGI
    AddHandler cgi-script .cgi
    AllowOverride AuthConfig Limit
    SetEnv LANG pl_PL
</Directory> Serwer zamontowałem sobie w sumie dla zabawy, bo nie mam zewnętrznego IP - tak czy siak w celu pogłębiania mojej niewielkiej wiedzy lub ewentualnie celem udostępniania za jego pomocą plików w sieci lokalnej.
Bo konfiguracja Samby, aby współpracowała z siecią Windowsa jest dla mnie całkiem nie do przejścia - w każdym razie zależy mi na apache w tym momencie.



lessmian2 - 30-10-2009 15:50
Zmień właściciela pliku /usr/local/lstat/etc/pages/user.config na www-data i sprawdź czy to pomoże.



marg1 - 30-10-2009 16:16
Udało się.
Ale zmieniłem właściciela na www-data dla całego katalogu /usr/local/lstat/etc/pages i dopiero zadziałało, a nie tylko dla samego pliku, czyli: sudo chown -R www-data  /usr/local/lstat/etc/pages/ Teraz wszedłem na statystyki wybrałem jeżyk polski i mam tak: STOP
Ze względów bezpieczeństwa
Dostęp do statystyk jest zablokowany
Uruchom program security_lstat, aby skonfigurować dostęp do statystyk
lub usuń plik blokady (/usr/local/lstat/etc/lstat.lck)
więcej informacji Ale z tym to już sobie poradzę, bo mnie odesłało do takiej fajnej instrukcji. No chyba, że nie.
Wielkie podziękowania.

Chyba nie całkiem:
ustawiłem zabezpieczenia, wszedłem do środka i teraz w co bym nie klknął mam:
Statystyki interfejsów sieciowych

Software error:
Can't load object: int1
 at /var/www/lstat/lstat.cgi line 405

For help, please send mail to the webmaster (webmaster@localhost), giving this error message and the time and date of the error. Sekcja pliku /var/www/lstat/lstat.cgi zawierająca linie 405:

$Tags {'DRAW'} = sub {
    my $paramline = shift;
    $paramline =~ s/^(\w+)//; #extract objname
    my $objname = $1;
    my $obj;
      $obj = LoadObjectByName ($objname); # load object to memory
      if (! defined ($obj)) { croak "Can't load object: $objname \n" }
      $obj->Draw ($from, $to,'',$paramline); #draw obj graph
      undef $obj;
};



lessmian2 - 30-10-2009 18:15
No to teraz powiedz jeszcze co dokładnie robiłeś ustawiając te zabezpieczenia, i czy robiłeś to z roota :)



marg1 - 30-10-2009 18:59
W katalogu /usr/local/lstat/bin
skryptem
./security_lstat  --text z roota bo i inaczej nie dawał pozwolenia na uruchomienie się.
Zostawiłem zabezpieczenia dla modyfikacji wykresów i ustawień - zabezpieczyłem na hasło i login. Oglądanie zostawiłem bez zabezpieczeń.



lessmian2 - 30-10-2009 19:04

nie dawał pozwolenia na uruchomienie się To znaczy? Wydaje mi się (wydaje) że po uruchomieniu security_lstat utworzyły się jakieś pliki do których dostęp ma tylko root, i teraz właściciel procesu serwera www czyli www-data nie ma do nich dostępu.



marg1 - 30-10-2009 19:06
Moment, sprawdzę co dokładnie wyświetla się po uruchomienie tego jako użytkownik
marg1@siduxbox:/usr/local/lstat/bin$ ./security_lstat  --text
Cant open configfile /usr/local/lstat/etc/pages/user.config : Brak dostępu
 at /usr/local/lstat/lib//Misc.pm line 220
BEGIN failed--compilation aborted at /usr/local/lstat/lib//Misc.pm line 220.
Compilation failed in require at ./security_lstat line 6.
BEGIN failed--compilation aborted at ./security_lstat line 6. Znowu w tym samym kurde folderze. A przecież zmieniłem właściciela dla całego tego folderu więc nie wiem?
Może trzeba zrobić tak, żeby do całego lstatu miał dostęp zwykły użytkownik albo raczej www-data?
Albo raczej do katalogu /usr/local/lstat/bin, żebym miał dostęp do tego security_lstat jako zwykły użytkownik?
Ciężko mi się gdyba z moją wiedzą.

Logicznie myśląc, to jak dla /usr/local/lstat/etc/pages/ zmieniłem właściciela na www-data to statystki w ogóle zaczęły działać, a jak zmienie na zwykłego użytkownika, to znowu działać nie będą - chyba?
Czyli jak połączyć te dwie sprawy, żeby możliwy był dostęp przez właściciela www-data i przez zwykłego użytkownika, żeby mógł zadziałać security_lstat ./security_lstat  --text jako zwykły użytkownik?
Innymi słowy, czy tu sprawa leży po stronie praw do pliku /usr/local/lstat/bin/security_lstat czy raczej po stronie praw do   /usr/local/lstat/etc/pages/user.config Bo jeżeli nie po stronie tego pierwszego, to czemu, jako root, ten skrypt security_lstat mi się normalnie uruchamia, a jako zwykły użytkownik mam błąd jak wyżej?
Tyle co wygdybałem :-D
Ale zaczyna mnie to irytować, bo co się za coś zabieram, zawsze mam jakieś nietypowe problemy, których nie mają wszyscy inni...

Dopowiem, że długo przed zainstalowaniem apache i lstat wyłączyłem sobie niekótre usługi, bo były mi niepotrzebne i teraz po każdej np aktualizacji mam taki komunikat od apt:
Sorry.  You can retry the autodetection at any time by running "wvdialconf".
  (Or you can create /etc/wvdial.conf yourself.)
Konfigurowanie irqbalance (0.55+20091017-2) ...
update-rc.d: warning: irqbalance stop runlevel arguments (0 1 6) do not match LSB Default-Stop values (1)
insserv: warning: script 'K01lstat' missing LSB tags and overrides
insserv: warning: current start runlevel(s) (2 3 4 5) of script `sendsigs' overwrites defaults (empty).
insserv: warning: current stop runlevel(s) (S) of script `pcmciautils' overwrites defaults (empty).
insserv: warning: current start runlevel(s) (0) of script `halt' overwrites defaults (empty).
insserv: warning: script 'lstat' missing LSB tags and overrides Być może to ma jakiś związek z niedziałającym u mnie lstatem?
Lstat samo w sobie bez błędu wstaje.
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • minister.pev.pl

  •  

     


     

     
    Copyright 2003. MĂłj serwis