Apache2 Webserver Linux - Netzwerk und Serveradminstration

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

Ziel des Projektes

  • Wir wollen einen Apache2 Webserver integrieren
  • Wir wollen ihn gegen unseren LDAP Server authentifieren
  • Ziel ist es sich mit den Benutzern die in der ldap sudo Gruppe per ssh einzulogen und dann zu administrieren

Vorab sind im Nameserver Einträge hinzuzufügen

auf dem ns.2XX.int

in der /var/cache/bind/it2XX.int
www                    IN      A       10.88.213.9
_ldap._tcp             IN  SRV  10 70 389  ldap
in der /var/cache/bind/2XX.88.10.in-addr.arpa
9                      IN      PTR     www.it213.int.
Restart
  • systemctl restart named
Kontrolle
  • dig -t axfr it213.int
  • dig -t axfr 213.88.10.in-addr.arpa

Installation

Apache2 wird zusammen mit PHP und dem Apache-PHP-Modul installiert.

  • sudo apt install -y apache2 php libapache2-mod-php

PHP aktivieren

Das PHP-Modul wird aktiviert und Apache neu geladen.

  • a2enmod php8.2
  • systemctl reload apache2

Webroot

Das Webroot-Verzeichnis ist der Standardort für Webseiten unter Apache.

  • ls /var/www/html

Dynamische Testseite erstellen

Die Datei index.php ersetzt die Apache-Standardseite und gibt Systeminformationen aus.

  • sudo nano /var/www/html/index.php

Inhalt der Datei:

<?php
$hostname = gethostname();
$ip       = $_SERVER['SERVER_ADDR'];
$domain   = php_uname('n');

// Gateway und Nameserver aus /etc/resolv.conf und ip route auslesen
$nameserver = shell_exec("awk '/^nameserver/{print $2; exit}' /etc/resolv.conf");
$gateway    = shell_exec("ip route | awk '/^default/{print $3; exit}'");
?>
<!DOCTYPE html>
<html>
<head><title>Systeminfo</title></head>
<body>
<h1>Systeminfo</h1>
<table>
  <tr><td>Hostname</td><td><?= htmlspecialchars($hostname) ?></td></tr>
  <tr><td>IP-Adresse</td><td><?= htmlspecialchars($ip) ?></td></tr>
  <tr><td>Domain</td><td><?= htmlspecialchars($domain) ?></td></tr>
  <tr><td>Nameserver</td><td><?= htmlspecialchars(trim($nameserver)) ?></td></tr>
  <tr><td>Gateway</td><td><?= htmlspecialchars(trim($gateway)) ?></td></tr>
</table>
</body>
</html>

Standardseite deaktivieren

Die Apache-Standardseite wird deaktiviert damit die neue PHP-Seite aufgerufen wird.

  • sudo rm /var/www/html/index.html

Testen

Im Browser die IP-Adresse des Servers aufrufen.