Mein eigener Server

Dokumentation meiner Projekte und Hobbies

apache2

Bebilderte Schritt für Schritt Anleitung für die Installation des Webserver Dienst Apache2.

Apache installieren

Ihr meldet Euch als root am System an bzw. nutzt das su- Kommando um zum root user zu wechseln.

 apache_1Zuerst führt Ihr ein apt-get update durch damit das Inhaltsverzeichnis von apt-get auf dem neuesten Stand ist.

apache_2apt-get install apache2 apache2-mpm-prefork

apache_3Installation mit j bestästigen.

apache_4apt-get install php5

apache_5Installation mit j bestästigen.

Datei anpassen: vi /etc/apache2/conf.d/security

ServerTokens Prod
ServerSignature off

apache_6service apache2 restart

Apache IPtables

Firewall für http und https öffnen:

iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT
iptables-save > /etc/iptables.local

Apache Virtual Hosts

Verzeichnisse erstellen und Rechte anpassen:

mkdir /var/www/eigener-server.ch/
mkdir /var/www/eigener-server.ch/public_html
mkdir /var/www/eigener-server.ch/logs/ 

chown -R www-data:www-data /var/www/eigener-server.ch/

Neue Datei erstellen: vi /etc/apache2/sites-available/eigener-server.ch

<VirtualHost *:80>
   ServerAdmin webmaster@eigener-server.ch
   ServerName www.eigener-server.ch
   ServerAlias eigener-server.ch
   DocumentRoot /var/www/eigener-server.ch/public_html/
   ErrorLog /var/www/eigener-server.ch/logs/error.log
   CustomLog /var/www/eigener-server.ch/logs/access.log combined
</VirtualHost>

Seite aktivieren mit a2ensite eigener-Server.ch.

apache_7service apache2 reload

Neue Datei erstellen: vi /var/www/eigener-server.ch/public_html/index.php

<html>
  <head>
    <title>PHP-Test</title>
  </head>
  <body>
    <?php echo '<p>Hallo Welt</p>'; ?>
  </body>
</html>

DNS testen mit ping www.eigener-server.ch.

Seite testen mit https://www.eigener-server.ch.

SSL für Apache installieren

Zertifikaterstellen mit 365 Tagen Gültigkeit (bitte Land, Stadt, … beim Zertifikat eingeben):

apache_8

mkdir -p /etc/ssl/localcerts
openssl req -new -x509 -days 365 -nodes -out /etc/ssl/localcerts/apache.pem -keyout /etc/ssl/localcerts/apache.key
chmod 600 /etc/ssl/localcerts/apache*

Modul starten: a2enmod ssl

Zeilen an Datei anfügen: vi /etc/apache2/sites-available/eigener-server.ch

<VirtualHost *:443>
   ServerAdmin webmaster@eigener-server.ch
   ServerName www.eigener-server.ch
   ServerAlias eigener-server.ch

   SSLEngine On
   SSLCertificateFile /etc/ssl/localcerts/apache.pem
   SSLCertificateKeyFile /etc/ssl/localcerts/apache.key

   DocumentRoot /var/www/eigener-server.ch/public_html/
   ErrorLog /var/www/eigener-server.ch/logs/error.log
   CustomLog /var/www/eigener-server.ch/logs/access.log combined
</VirtualHost>

apache_9service apache2 restart

Seite testen mit https://www.eigener-server.ch.

Da es kein offizielles Zertifikat ist bekommt man beim Aufruf einen Zertifikatsfehler. Diesen einfach bestätigen.

Weiter geht es mit der Konfiguration von geoIP für Apache.