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 Nameserveränderungen notwendig

in der /var/cache/bind/it2XX.int
in der /var/cache/bind/2XX.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.