Jak uruchomić swój własny serwer WWW w Aruba Cloud

dodał 5 grudnia 2016 o 07:33 w kategorii HowTo  z tagami:
Jak uruchomić swój własny serwer WWW w Aruba Cloud

Jedną z najpopularniejszych usług w internecie jest WWW. Postawienie własnego serwera często jest jednym z pierwszych kroków na drodze samodzielnego administratora. Dzisiaj pomożemy Wam zainstalować i uruchomić serwer http.

We współpracy z firmą ArubaCloud pokazaliśmy Wam, jak postawić swój serwer backupów, jak skonfigurować własny serwer VPN i podłączyć do niego komputer, telefony komórkowe oraz domowy ruter a także jak schować się przed cenzurą sieci i jak zacząć serwer zabezpieczać oraz jak postawić swój własny zdalny pulpit. Dzisiaj z kolei postawimy wspólnie serwer WWW, na którym będzie mogli umieścić swoją witrynę.

Instalacja i konfiguracja oprogramowania

Jeśli nie macie jeszcze swojego własnego serwera, to jest to dobra okazja by się w taki wyposażyć. Aruba oferuje dwa miesiące korzystania ze swojego podstawowego serwera gratis – a po zakończeniu promocji będzie on Was kosztował zaledwie 4 złote miesięcznie. Instrukcję jak krok po kroku skorzystać z promocji i uruchomić swój serwer znajdziecie w tym artykule. Jeśli macie już swój serwer – to zapraszamy do lektury kolejnych akapitów.

Korzystając z systemu do zarządzania pakietami yum instalujemy niezbędne pakiety w systemie CentOS 7.2:

1. Instalacja serwera Apache2:

2. Instalujemy obsługę skryptów PHP na serwerze:

(listę dodatkowych modułów można wyświetlić za pomocą yum search php-*)

3. Gdy już postawimy stronę, będziemy musieli sprawdzić, czy prawidłowo działa. W tym celu tworzymy testowy skrypt PHP z funkcją phpinfo(), wyświetlającą podstawowe informacje o serwerze WWW.

4. Aby serwer był dostępny w sieci dodajemy wyjątek w firewallu:

Jeśli korzystacie z firewalld to ta reguła będzie wyglądać następująco:

5. Uruchamiamy i testujemy usługę

W przeglądarce wpisujemy adres IP naszego serwera (http://xx.xx.xx.xx). Jeśli usługa została uruchomiona poprawnie oraz firewall zezwolił na połączenie, w przeglądarce pojawi strona startowa naszego serwera WWW:

serwer_www

Aby sprawdzić nasz plik info.php, który utworzyliśmy w kroku 2, w przeglądarce wpisujemy adres naszego serwera z odpowiednią ścieżką (http://xx.xx.xx.xx/info.php, czyli odwołanie do pliku /var/www/html/info.php).

test_phpinfo

Tuning serwera Apache

Po uruchomieniu serwera warto zmienić kilka parametrów jego konfiguracji. Tworzymy i edytujemy dodatkowy plik konfiguracyjny dla apache:

W pliku tuning.conf wpisujemy:

Co oznaczają wprowadzone zmiany?

ServerTokens – Dyrektywa ta określa czy pole nagłówka odpowiedzi serwera, które jest wysyłane do klienta zawiera opis: nazwę systemu operacyjnego, wersję oraz informacje o dodatkowych modułach. Ustawiając wartość na ‚off’ wyłączamy wysyłanie nagłówka ‚Server’ do klienta, utrudniając identyfikację wersji używanego oprogramowania.

ServerSignature – Dyrektywa ServerSignature umożliwia konfigurację linii stopki dla dokumentów generowanych przez serwer (np. dla dokumentów 404). Ze stopki usuwamy adres serwera oraz wersję oprogramowania.

TraceEnable – Wyłączamy obsługę żądań typu HTTP Trace aby zapobiec atakom typu XST.

Następnie edytujemy plik /etc/php.ini, w linii 44 zmieniamy expose_php:

Ustawiając zmienną expose_php na Off określamy, że w nagłówkach nie będzie wysyłana używana przez nas wersja php (np. X-Powered-By: PHP/5.3.7)

Testujemy serwer www za pomocą narzędzia nikto

Nikto to prosty skaner , którego zdaniem jest znalezienie podstawowych błędów w konfiguracji serwera WWW.  Nikto jest dostępny w repozytorium epel-release. Jeśli w naszym systemie nie korzystamy z repozytorum epel, należy je zainstalować w następujący sposób:

Skanujemy nasz serwer www:

Skaner poinformował nas, że wykrył dostępność pliku /info.php (OSVDB-3233), możliwość indeksowania katalogu /icons/ (OSVDB-3268) oraz standardowy plik README w katalogu /icons/. Jeśli chcecie poćwiczyć, to rozwiązanie powyższych problemów z pomocą Google lub bez nie powinno sprawić Wam problemów.

Dla pełnej przejrzystości – za przygotowanie oraz opublikowanie powyższego artykułu otrzymujemy wynagrodzenie.