Tenigas' Technik-Blog

  • Git Cheat-Sheet
  • Meine *vimrc*
  • Desktop
  • Linux
  • MacOS
  • Programmieren
  • Server
  • Synology
  • Texteditor

Webserver – Apache2

Published: Di 08 November 2011
Updated: So 01 November 2015
By tenigas

In Server.

tags: Apache Firewall Installation

Webserver gibt es ja einige: Apache, Nginx, lighttp um nur einige zu nennen. Apache hat ja den Ruf eher groß und schwerfällig zu sein, wogegen lighttp und Co eher als klein und schlank (und somit ressourcenschonend) gelten. Warum hab ich mich trotzdem für Apache entschieden?

Der Hauptgrund war, dass es bei fast jedem Dienst den man installieren möchte (wenns jetzt vom ganz einfachen Standardfall abweicht) eine Beschreibung für Apache bekommt. Außerdem gibts viele schöne Erweiterungen, welche ich in der Form nicht für andere webserver gefunden habe.

Insofern bedeutet dies natürlich auch, dass einmal eine Migration anstehen könnte, wenn die gewünschten Features auch auf anderen Webservern zur Verfügung stehen.

Installation

sudo apt-get install apache2

[Update] Firewall freischalten

[Neu] Mittels ufw

Die Port kann ganz einfach geöffnet werden:

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

[Obsolet]Mittels iptables init.d-Skript

Basierend auf meinem Artikel zum Aufsetzen der Firewall fügen wir zwei zusätzliche Regeln für die Standard-http(s) Ports (80 und 443) hinzu.

sudo vim /etc/init.d/firewall

Im Bereich der Portregeln unter # allow input PROTOCOL DST-IP PORT fügen wir die folgenden zwei Zeilen hinzu:

firewall_allow_input $IP_EXTERNAL 0.0.0.0/0 80  # HTTP
firewall_allow_input $IP_EXTERNAL 0.0.0.0/0 443 # HTTPS

Und danach Neustarten der Firewall:

sudo /etc/init.d/firewall restart

Wichtige Erweiterungen aktivieren

Für SSL

sudo a2enmod ssl

Proxy für die weiterleitung zu anderen Webservern (manche tools werdenmit eigenem Server geliefert)

sudo a2enmod proxy_http sudo /etc/init.d/apache2 restart

Vorbereitung für Webserver-Authentifizierung

sudo chown www-data:www-data www -R sudo -u www-data mkdir admin sudo htpasswd -c /var/www/admin/.htpasswd webAdmin Virt-Config Bsp http

… Bsp https …

NameVirtualHost *:443

ServerAdmin webmaster@localhost ServerName admin.janda-tsai.com

ProxyRequests Off ProxyPreserveHost On ProxyPass /ajaxterm/ http://localhost:8022/ ProxyPassReverse /ajaxterm/ http://localhost:8022/ AuthType Basic AuthName Administration AuthUserFile /var/www/admin/.htpasswd require valid-user Order deny,allow Allow from all opt:Config für Admin-Bereich anlegen

eigene virtuelle config für admin:

sudo cd /etc/apache2/sites-available

sudo cp default-ssl admin-ssl

sudo vim admin.ssl

Servername admin.

documetn root <dir /

<dir www

entfernen

Proudly powered by Pelican, which takes great advantage of Python.

The theme is by Smashing Magazine, thanks!