Uszczelnić PHP wersja 0.4
|
|
- Dorota Pietrzyk
- 7 lat temu
- Przeglądów:
Transkrypt
1 Uszczelnić PHP wersja Było sobie PHP Większość dokumentów czy książek zaczyna się od definicji PHP i jego historii. Dlatego tutaj tego nie będzie. Potężne możliwości jakie oferuje ten język nie pozostają bez wpływu na bezpieczeństwo całego systemu. Poruszając temat bezpieczeństwa PHP możemy wyróżnić trzy najważniejsze elementy: instalacja, konfiguracja, programowanie. Instalacja: najważniejszym wydaje się być aktualna wersja oprogramowania serwera (PHP, Apache, mod_ssl itp.) oraz oprogramowania użytkowego ( poczta przez www, tablica ogłoszeń itd.). Bezpieczeństwo w znaczący sposób zwiększa uwięziony (ang. chrooted) Apacz. A kto może sobie na to pozwolić (np. firmy państwowe) stawia dedykowany serwer www. Tą kwestię poruszymy na szybkiego ograniczając się do krótkiego opisu instalacja Apacza z PHP. Konfiguracja: główny cel niniejszego dokumentu to przedstawienie różnych opcji konfiguracyjnych działającego serwera www z PHP (pliki php.ini oraz httpd.conf). Chodzi nam o ograniczenie stosunkowo niebezpiecznych elementów języka nie ograniczając przy tym funkcjonalności samego serwera. Programowanie: możemy wykorzystywać gotowe programy, możemy je pisać lub pisać mogą je inni. Dobrze jest znać przynajmniej podstawy pisania w PHP oraz najczęściej pojawiające się błędy. Przedstawione zostaną w tej pracy podstawowe rzeczy związane z bezpieczeństwem. Sposób konfiguracji naszego serwera zależy od funkcji, którą on pełni. Czy tylko my korzystamy z PHP, czy każdy może to robić, czy bawimy się na maszynie w domu czy też na serwerze przemysłowym. Jako administrator powinieneś najlepiej wiedzieć kto powinien móc co zrobić na maszynie będącej pod Twoją opieką. Okej, wystarczy tego marudzenia. 2. Instalujemy potrzebny soft Na początek powinniśmy zadbać o ściągnięcie ostatnich stabilnych wersji Apacza oraz PHP. Oto potrzebne linki: 1
2 W chwili pisania pierwszej wersji tego dokumentu aktualnymi wersjami były apache_ oraz php Na nich oprę dalszą część pracy. A teraz odnośnie możliwości połączenia Apacza z PHP. Otóż można to zrobić na dwa sposoby: jako moduł CGI oraz jako moduł Apacza (statyczny lub dynamiczny). Pierwszy z nich polega na tym, że nasze skrypty przekazywane są do interpretera PHP, zewnętrznego programu. Rozwiązanie to uważane jest za mniej bezpieczne i wolniejsze od modułu Apacza. Praca jako moduł serwera www jest szybsza (i bardziej wydajna w przypadku modułu statycznego). W ten właśnie sposób przygotujemy naszego Apacza. Na początku utworzę sobie użytkownika i grupę z których prawami będzie działał serwerek www. Wybór padł na użytkownika www i grupę www. Oto potrzebne polecenia: groupadd www useradd -c "serwer www" -d /dev/null -g www -s /bin/false www Po rozpakowaniu wcześniej wymienionych plików podaję, co następuje: cd apache_1.3.28/./configure cd.. cd php-4.3.2/./configure --with-apache=../apache_ without-mysql --without-pgsql make make install cd.. cd apache_1.3.28/./configure --prefix=/usr/local/apache --sysconfdir=/etc/apache --activate-module=src/modules/php4/libphp4.a --server-gid=www --server-uid=www make make install cd.. cd php-4.3.2/ cp php.ini-dist /usr/local/lib/php.ini Pozostało już tylko wrzucić do edytora plik konfiguracyjny Apacza (tutaj: /etc/apache/httpd.conf) i dopisać: AddType application/x-httpd-php.php Dobrze jest także sprawdzić parametr Port (zalecana wartość: 80) oraz User i Group (tutaj wartością powinno być www). Nasz serwer możemy uruchomić poleceniem: /usr/local/apache/bin/apachectl start I jeszcze dwa słowa wyjaśnienia: przygotowując PHP do kompilacji wyłączyłem przypadkowe wykrycie MySQL i PostgreSQL. Po prostu nie potrzebuję ich na razie w PHP i tyle. Opcje te możesz pominąć, ewentualnie włączyć jedną z nich. 2
3 Jeszcze coś: dobrze jest dopisać w pliku httpd.conf nazwę indeksowego (startowego) pliku.php (np. index.php). DirectoryIndex index.html index.php Teraz po przeładowaniu Apacza (/usr/local/apache/bin/apachectl restart) plikiem startowym może być index.php. Wypadałoby jeszcze sprawdzić, czy nasz Apacz z PHP działa. Tworzymy sobie plik testowy (np. touch /usr/local/apache/htdocs/test.php) a następnie umieszczamy w nim: <? phpinfo();?> Po wpisaniu do przeglądarki www adresu naszego serwera (np. powinniśmy ujrzeć wiele ciekawych informacji :) Jak wspomniałem wcześniej, instalacja omówiona została w dużym skrócie. Założyłem także, że wiesz do czego służą niektóre opcje w pliku httpd.conf. Jest wiele dokumentów w Sieci na temat konfiguracji samego Apacza i byłoby dobrze, gdybyś znał najważniejsze z nich. Wspomnę tylko, że może okazać się przydatne polecenie: /usr/local/apache/bin/apachectl configtest Celem tego wszystkiego jest otrzymanie działającego Apacza z PHP. Naszym najważniejszym plikiem będzie /usr/local/lib/php.ini i konfiguracja samego PHP. W dalszej części zakładam, że masz podstawowe pojęcie o httpd.conf oraz programowaniu w PHP. 3. register_globals od tego się zaczyna Plik konfiguracyjny PHP to /usr/local/lib/php.ini. Znajduje się w nim większość opcji mających wpływ na sposób, w jaki PHP działa. Po każdej zmianie w tym pliku należy przeładować Apacza (apachectl restart). register_globals = Off Wartość zalecana i domyślna od wersji PHP. Swojego czasu było to główne źródło problemów związanych z bezpieczeństwem języka. Ustawienie tej wartości na On powoduje, że wszystkie zmienne wysłane do skryptu tworzone były jako globalne nadpisując wcześniej ustalone wartości tych zmiennych lub tworząc zmienne jeszcze nie istniejące w skrypcie a wykorzystywane w nim później. Przykładem wykorzystywania tego faktu było np. oszukiwanie mechanizmów autoryzacji. 3
4 Zmiana domyślnej wartości tej opcji na Off, oprócz zwiększenia bezpieczeństwa spowodowała małą rewolucję w świecie PHP: programiści (idący zazwyczaj na jeszcze większą łatwiznę niż administratorzy) musieli przyzwyczaić się do nowego sposobu odwoływania do zmiennych a duża część istniejących programów musiała zostać poprawiona. Z punktu widzenia programisty wyłączenie tej opcji oznacza: odwołując się do zmiennej nazwisko zamiast $nazwisko używaj $HTTP_POST_VARS[ nazwisko ] lub jego skróconej formy $_POST[ nazwisko ]. Dla danych wysyłanych jako GET, należy użyć odpowiednio $HTTP_GET_VARS[ nazwisko ] i $_GET[ nazwisko ]. Osoby poznające dopiero PHP powinny poznać ten sposób odwoływania się do przesłanych zmiennych jako jedyny słuszny sposób. Podsumowując: register_globals = Off spowoduje, że PHP nie utworzy żadnych zmiennych globalnych nie zdefiniowanych w skrypcie explicite. Jest to wartość domyślna w obecnych wersjach PHP, w znaczny sposób zwiększająca bezpieczeństwo a także zalecana. 4. Admin daje, admin zabiera PHP jest dobrodziejstwem, na które użytkownicy powinni sobie zasłużyć :) Zaraz po instalacji a przed konfiguracją dobrze jest wyłączyć PHP dla użytkowników i ograniczyć jego działanie do określonych katalogów. Do takich i podobnych działań na tle konfiguracyjnym możemy posłużyć się flagami PHP. W pliku php.ini znajduje się wiele opcji konfiguracyjnych. Dotyczą one całego PHP a więc zmiany tam wprowadzone dotyczą wszystkich katalogów (stron) udostępnianych przez naszego Apacza: strony głównej naszego serwera, wirtualnych hostów oraz stron użytkowników. Flagi PHP umieszcza się w pliku httpd.conf w sekcji dotyczącej określonego katalogu i właśnie ich dotyczą wprowadzane zmiany. Możemy wyróżnić dwa rodzaje flag: dotyczące ustawień logicznych (coś działa lub nie On / Off) a także ustawień, które posiadają inne niż logiczne wartości, np. nazwa pliku lub katalogu. Mamy więc odpowiednio: php_admin_flag nazwa On/Off php_admin_value nazwa wartość I tak na przykład flaga logiczna engine odpowiada za to, czy PHP działa (interpretuje pliki.php) czy też nie. Niech główna strona naszego serwera www będzie pobierana z katalogu /usr/local/apache/htdocs/ (tak jest standardowo). Niech znajduje się tam plik index.php o zawartości: <??> phpinfo(); 4
5 Po połączeniu się z główną stroną naszego serwera www (np. powinniśmy zobaczyć wynik działania funkcji phpinfo(). A teraz do pliku httpd.conf dopiszmy w określonym miejscu: php_admin_flag engine Off Ma to wyglądać mniej więcej tak: <Directory "/usr/local/apache/htdocs">.. php_admin_flag engine Off.. </Directory> Po przeładowaniu Apacza (apachectl restart) wejdźmy jeszcze raz na naszą stronę główną. I co? Nic. Przynajmniej tak powinno być strona główna naszego serwera www powinna być pusta, ponieważ PHP zostało dla niej (i jej podkatalogów) wyłączone. Już pewnie czaisz, że umieszczenie tego wpisu dla katalogów użytkowników Twojego serwera wyłączy im PHP: <Directory "/home/*/public_html > php_admin_flag engine Off </Directory> Oczywiście powyższy przykład zakłada standardowy katalog na strony www użytkowników public_html. A więc sprawa wygląda tak, że możemy wyłączyć PHP dla danych katalogów (i jego podkatalogów) a więc strony głównej, hostów wirtualnych, użytkowników. A co zrobić, żeby PHP było domyślnie wyłączone i dopiero ręczne włączenie za pomocą flag dla odpowiednich katalogów je uruchamiało? Nic prostszego: <Directory /> php_admin_flag engine Off </Directory> Wpis dla wszystkich katalogów (Directory /) znajduje się gdzieś na początku httpd.conf. Umieszczenie w nim powyższego wyłączy dla całego serwera www interpreter PHP i dopiero umieszczenie w odpowiednim miejscu php_admin_flag engine On włączy PHP. Paniał? Inne flagi logiczne to na przykład: asp_tags, display_errors, file_uploads itd. spójrz w to, co zwróci phpinfo() we flagach logicznych możesz przebierać. Drugi rodzaj flag ( wartościowe ) stosuje się analogicznie w odniesieniu do katalogu dla którego coś zmieniamy, np. php_admin_value auto_append_file dodatki.php. Może nie jest to najlepszy przykład, ale zasada działania identyczna: jeśli coś ma wartość On/Off stosujemy php_admin_flag, jeśli wartość jest liczbowa czy znakowa: php_admin_value. Jeszcze raz odsyłam do tego, co zwraca phpinfo() flag jest sporo. Tak więc przy pomocy flag możemy indywidualnie, dla danych katalogów (i skryptów w nich zainstalowanych) zmieniać własności PHP. Jeśli trzeba, możesz przy pomocy flag włączyć na przykład register_globals dla danego katalogu, pozostawiając resztę systemu bez tego. 5
6 To jeszcze nie koniec z flagami. Często istnieje potrzeba, żeby dla określonego katalogu (np. hosta wirtualnego) użytkownik sam mógł zmieniać niektóre flagi PHP. Oczywiście i to można zrobić ale trzeba się odpowiednio zabezpieczyć. Przykład: niech katalog /usr/local/apache/htdocs/firma_pl/ będzie katalogiem głównym dla jakiegoś hosta wirtualnego. Osoba tworząca tą stronę chce móc zmieniać niektóre flagi PHP (może to być na przykład auto_prepend_file, include_path czy coś w tym stylu). Wpis w httpd.conf powinien wyglądać następująco: <Directory /usr/local/apache/htdocs/firma_pl/ > AllowOverride Options </Directory> Jak już pewnie się domyślasz, do zmiany wartości flag posłuży plik.htaccess. Użytkownik umieszcza w nim potrzebne flagi razem z ich wartościami. I teraz tak: PHP działającego w katalogu /usr/local/apache/htdocs/firma_pl/ mogą dotyczyć już pewne flagi ustawione wcześniej przez administratora. Użytkownik nie może nadpisać wartości flag php_admin_flag oraz php_admin_value. Może on natomiast nadpisać wartości flag uwaga php_flag oraz php_value. Podsumowując: oto jak może wyglądać httpd.conf dla danego katalogu: <Directory /usr/local/apache/htdocs/firma_pl/ > AllowOverride Options # tych flag nie nadpisze: php_admin_flag register_globals Off php_admin_flag file_uploads Off # a to może php_flag asp_tags Off </Directory> I oto przykładowy.htaccess wrzucony do /usr/local/apache/htdocs/firma_pl/: php_flag asp_tags On php_value auto_prepend_file dodatki.php A jak klient przestanie płacić za miejsce na Twoim serwerze możesz do httpd.conf, do jego sekcji dopisać php_admin_flag engine Off. AllowOverride Options (lub AllowOverride All) w httpd.conf umożliwiają poprzez plik.htaccess nadpisanie pewnych standardowych opcji PHP Twojego serwera użytkownikom. Może dotyczyć to dowolnych katalogów (domowych użytkowników czy hostów wirtualnych). Wykorzystują oni w tym celu flagi php_flag i php_value. Możesz im jednak narzucić wartości niektórych opcji wykorzystując php_admin_flag i php_admin_value. Możesz także w httpd.conf wykorzystać flagi php_flag i php_value jednak użytkownicy, którym pozwolisz na swoje definicje, nadpiszą te standardowe. Tak czy siak, flagi php_admin_* nie zostaną przez nich nadpisane. 6
7 5. Co może użytkownik? Wbrew pozorom dużo. Weźmy typową sytuację, kogoś kto chce na naszym serwerze mieć założone konto i swoją stronę www (wykonaną oczywiście w PHP). Nasz nowy użytkownik otrzymuje login, katalog domowy, pusty shell (np. /bin/false) oraz dostęp przez FTP (jego / jest katalog domowy) a my jesteśmy szczęśliwi bo postawił przy okazji kilka piw. Co może nam zrobić, gdy nie ma shella? Pewnie nawet nie wie, jakim systemie i sprzęcie pracuje nasz serwerek. Niech jego loginem będzie zdzichu, katalogiem domowym /home/zdzichu, podkatalogiem jego strony www: public_html. Niech jego shellem będzie /bin/false. Tak więc Zdzichu łączy się przez FTP z naszym serwerem i wrzuca do podkatalogu public_html następujący plik index.php: <? $polecenie1="/bin/dmesg"; $polecenie2="/bin/netstat -a"; $plik="/etc/passwd"; system($polecenie1); print "<br><br>"; passthru($polecenie2); print "<br><br>"; readfile($plik); print "<br><br>"; phpinfo();?> Uważaliśmy Zdzicha za ciotę (pewnie przez twarz i zachowanie podobne do Ryśka z Klanu ), tymczasem he runs the show. Wie teraz więcej niż my o naszym serwerze i przy okazji udostępnia te informacje innym. Nieeeee... tak dalej być nie może. Co zrobił Zdzichu? Wykonał pewne polecenia systemowe, odczytał ważny plik i wykorzystał funkcję zwracającą wiele informacji o naszym serwerze. Dostęp do plików Zdzichu otworzył plik /etc/passwd. Równie dobrze mógłby otworzyć każdy inny plik na dysku serwera, który ma r dla wszystkich. Rozwiązaniem tego problemu jest funkcja safe_mode. Jest to jedna z najważniejszych funkcji PHP związanych z bezpieczeństwem. Umieszczenie w pliku php.ini zapisu: safe_mode = On spowoduje, że skrypty dostaną dostęp tylko do tych plików, których właściciel jest identyczny z właścicielem skryptu. Jeśli powyższy index.php należy do Zdzicha, skrypt będzie mógł otworzyć tylko pliki, których właścicielem jest Zdzichu. 7
8 Funkcje Dochodzimy do miejsca, w którym należy wyłączyć pewne funkcje. Służy temu opcja disable_functions. Jej argumentami są funkcje, które nie powinny być dostępne. Naszymi kandydatami są takie, umożliwiające na różne sposoby wykonanie poleceń systemowych: disable_functions = exec, passthru, system, popen; Dobrze jest dopisać do tej listy funkcję phpinfo. I każdą inną stanowiącą Twoim zdaniem zagrożenie dla systemu. Oto na przykład funkcje mogące służyć otworzeniu pliku (o ile mamy włączony safe_mode nie stanowi to takiego problemu): fopen, readfile, file. Ważna uwaga: przy włączonym safe_mode polecenia systemowe (przy pomocy wymienionych wyżej funkcji) są i tak wyłączone. Podsumowując: disable_functions wyłącza dla całego systemu wykonywanie pewnych funkcji, np. phpinfo(). Natomiast włączony safe_mode nie pozwoli na otworzenie plików, które mają innego właściciela niż skrypt a także wyłącza wykonywanie poleceń systemowych (np. /bin/netstat). A co jeśli pracując w trybie safe_mode niektóre polecenia systemowe są niezbędne? Wówczas należy posłużyć się opcją safe_mode_exec_dir. Definiuje ona katalog, z którego wykonywane będą polecenia systemowe w trybie safe_mode. Załóżmy więc, że Zdzichowi niezbędne jest polecenie /usr/bin/banner. Zdzichu pracuje w trybie safe_mode, dlatego należy: - utworzyć katalog dla binarek dostępnych z PHP w safe_mode: mkdir /bin/php - do php.ini dopisać ścieżkę do tego katalogu: safe_mode_exec_dir=/bin/php - skopiować plik do odpowiedniego katalogu: cp /usr/bin/banner /bin/php/ - przeładować Apacza apachectl restart Po takich zmianach Zdzichu może użyć system( /bin/php/banner dupa ) skrypcie PHP o ile disable_functions nie wyłączyło funkcji system. w swoim Podsumowując raz jeszcze: pracując w trybie safe_mode możemy (przy pomocy takich funkcji jak system) uruchamiać tylko binarki z safe_mode_exec_dir. Przy okazji disable_functions nie może wyłączyć funkcji system. Ostatecznie: zaleca się włączenie safe_mode a także ograniczenie niektórych funkcji (np. phpinfo) przy pomocy disable_functions. Pamiętaj, że możesz zmieniać wyżej wymienione opcje dla poszczególnych katalogów przy pomocy flag w pliku httpd.conf. Istnieje jeszcze jedna funkcja warta wspomnienia: open_basedir. Znajduje ona najczęściej zastosowanie w hostach wirtualnych: ogranicza ona wszystkie otwierane pliki (w tym i same skrypty.php) do określonego katalogu i jego podkatalogów. Nie dotyczy to plików wykonywanych przy pomocy np. system. Nie będę jej dokładnie opisywał. 8
9 6. Funkcyi kilka Ta część pracy skierowana jest do początkujących programistów. Przedstawię kilka podstawowych funkcji związanych z szeroko pojętym bezpieczeństwem. Założenie - jest sobie strona www z formularzem: wpisuje się nazwisko poszukiwanej osoby, naciska przycisk szukaj i czeka na wyniki. Wpisane nazwisko skierowane zostaje do skryptu PHP, który przeszukuje bazę danych i zwraca wyniki. To, co wpisze użytkownik pojawia się w skrypcie jako zmienna nazwisko. Strona z wynikiem poszukiwań zaczyna się od zdania Wynik poszukiwań dla.... W miejscu kropek powinno pojawić się to, co użytkownik wklepał do formularza. Oto najprostsze rozwiązanie: <? echo "Wynik poszukiwań dla "; echo $_POST['nazwisko'];;?> Działa... ale nie do końca. Spróbuj jako nazwisko wpisać <h1>noooowak</h1>. O to chodzi wszystko się spartoli. Funkcje, które mogą się przydać to htmlspecialchars() i strip_tags(). Pierwsza z nich powoduje zamianę tagów htmla do postaci nie interpretowanej przez przeglądarkę. Druga z nich po prostu usuwa tagi w rezultacie otrzymamy ascii. Rozwiązania: echo htmlspecialchars($_post['nazwisko']); echo strip_tags($_post['nazwisko']); w zależności od potrzeb. Dobra, wyświetlanie wprowadzonych danych mamy z głowy. Teraz dobrze by było, żeby po wysłaniu do bazy zwrócony został właściwy wynik. Jeszcze nie chodzi mi o samego SQLa tylko o przypadkowe naciśnięcie takich klawiszy jak spacja czy tabulator przed i po wpisanym nazwisku. Do obcięcia białych znaków przed i po szukanym wyrazie / wyrażeniu służy funkcja trim(). W naszym przypadku więc: $nazwisko = trim($_post['nazwisko']); Od tej pory posługujemy się zmienną $nazwisko. Tia... Nadszedł czas żeby wysłać zapytanie SQLowe do bazy danych. Jeśli osoba wprowadzająca dane do formularza użyje wystarczającej liczby cudzysłowów, średników i innych dziwnych rzeczy a my to żywcem wkleimy do zapytania a następnie wyślemy je do bazy możemy się z nią pożegnać. Coś takiego nazywane jest SQL Injection. Oszczędzam Tobie przykładów żeby nie zanudzać. Lepiej zobaczyć rozwiązanie. 9
10 Dla danych znakowych (jak w naszym przypadku) należy przekształcić wszystkie znaki będące na służbie SQLa na ich nic nie znaczące odpowiedniki. Mechanizm polega na tym, że przed owymi znakami stawiane są inne. Powodują one, że te pierwsze tracą na znaczeniu i do bazy trafiają zabezpieczone dane wprowadzone przez użytkownika. Przed wysłaniem zmiennej do bazy wykorzystuje się funkcję addslashes(). Po odczycie danych z bazy należy usunąć dodatkowe znaki wykorzystując funkcję stripslashes(). U nas wyglądałoby to tak: $nazwisko = addslashes($nazwisko); $nazwisko = stripslashes($nazwisko); (teraz można $nazwisko wysłać do bazy) (po odczycie z bazy) Przed wysłaniem danych numerycznych do bazy należy sprowadzić je do postaci numerycznej (żeby nie wysłać bzdur do pól numerycznych w bazie). I tak dla liczb całkowitych wykorzystuje się funkcję intval() a dla ułamkowych doubleval(). Gdyby użytkownik musiał wpisać wiek osoby i jej średnie zarobki użylibyśmy odpowiednio: $wiek = intval($wiek); $siano = doubleval($siano); W przypadku danych numerycznych nie ma problemu przy odczycie ich z bazy. Dobra, co jeszcze ciekawego... Już chyba wystarczy, jest 1:30 w nocy, skończyłem chyba siódmą kawę dzisiaj a wypalonych fajek nie liczy nikt :) 7. Funkcja include() a konflikt izraelsko palestyński Mają one z sobą niewiele wspólnego. A skoro poruszyliśmy już temat include(), może trochę go rozwiniemy. Funkcje include(), require() czy require_once() wykorzystywane są do włączania do skryptów plików zawierających gotowe funkcje, znaczniki HTML, klasy itd. Bardzo często włączane pliki zawierają hasła dostępu do bazy danych czy inne ważne informacje i nie jest wskazane wydostanie się tych informacji na zewnątrz. Złota zasada dołączanych plików mówi, że nie powinno być możliwości aby te pliki przesyłane były do przeglądarki jako czysty tekst. Pierwszym sposobem jest nadanie tym plikom rozszerzenia.php wówczas interpretowane one będą przez PHP przy każdym wysłaniu i niewiele da się wtedy z nich odczytać. Ten sposób nie jest zalecany i wykorzystywany jest przy dołączaniu prostych plików nie zawierających ważnych informacji. My zajmiemy się sposobem zalecanym pliki dołączane trzymane są poza drzewem strony www. W ten sposób nie można się do nich dostać przez bezpośrednie odwołanie w przeglądarce. Przyjęło się także, że dołączane pliki posiadają rozszerzenie.inc. Pierwszym krokiem powinno więc być wyłączenie w Apaczu przesyłanie jakichkolwiek plików z rozszerzeniem.inc. Bierzemy się więc za httpd.conf i dopisujemy: 10
11 <Files ~ "\.inc$"> Order allow,deny Deny from all </Files> Między \ a inc w pierwszej linii jest kropka :) Mamy więc dwa poziomy zabezpieczeń: (1) pliki.inc leżą poza drzewem serwera www a sam Apacz i tak nie może ich wysłać (2). Pozostało jeszcze tak zamieszać, żeby skrypty PHP mogły dostać się do plików.inc. Służy do tego zmienna include_path w pliku php.ini. Załóżmy, że Zdzichu jest webmasterem firmy, której udostępniamy serwer wirtualny. Nich katalogiem głównym strony www wspomnianej firmy będzie /home/zdzichu/firma_pl/. Pliki dołączane Zdzisiek chciałby trzymać w /home/zdzichu/firma_inc/. Mamy teraz dwa wyjścia. Lepsze zmiana w odpowiednim miejscu httpd.conf: php_value include_path /home/zdzichu/firma_inc Po przeładowaniu Apacza każdy plik umieszczony przez Zdzicha w firma_inc można przy pomocy include( plik.inc ) dołączać go do skryptów. PHP sprawdzi wówczas /home/zdzichu/firma_inc/ i jeśli odnajdzie tam plik.inc dołączy go do skryptu. Jak się już pewnie domyślasz, drugim sposobem jest ustawienie dla danego katalogu w httpd.conf opcji AllowOverride Options i wówczas Zdzichu przy pomocy.htaccess będzie sam sobie mógł w analogiczny sposób zdefiniować include_path. A przy okazji wiele innych flag i dlatego jest to ten gorszy sposób Ukryjmy, co się da Jak już pewnie zauważyłeś, gdy coś spartolisz w skrypcie, na stronę wysyłany jest komunikat z odpowiednim błędem. Jest to rozwiązanie pozwalające na zlokalizowanie błędu w krótkim czasie. I bardzo dobrze. Gdy jednak przetestowałeś już swoją stronkę dobrze by było gdybyś wyłączył wyświetlanie błędów na stronie. Jeśli coś pójdzie nie tak, któryś element się wyłoży, na stronę mogą trafić takie rzeczy jak lokalizacja skryptów, loginy, fragment kodu to nie jest dobre, może zdradzić zbyt wiele informacji. Poza tym osoba która ogląda Twoją stronę jest bardziej zainteresowana tym, że nic z tego nie będzie a nie tym w jaki sposób to do niej dotrze. W którym miejscu umieścić plik z logami PHP? Ja trzymam logi Apacza (access_log, error_log) w /var/log/apache/, dlatego php_log powędruje właśnie tam. Ważna uwaga: plik ten powinien mieć prawa zapisu dla użytkownika z którego prawami chodzi serwer www (tutaj: www). Tworzymy sobie wyżej wymieniony plik: touch /var/log/apache/php_log chown www:www /var/log/php_log A następnie dopisujemy / poprawiamy w php.ini: 11
12 error_reporting = E_ALL; display_errors = Off; log_errors = On; error_log = /var/log/apache/php_log; Nazwy opcji mówią same za siebie. Oczywiście jeśli pracujesz nad jakąś nową stroną lub takową testujesz użyj flag i włącz wywalanie błędów dla określonego miejsca. Lub zrób odwrotnie domyślnie włącz wyświetlanie a przy pomocy flag dla dobrych stron je wyłącz. A właściwie po co ktoś ma wiedzieć, że używasz PHP na serwerze? Naklejki w stylu Powered by PHP to coś jak naklejka Adidas na samochodzie dresiarza. Spróbujmy więc trochę zabunkrować fakt, że używasz PHP. Plik httpd.conf: ServerSignature Off Plik php.ini: expose_php = Off; Nic nam takie zabiegi, jeśli w adresie strony po chamsku widać rozszerzenie.php w nazwach plików. Dlatego też możemy je zmienić, na przykład na.asp lub.dhtml lub.kma (to ostatnie to kiss my ass). Nie jest dobrym pomysłem zmiana na.html, ponieważ wówczas zwykłe, czyste HTMLowe pliki będą parsowane niepotrzebnie co zaowocuje niepotrzebnym obciążeniem serwera. Jeśli przy okazji wyłączymy wyświetlanie błędów na stronie, mamy wtedy zagwarantowaną chociaż odrobinę prywatności :) Plik httpd.conf: AddType application/x-httpd-php.dhtml No i tyle. Musisz tylko pamiętać, żeby zamiast.php nadawać rozszerzenia.dhtml. W przeciwnym razie źródełka popłyną do przeglądarek... 12
13 9. Inne Poniższego nie miałem gdzie umieścić dlatego powstał ten punkt. Opcją, którą powinieneś wyłączyć w php.ini jest allow_url_fopen. Funkcja ta wykorzystywana jest w szczątkowej ilości serwerów a umożliwia otwieranie plików, np. przy pomocy include() czy fopen(), ze zdalnych serwerów poprzez http czy ftp. Mało praktyczne natomiast stosunkowo niebezpieczne. Pisząc skrypty PHP gdzieś w drzewie serwera www, nie nazywaj kolejnych kopii zapasowych skryptu w stylu.php.bak czy.php.old. Są one łatwo dostępne z przeglądarki i już wiesz co dalej. Najlepiej przenieś je poza drzewko serwera www. Hmm... Nic więcej nie przychodzi mi do głowy. Mam nadzieję, że dzięki powyższemu bezpieczeństwo Twojego serwerka poprawi się chociaż o trochę. Jeśli znajdziesz jakiś błąd lub wiesz o czymś, co powinno się znaleźć w tym dokumencie napisz do mnie. Jest to pierwsza wersja tego dokumentu i zawiera pewnie jakieś błędy / niedoróbki / potknięcia itp. Będę bardzo wdzięczny za wszelkie uwagi, komentarze, poprawki, wyrazy wdzięczności. Z góry przepraszam za powyższe i mam nadzieję, że będziecie mnie informować w których miejscach coś nie gra. Jako (częściowe) wytłumaczenie przedstawiam fakt, że większość tej pracy powstawała w późnych godzinach nocnych. Kontakt ze mną: linio@terramail.pl Henryk Liniowski Poznań,
Rys. 1. Widok uruchomienia polecenia apt-get install build-essential. Rys. 2. Widok uruchomienia polecenia apt-get install apache2
1. Instalacja serwera WWW Aby zainstalować serwer WWW w systemie Linux, należy wykorzystać menedżer pakietów apt-get. Polecenia które należy wpisać w terminalu użytkownika root 1 : apt-get install build-essential
Niezbędne narzędzia. Przed rozpoczęciem pracy z PHP należy zainstalować odpowiednie narzędzia: środowisko PHP serwer WWW serwer baz danych MySQL
Instalowanie PHP Niezbędne narzędzia Przed rozpoczęciem pracy z PHP należy zainstalować odpowiednie narzędzia: środowisko PHP serwer WWW serwer baz danych MySQL Serwer lokalny Serwer lokalny można zainstalować
Instalacja i konfiguracja serwera IIS z FTP
Instalacja i konfiguracja serwera IIS z FTP IIS (Internet Information Services) jest to usługa dostępna w systemach z rodziny Windows Server, pozwalająca na obsługę i utrzymanie własnych stron WWW oraz
Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w
Wyrażenie include(sciezka_do_pliku) pozwala na załadowanie (wnętrza) pliku do skryptu php. Plik ten może zawierać wszystko, co może się znaleźć w obrębie skryptu. Wyrażenia include() i require() są niemal
Instrukcja instalacji: Apache, PHP, MySQL, PHP My Admin
Instrukcja instalacji: Apache, PHP, MySQL, PHP My Admin Wersja 1.0 Instalacja Apache/PHP/MySQL/PHP My Admin 1. Instalacja MySQL a) Uruchomienie programu instalacyjnego: mysql-essential-5.0.24a-win32 b)
Zarządzanie systemami informatycznymi. Zarządzanie serwerem httpd: Apache
Zarządzanie systemami informatycznymi Zarządzanie serwerem httpd: Apache Serwer httpd Apache - zalety Apache - otwarty serwer HTTP dostępny dla wielu systemów operacyjnych (m.in. UNIX, GNU/Linux, BSD,
Instalacja (GM) AMXBans #1.5.1/ #1.6.1 na serwerze gry/stronie WWW. Wymagania
Instalacja (GM) AMXBans #1.5.1/ #1.6.1 na serwerze gry/stronie WWW Wymagania Aby poprawnie zainstalować (GM) AMXBans # 1.5.1/ # 1.6.1, potrzebujemy; * Najnowsze wydanie MetaModa * Najnowsza wersja AMXMod
WINDOWS Instalacja serwera WWW na systemie Windows XP, 7, 8.
WINDOWS Instalacja serwera WWW na systemie Windows XP, 7, 8. Gdy już posiadamy serwer i zainstalowany na nim system Windows XP, 7 lub 8 postawienie na nim serwera stron WWW jest bardzo proste. Wystarczy
Podstawy technologii WWW
Podstawy technologii WWW Ćwiczenie 8 PHP, czyli poczatki nowej, dynamicznej znajomosci Na dzisiejszych zajęciach rozpoczniemy programowanie po stronie serwera w języku PHP. Po otrzymaniu żądania serwer
Należy ściągnąć oprogramowanie Apache na platformę
Programowanie Internetowe Język PHP - wprowadzenie 1. Instalacja Oracle+Apache+PHP Instalacja Apache, PHP, Oracle Programy i ich lokalizacja Oracle Database 10g Express Edition10.2 http://www.oracle.com/technology/products/database/
Joomla! Instalacja. Pobierz pakiet instalacyjny. instalacji XAMPP
Joomla! Instalacja Pobierz pakiet instalacyjny 1. Wejdź na witrynę http://www.apachefriends.org 2. Następnie przejdź do sekcji XAMPP for Windows 3. W sekcji XAMPP for Windows przejdź do działu Download
I. Informacje ogólne. Jednym z takich systemów jest Mambo.
MAMBO (CMS) I. Informacje ogólne CMS, Content Management System ("system zarządzania treścią") jest to jedna lub zestaw aplikacji internetowych pozwalających na łatwe utworzenie oraz późniejszą aktualizację
6. Bezpieczeństwo przy współpracy z bazami danych
6. Bezpieczeństwo przy współpracy z bazami danych 6.1. Idea ataku SQL injection Atak znany jako SQL injection jest możliwy wtedy, gdy użytkownik ma bezpośredni wpływ na postać zapytania wysyłanego do bazy
Pracownia internetowa w szkole ZASTOSOWANIA
NR ART/SBS/07/01 Pracownia internetowa w szkole ZASTOSOWANIA Artykuły - serwery SBS i ich wykorzystanie Instalacja i Konfiguracja oprogramowania MOL Optiva na szkolnym serwerze (SBS2000) Artykuł opisuje
Lekcja 10. Uprawnienia. Dołączanie plików przy pomocy funkcji include() Sprawdzanie, czy plik istnieje przy pmocy funkcji file_exists()
Paweł Gmys PHP strona 1 Lekcja 10 Uprawnienia Aby skrypt PHP mógł odwołać się do pliku, musi mieć odpowiednie uprawnienia. Szczegóły są zależne od serwera. Najczęściej chyba skrypt ma uprawnienia takie,
Data modyfikacji: 2013-08-14
Data modyfikacji: 2013-08-14 Co zawiera ten dokument: Ten dokument przedstawia, w jaki sposób zainstalować program Kancelaris PLUS 4 za pomocą standardowego instalatora na serwerze MySQL w wersji 5.0 i
Przydziały (limity) pojemności dyskowej
Przydziały (limity) pojemności dyskowej W dużych sieciach lokalnych bądź w przypadku, gdy z danego komputera korzysta kilku różnych użytkowników, administrator może zechcieć mieć kontrolę nad przydziałem
Dokumentacja fillup - MS SQL
Dokumentacja fillup - MS SQL e-file.pl 28 lipca 2017 Spis treści Wstęp 2 Wymagania sprzętowe 2 Windows Server 2012.......................... 2 Windows 10............................... 3 MS SQL Server.............................
Zapoznanie się z konfiguracją i zarządzaniem serwerem WWW - Apache.
Str. 1 Ćwiczenie 9 Apache - Serwer stron www Cel ćwiczenia: Zapoznanie się z konfiguracją i zarządzaniem serwerem WWW - Apache. Przed przystąpieniem do ćwiczenia uczeń powinien: - poruszać się po systemie
Instalacja systemu zarządzania treścią (CMS): Joomla
Instalacja systemu zarządzania treścią (CMS): Joomla Na stronie http://www.cba.pl/ zarejestruj nowe konto klikając na przycisk:, następnie wybierz nazwę domeny (Rys. 1a) oraz wypełnij obowiązkowe pola
instrukcja INSTALACJI www.piersa.pl APi_proxy
instrukcja INSTALACJI 1 1. Instalacja Proces instalacji jest prosty wgrywamy pliki na serwer nadajemy prawa chmod 777 lub 755 dla katalogu w którym znajduje się aplikacja przeważnie będzie to katalog public_html
Aplikacje WWW - laboratorium
Aplikacje WWW - laboratorium PHP. Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej wykorzystującej technologię PHP. Aplikacja pokazuje takie aspekty, obsługa formularzy oraz zmiennych
Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi
Zakres tematyczny dotyczący kursu PHP i MySQL - Podstawy pracy z dynamicznymi stronami internetowymi 1 Rozdział 1 Wprowadzenie do PHP i MySQL Opis: W tym rozdziale kursanci poznają szczegółową charakterystykę
ZPKSoft WDoradca. 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja
ZPKSoft WDoradca 1. Wstęp 2. Architektura 3. Instalacja 4. Konfiguracja 5. Jak to działa 6. Licencja 1. Wstęp ZPKSoft WDoradca jest technologią dostępu przeglądarkowego do zasobów systemu ZPKSoft Doradca.
Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (http://www.amu.edu.pl/~mtanas)
Hosting WWW Bezpieczeństwo hostingu WWW Dr Michał Tanaś (http://www.amu.edu.pl/~mtanas) Apache2 dyrektywy podstawowe Zajmują zawsze jedną linię tekstu Ogólna postać: Dyrektywa opcje Ich zasięg ogranicza
Sieciowa instalacja Sekafi 3 SQL
Sieciowa instalacja Sekafi 3 SQL Niniejsza instrukcja opisuje instalację Sekafi 3 SQL w wersji sieciowej, z zewnętrznym serwerem bazy danych. Jeśli wymagana jest praca jednostanowiskowa, należy postępować
Pracownia internetowa w każdej szkole (edycja Jesień 2007)
Instrukcja numer D2/08_01 Pracownia internetowa w każdej szkole (edycja Jesień 2007) Opiekun pracowni internetowej cz. 2 (D2) Określanie właściwości stron WWW (domyślne pliki startowe, katalogi wirtualne,
Najczęściej występujące problemy z instalacją i konfiguracją i ich rozwiązania.
Najczęściej występujące problemy z instalacją i konfiguracją i ich rozwiązania. Q. Jak uruchomić instalator? A. Trzeba nadać instalatorowi atrybut 'wykonywalny'. Można to zrobić wydając polecenie `chmod
Aplikacje internetowe - laboratorium
Aplikacje internetowe - laboratorium PHP Celem ćwiczenia jest przygotowanie prostej aplikacji internetowej opartej o język PHP. Aplikacja ilustruje takie mechanizmy jak: obsługa formularzy oraz obsługa
14. POZOSTAŁE CIEKAWE FUNKCJE
14. POZOSTAŁE CIEKAWE FUNKCJE Funkcji jest cała masa, których nie poruszono w tym kursie. Bardziej ciekawe postaram się właśnie w tej lekcji omówić. Na pewno wielu z Was, czeka z niecierpliwością na funkcję
Instrukcja obsługi Modułu Payu dla Moodle 2.x
Instrukcja obsługi Modułu Payu dla Moodle 2.x Wersja z 10 lutego 2015r. Spis treści 1. Wymagania............................................ 1 2. Instalacja.............................................
Zawartość. Wstęp. Moduł Rozbiórki. Wstęp Instalacja Konfiguracja Uruchomienie i praca z raportem... 6
Zawartość Wstęp... 1 Instalacja... 2 Konfiguracja... 2 Uruchomienie i praca z raportem... 6 Wstęp Rozwiązanie przygotowane z myślą o użytkownikach którzy potrzebują narzędzie do podziału, rozkładu, rozbiórki
Konfiguracja oprogramowania w systemach MS Windows dla kont z ograniczonymi uprawnieniami
Konfiguracja oprogramowania w systemach MS Windows dla kont z ograniczonymi uprawnieniami Dotyczy programów opartych na bazie BDE: Menedżer Pojazdów PL+ Ewidencja Wyposażenia PL+ Spis treści: 1. Wstęp...
Zarządzanie użytkownikami w
Zarządzanie użytkownikami w systemie Linux Konta użytkowników Konto to wszystkie pliki, zasoby i informacje należące do użytkownika. Każdy użytkownik jest identyfikowany przez unikatową liczbę całkowitą
Konfiguracja oprogramowania w systemach MS Windows dla kont z ograniczonymi uprawnieniami
Konfiguracja oprogramowania w systemach MS Windows dla kont z ograniczonymi uprawnieniami Dotyczy programów opartych na bazie Firebird: System Obsługi Zleceń PL+ Grafik Urlopowy PL+ Zarządzanie Szkoleniami
Baza danych do przechowywania użytkowników
System logowania i rejestracji jest bardzo przydatną funkcjonalnością na każdej stronie. Umożliwia sprawną identyfikację i zarządzanie użytkownikami. Strona ze skryptem logowania nabiera dużej wartości.
Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości
Budowa aplikacji ASP.NET współpracującej z bazą dany do obsługi przesyłania wiadomości Rozpoczniemy od zaprojektowania bazy danych w programie SYBASE/PowerDesigner umieszczamy dwie Encje (tabele) prawym
Graficzny terminal sieciowy ABA-X3. część druga. Podstawowa konfiguracja terminala
Graficzny terminal sieciowy ABA-X3 część druga Podstawowa konfiguracja terminala Opracował: Tomasz Barbaszewski Ustawianie interfejsu sieciowego: Podczas pierwszego uruchomienia terminala: Program do konfiguracji
System. Instalacja bazy danych MySQL. Autor : Piotr Zielonka tel Piotrków Tryb., sierpień 2018r.
System FOKUS Instalacja bazy danych MySQL Autor : Piotr Zielonka tel. 601 99-73-79 pomoc@zielonka.info.pl Piotrków Tryb., sierpień 2018r. W wersji 2018.7.0 systemu FoKus wprowadzono funkcje umożliwiające
Wysyłanie pliku na serwer. Plik na serwerze.
Wysyłanie pliku na serwer Dzięki PHP możemy w łatwy i przyjemny sposób obsłużyć pliki uploadowane na serwer. Jednak, by prawidłowo wysłać plik, niezbędny będzie odpowiedni formularz HTML. Poniżej przedstawię
Instalacja oprogramowania KISSsoft 03/2017
Instalacja oprogramowania KISSsoft 03/2017 Spis treści 1. Instalacja oprogramowania... 2 1.1. Aktywacja wersji testowej... 2 1.1.1. Przykład 1 - Activate online with a license code... 2 1.1.2. Przykład
System archiwizacji i konserwacji baz danych MS SQL
System archiwizacji i konserwacji baz danych MS SQL Autor : Krzysztof Jarecki Spis treści 1. Przeznaczenie systemu... 3 2. Instalacja systemu... 4 3. Konfiguracja archiwizatora... 5 3.1 Przykład archiwizacji
Jednym z najważniejszych zagadnień, z którym może się zetknąć twórca
Uwierzytelnianie w PHP 01 Jednym z najważniejszych zagadnień, z którym może się zetknąć twórca stron internetowych, jest identyfikacja i uwierzytelnienie uprzywilejowanego użytkownika. Od zaprojektowania
Apache. Apache serwer WWW
Apache komputerowa Apache serwer WWW Marcin Bieńkowski Instytut Informatyki Uniwersytet Wrocławski Dostępny pod różne platformy Ponad 50% udział w rynku serwerów WWW (Netcraft Web Server Survey 2007) Darmowy,
Qmail radość listonosza. Autorzy: Bartosz Krupowski, Marcin Landoch IVFDS
Qmail radość listonosza Autorzy: Bartosz Krupowski, Marcin Landoch IVFDS 1 STRESZCZENIE Artykuł jest przedstawieniem podstawowej konfiguracji jednego z najpopularniejszych agentów MTA (Mail Transfer Agent)
Forte Zarządzanie Produkcją Instalacja i konfiguracja. Wersja B
Forte Zarządzanie Produkcją Instalacja i konfiguracja Wersja 2013.1.B Forte Zarządzanie Produkcją - Instalacja i konfiguracja Strona 2 z 13 SPIS TREŚCI 1 Instalacja i konfiguracja Forte Zarządzanie Produkcją...
Aplikacje internetowe - laboratorium
Aplikacje internetowe - laboratorium Administracja serwerem aplikacji. Celem ćwiczenia jest zainstalowanie i administracja prostym serwerem aplikacji. Ćwiczenie zostanie wykonane przy użyciu popularnego
Instrukcja instalacji systemu elektronicznego obiegu dokumentów - esoda.
Instrukcja instalacji systemu elektronicznego obiegu dokumentów - esoda. wersja 2.3 data 18 czerwca 2008 Spis treści: WYMAGANIA SYSTEMU:... 2 Instalacja oprogramowania esoda... 3 Instalacja aplikacji...
Apache serwer WWW (część 2) Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski
komputerowa Apache serwer WWW (część 2) Marcin Bieńkowski Instytut Informatyki Uniwersytet Wrocławski komputerowa () Apache serwer WWW (część 2) 1 / 17 W poprzednim odcinku poznaliśmy: Prawa i opcje katalogów
Books. by HansaWorld. Przewodnik instalacji. wersji 6.2
Books by HansaWorld Przewodnik instalacji wersji 6.2 Instalacja Przejdź do strony: http://books.hansaworld.com/downloads/hwindex.htm i pobierz najnowszą wersję oprogramowania Books. Otwórz Books.dmg i
Tomasz Greszata - Koszalin
T: Konfiguracja usługi HTTP (Hypertext Transfer Protocol) w systemie Linux. Zadanie1: Odszukaj w serwisie internetowym Wikipedii informacje na temat usługi http oraz oprogramowania Apache. https://hostovita.pl/blog/konfiguracja-apache-virtualhost-w-ubuntu-16-04/
Apache serwer WWW. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski
komputerowa Apache serwer WWW Marcin Bieńkowski Instytut Informatyki Uniwersytet Wrocławski komputerowa () Apache serwer WWW 1 / 18 Apache Dostępny pod różne platformy Ponad 50% udział w rynku serwerów
Konfiguracja vsftpd ( Very Secure FTP Server )
Konfiguracja vsftpd ( Very Secure FTP Server ) Jest to prawdopodobnie najbezpieczniejszy i najszybszy UNIX owy serwer FTP. Jego zaletami są m.in. prostota konfiguracji, bezpieczeństwo i szybkość (transfer
INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład VII
Wrocław 2006 INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład VII Paweł Skrobanek C-3, pok. 323 e-mail: pawel.skrobanek@pwr.wroc.pl INTERNETOWE BAZY DANYCH PLAN NA DZIŚ : Cookies Sesje Inne możliwości
Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa
Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa Instalacja roli kontrolera domeny, Aby zainstalować rolę kontrolera domeny, należy uruchomić Zarządzenie tym serwerem, po czym wybrać przycisk
Spis treści. Spis treści... 2. Wstęp... 3. Instalacja nazwa.pl... 3. Instalacja Home.pl... 8. Edycja grafiki strony... 17. logo...
Instalacja serwera Spis treści Spis treści... 2 Wstęp... 3 Instalacja nazwa.pl... 3 Instalacja Home.pl... 8 Edycja grafiki strony... 17 logo... 17 Wstęp Najnowszy sklep internetowy spod znaku sellsmart,
Serwer Apache podstawy instalacji i administracji.
Serwer Apache podstawy instalacji i administracji. Jednymi z najczęściej spotykanych serwerów w sieci Internet są serwery www. Współcześnie trudno wyobrazić sobie przedsiębiorstwo nawet małe, które nie
Nr: 12. Tytuł: UDOSTĘPNIANIE DANYCH O SPRAWACH KLIENTOM KANCELARII NA ZEWNĘTRZNYCH SERWERACH WWW. Data modyfikacji: 2012-03-08
Nr: 12 Tytuł: UDOSTĘPNIANIE DANYCH O SPRAWACH KLIENTOM KANCELARII NA ZEWNĘTRZNYCH SERWERACH WWW Data modyfikacji: 2012-03-08 Co zawiera ten dokument: Ten dokument zawiera informacje o możliwościach i sposobie
W poprzednim odcinku poznaliśmy: W poprzednim odcinku, cd.: W dzisiejszym odcinku. Apache serwer WWW (część 2)
W poprzednim odcinku poznaliśmy: komputerowa Apache serwer WWW (część 2) Marcin Bieńkowski Instytut Informatyki Uniwersytet Wrocławski Prawa i opcje katalogów Aliasy katalogów i przekierowania Pliki dziennika
T: Zabezpieczenie dostępu do komputera.
T: Zabezpieczenie dostępu do komputera. Podczas wykonywania poniższych zadań w zeszycie w sprawozdaniu podaj i wyjaśnij 1. polecenia, które użyjesz, aby zabezpieczyć dostęp do komputera. 2. odpowiedzi
E-commerce. Genialnie proste tworzenie serwisów w PHP i MySQL.
E-commerce. Genialnie proste tworzenie serwisów w PHP i MySQL. Autor: Larry Ullman Poznaj zasady wirtualnego handlu i zarabiaj prawdziwe pieniądze Jak stworzyć doskonałą witrynę sklepu internetowego? Jak
Wstęp. Skąd pobrać program do obsługi FTP? Logowanie
Wstęp FTP - (ang. File Transfer Protocol - protokół transmisji danych) jest to protokół typu klient-serwer, który umożliwia przesyłanie plików na serwer, oraz z serwera poprzez program klienta FTP. Dzięki
Instalacja programu Warsztat 3 w sieci
Instalacja programu Warsztat 3 w sieci (proszę uważnie przeczytać do końca) Spis treści 1 Przed instalacją...2 2 Przeprowadzanie po raz pierwszy instalacji sieciowej...3 2.1 Dane umieszczone na jednej
Część zadań będzie już zrobiona, np. część programów zainstalowana, ale proszę przeczytać instrukcje i ew. np. zainstalować w domu.
Część zadań będzie już zrobiona, np. część programów zainstalowana, ale proszę przeczytać instrukcje i ew. np. zainstalować w domu. Najpierw zainstalujemy program do symulowania napędu CD/DVD, żeby móc
www.kwp.edu.pl Instrukcja obsługi/instalacji platformy Krok w Przedsiębiorczość Administrator platformy
www.kwp.edu.pl Instrukcja obsługi/instalacji platformy Krok w Przedsiębiorczość Administrator platformy Wersja: 4_23/07/2012 1 Spis treści 1. Wymagania... 3 2. Konfiguracja serwera... 3 3. Parametry konfiguracyjne
PORADNIK KORZYSTANIA Z SERWERA FTP ftp.architekturaibiznes.com.pl
PORADNIK KORZYSTANIA Z SERWERA FTP ftp.architekturaibiznes.com.pl Do połączenia z serwerem A&B w celu załadowania lub pobrania materiałów można wykorzystać dowolny program typu "klient FTP". Jeżeli nie
Windows W celu dostępu do i konfiguracji firewall idź do Panelu sterowania -> System i zabezpieczenia -> Zapora systemu Windows.
Bezpieczeństwo Systemów Informatycznych Firewall (Zapora systemu) Firewall (zapora systemu) jest ważnym elementem bezpieczeństwa współczesnych systemów komputerowych. Jego główną rolą jest kontrola ruchu
znajdowały się różne instrukcje) to tak naprawdę definicja funkcji main.
Część XVI C++ Funkcje Jeśli nasz program rozrósł się już do kilkudziesięciu linijek, warto pomyśleć o jego podziale na mniejsze części. Poznajmy więc funkcje. Szybko się przekonamy, że funkcja to bardzo
Wykład 5: PHP: praca z bazą danych MySQL
Wykład 5: PHP: praca z bazą danych MySQL Architektura WWW Podstawowa: dwuwarstwowa - klient (przeglądarka) i serwer WWW Rozszerzona: trzywarstwowa - klient (przeglądarka), serwer WWW, serwer bazy danych
Dokumentacja systemu NTP rekrut. Autor: Sławomir Miller
Dokumentacja systemu NTP rekrut Autor: Sławomir Miller 1 Spis treści: 1. Wstęp 1.1 Wprowadzenie 1.2 Zakres dokumentu 2. Instalacja 2.1 Wymagania systemowe 2.2 Początek 2.3 Prawa dostępu 2.4 Etapy instalacji
Rysunek 178. Programowanie monitorów KDS
9.3. GASTRO KDS Gastro KDS to wersja KDS przeznaczona do wyświetlania zamówień na urządzeniach z systemem Android. Do działania potrzebuje urządzenia z systemem Android w wersji co najmniej 4.0. Wykorzystuje
Kancelaria rozpoczęcie pracy z programem
Kancelaria rozpoczęcie pracy z programem Przyciski w programie Kancelaria 2.0 i Kancelaria LT Przyciski dostępne w poszczególnych modułach programu (na dole okien): Przejście do pierwszego Przejście do
Usługi sieciowe systemu Linux
Usługi sieciowe systemu Linux 1. Serwer WWW Najpopularniejszym serwerem WWW jest Apache, dostępny dla wielu platform i rozprowadzany w pakietach httpd. Serwer Apache bardzo często jest wykorzystywany do
UNIFON podręcznik użytkownika
UNIFON podręcznik użytkownika Spis treści: Instrukcja obsługi programu Unifon...2 Instalacja aplikacji Unifon...3 Korzystanie z aplikacji Unifon...6 Test zakończony sukcesem...9 Test zakończony niepowodzeniem...14
Laboratorium 1 Wprowadzenie do PHP
Laboratorium 1 Wprowadzenie do PHP Ćwiczenie 1. Tworzenie i uruchamianie projektu PHP w Netbeans Tworzenie projektu Uruchom środowisko NetBeans. Stwórz nowy projekt typu PHP Application (File->New Project,
Ćwiczenia 9: Zarządzanie konfiguracją Zadania:
Ćwiczenia 9: Zarządzanie konfiguracją Zadania: Konfiguracja repozytorium CVS: 1. Ściągnij i zainstaluj serwer CVS: CVSNT (www.cvsnt.org). 2. W konfiguracji repozytoriów (Panel Sterowania -> CVSNT) wybierz
Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie.
Część XXII C++ w Wskaźniki a tablice Wskaźniki i tablice są ze sobą w języku C++ ściśle związane. Aby się o tym przekonać wykonajmy cwiczenie. Ćwiczenie 1 1. Utwórz nowy projekt w Dev C++ i zapisz go na
Zacznijmy więc pracę z repozytorium. Pierwsza konieczna rzecz do rozpoczęcia pracy z repozytorium, to zalogowanie się w serwisie:
Repozytorium służy do przechowywania plików powstających przy pracy nad projektami we w miarę usystematyzowany sposób. Sam mechanizm repozytorium jest zbliżony do działania systemu plików, czyli składa
Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne
Jarosław Kuchta Internetowe Usługi Informacyjne Komponenty IIS HTTP.SYS serwer HTTP zarządzanie połączeniami TCP/IP buforowanie odpowiedzi obsługa QoS (Quality of Service) obsługa plików dziennika IIS
Programowanie w Sieci Internet Blok 2 - PHP. Kraków, 09 listopada 2012 mgr Piotr Rytko Wydział Matematyki i Informatyki
Programowanie w Sieci Internet Blok 2 - PHP Kraków, 09 listopada 2012 mgr Piotr Rytko Wydział Matematyki i Informatyki Co dziś będziemy robić Podstawy podstaw, czyli małe wprowadzenie do PHP, Podstawy
Backend Administratora
Backend Administratora mgr Tomasz Xięski, Instytut Informatyki, Uniwersytet Śląski Katowice, 2011 W tym celu korzystając z konsoli wydajemy polecenie: symfony generate:app backend Wówczas zostanie stworzona
mgr Marek W. Krasowski Liceum Ogólnokształcące im. J. I. Kraszewskiego w Drohiczynie
mgr Marek W. Krasowski Liceum Ogólnokształcące im. J. I. Kraszewskiego w Drohiczynie Instalacja serwera WWW Apache na domowym komputerze w środowisku Windows Apache jest bezpłatnym, udostępnianym na zasadach
Tworzenie witryn internetowych PHP/Java. (mgr inż. Marek Downar)
Tworzenie witryn internetowych PHP/Java (mgr inż. Marek Downar) Rodzaje zawartości Zawartość statyczna Treść statyczna (np. nagłówek, stopka) Layout, pliki multimedialne, obrazki, elementy typograficzne,
Books. by HansaWorld. Przewodnik instalacji. Wersji 6.2
Books by HansaWorld Przewodnik instalacji Wersji 6.2 Instalacja Przejdź do strony: http://books.hansaworld.com/downloads/hwindex.htm i pobierz najnowszą wersję oprogramowania Books. Na następnej stronie
Instrukcja instalacji połączenia sterownika PL11-MUT24 ze stroną internetową.
Instrukcja instalacji połączenia sterownika PL11-MUT24 ze stroną internetową. Wymagania systemowe: Windows XP, Windows Vista, Windows 7 Krok pierwszy- serwer: 1. Do poprawnego działania aplikacji wymagane
Za pomocą niniejszej instrukcji baza programu MAK zostanie przygotowania do eksportu na METALIB.
Za pomocą niniejszej instrukcji baza programu MAK zostanie przygotowania do eksportu na METALIB. Przed przystąpieniem do modyfikacji należy koniecznie wykonać kopię zapasową bazy, by w razie nieprzewidzianych
miniinstrukcja www.piersa.pl miniswl
miniinstrukcja 1 1. Instalacja Proces instalacji jest prosty wgrywamy pliki na serwer nadajemy prawa chmod 777 lub 755 dla katalogu ustawienia. Uruchamiamy plik install.php podajemy dane do bazy danych
Poradnik cz.1 Użycie połączenia SSH
Poradnik cz.1 Użycie połączenia SSH W niniejszej części pokażę jak zalogować się na serwer w trybie graficznym. Protokół SSH służy do komunikowania się między klientem a serwerem. Jest to ulepszona wersja
KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED
KOMPUTEROWY SYSTEM WSPOMAGANIA OBSŁUGI JEDNOSTEK SŁUŻBY ZDROWIA KS-SOMED Podręcznik użytkownika Katowice 2010 Producent programu: KAMSOFT S.A. ul. 1 Maja 133 40-235 Katowice Telefon: (0-32) 209-07-05 Fax:
Ćwiczenie Nr 7 Instalacja oraz konfiguracja wskazanego systemu operacyjnego
Ćwiczenie Nr 7 Instalacja oraz konfiguracja wskazanego systemu operacyjnego Cel ćwiczenia: Celem zajęć jest zdobycie doświadczenia i umiejętności instalacji systemu operacyjnego z rodziny Unix bez wykorzystania
Jak stworzyć stronę WWW drużyny harcerskiej. dh Paweł Wnuk
Jak stworzyć stronę WWW drużyny harcerskiej. dh Paweł Wnuk Za pomocą czego zrobimy stronę WWW W moim poradniku będziemy korzystać za pomocą darmowego serwera Joomla, jest to bardzo fajny i miły w obsłudze
5.1. MINIPOS MINIPOS. INSTALACJA ORAZ URUCHOMIENIE USŁUGI
5.1. MINIPOS POSMobile to wersja zdalnego bonownika przeznaczona do prowadzenia sprzedaży na urządzeniach z systemem Android. Do działania potrzebuje urządzenia z systemem Android w wersji co najmniej
SSI Web 8. (badania.kozminski.edu.pl) Instrukcja logowania i uruchamiania ankiety
SSI Web 8 (badania.kozminski.edu.pl) Instrukcja logowania i uruchamiania ankiety Posiadaczem licencji na oprogramowanie SSI Web w Akademii Leona Koźmińskiego jest Centrum Psychologii Ekonomicznej i Badań
Prawa dostępu do plików
Prawa dostępu do plików Wszystkie pliki systemów uniksowych posiadają swoje prawa dostępu dla zapisu, odczytu i wykonywania. Jeżeli dotychczas spotykałeś się z systemami Windows na partycjach FAT - możesz
Programowanie w Sieci Internet Python - c. d. Kraków, 28 listopada 2014 r. mgr Piotr Rytko Wydział Matematyki i Informatyki
Programowanie w Sieci Internet Python - c. d. Kraków, 28 listopada 2014 r. mgr Piotr Rytko Wydział Matematyki i Informatyki Co dziś będziemy robić Uwierzytelnianie użytkowników, Obiekt session, Silniki
Pawel@Kasprowski.pl Języki skryptowe - PHP. Podstawy PHP. Paweł Kasprowski. pawel@kasprowski.pl. vl07
Podstawy PHP Paweł Kasprowski pawel@kasprowski.pl Historia PHP 1995 Personal Home Page Rasmus Lerdorf, prosty jęsyk oparty na Perlu 1998 PHP3 Andi Gutmans, Zeev Suraski modularność i rozszerzenia (extensions)
Rozpocznijmy ten odcinek od rozwiązania problemu postawionego w poprzednim odcinku:
Rozpocznijmy ten odcinek od rozwiązania problemu postawionego w poprzednim odcinku: Czy wiesz jak w oknie wyświetlającym pytania i komunikaty dodać opcję (przycisk) Anuluj? Jak przebudować kod? Czy udało
INSTRUKCJA INSTALACJI I KONFIGURACJI APLIKACJI WEBSOFT CEIDG MONITOR
INSTRUKCJA INSTALACJI I KONFIGURACJI APLIKACJI WEBSOFT CEIDG MONITOR Producent: Nazwa oprogramowania: Printec Websoft CEIDG Monitor Aktualna wersja: 1.0 Ostatnia aktualizacja: 25.01.2015 Kontakt: biuro@e-printec.com.pl,
Instrukcja instalacji Control Expert 3.0
Instrukcja instalacji Control Expert 3.0 Program Control Expert 3.0 jest to program służący do zarządzania urządzeniami kontroli dostępu. Dedykowany jest dla kontrolerów GRx02 i GRx06 oraz rozwiązaniom