Raspberry Pi Platine

Serverdienste auf dem Raspy einrichten


Ideen:
M. Retzbach, Elektronikschule Tettnang, 2015
J. Wagner, Gewerbliche Schule Bad Mergentheim, 2021
T. Heine, A. Mundt, Cisco Networking Academy, 2021


Ein Server (aus dem englischen to serve) ist eine Software die einen Dienst in einem Netzwerk bereitstellt. Auf diesen Dienst können belibig viele Nutzer gleichzeitig zugreifen.

Man unterscheidet bspw. folgende Serverarten: Webserver, Datenbankserver, Druckerserver, DHCP-Server, DNS-Server.

Webserver Apache 2 Installation

Das Resporitory wird aktualisiert und Apache 2 installiert.
~ $ sudo apt update
~ $ sudo apt install apache2

Testen der Installation: IP-Adresse herausfinden (früher ~ $ ifconfig):
~ $ ip -c address
Nun im Webbrowser die IP-Adresse eingeben. Wer einen DNS-Server installiert hat kann auch die dort festgelegte Adresse eingeben. Die Homepage auf dem Raspberry Pi befindet sich unter /var/www.

Bei Problemen: Apache 2 starten, Apache 2 bei Systemstart automatisch starten, Apache 2 Status anzeigen
~ $ sudo systemctl start apache2
~ $ sudo systemctl enable apache2
~ $ sudo systemctl status apache2


PHP Installation

Aktuelle PHP-Version installieren.
~ $ sudo apt install php

Testen der Installation: phptest.php erstellen:
~ $ sudo nano /var/www/html/phptest.php
Folgenden Text in den Editor kopieren und mit Strg + O speichern:


<?php
phpinfo();
?>
Den Editor mit Strg + X verlassen.
Im Webbrowser folgende Adresse eingeben:
http://ip-adresse-deines-pi/phptest.php

Bei Problemen: Apache 2 neustarten, PHP-Version anzeigen
~ $ sudo systemctl restart apache2
~ $ sudo php -v

Daten­bank MariaDB Instal­lation

MariaDB installieren
~ $ sudo apt install mariadb-server mariadb-client

Alternativ kann MariaDB mit einem Passwort geschützt werden.
~ $ sudo mysql_secure_installation

bestehendes Passwort eingeben leer lassen und bestätigen
Root-Passwort ändern mit Yes bestätigen und 2mal eingeben
Anonyme Benutzer mit Yes löschen
Remote-Zugang für Root mit Yes deaktivieren
Testdatenbank mit Yes entfernen
Datenbankprivilegien mit Yes laden

phpMyAdmin Installation

phpMyAdmin installieren
~ $ sudo apt install phpmyadmin

dbconfig-common mit Ja konfigurieren
Passwort für User phpmyadmin eingben Passwort 2mal eingeben
Webserver auswählen apache2

Testen der Installtion
Folgende Zeile in den Browser eingeben:
http://ip-adresse-deines-pi/phpmyadmin/ Dann mit Username (phpmyadmin) und vorher gesetzten Passwort einloggen.

Bei Problemen: Falls die Datei /etc/apache2/conf-enabled/phpmyadmin.conf nicht existiert, wurde vermutlich der Apache-Webserver bei der Installation nicht ausgewählt. Der Fehler kann wie folgt behoben werden:
~ $ sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf
~ $ sudo a2enconf phpmyadmin
~ $ sudo systemctl reload apache2

Datenbank einrichten

Datenbank und User anlegen
~ $ sudo mysql
> create database datenbankname;
> show databases;
> create user 'username'@'localhost' identified by 'password';
> grant all privileges on datenbankname.* to 'username'@'localhost';
> flush privileges;
> exit

Testen der Datenbank
~ $ mysql -u username -p password
> show databases;

Übung 1 Welche Aussage ist wahr?

Wähle die korrekten Aussagen zur gegebenen Schaltung aus.

Starte Apache autom. beim Systemstart.
Wähle eine Antwort.

  1. ~ $ sudo apt install apache2
  2. ~ $ sudo systemctl enable apache2
  3. ~ $ sudo systemctl start apache2
  4. ~ $ sudo systemctl status apache2


Installiere php auf dem Raspberry Pi.
Wähle eine Antwort.

  1. ~ $ sudo install php
  2. ~ $ install php
  3. ~ $ sudo apt php
  4. ~ $ sudo apt install php

Nenne die Tastenkombination zum Speichern im Editor Nano.
Wähle eine Antwort.

  1. Strg+O
  2. Strg+X
  3. Strg+0
  4. Strg+S


Nenne die Tastenkombination zum Verlassen des Editors Nano.
Wähle eine Antwort.

  1. Strg+O
  2. Strg+0
  3. Strg+S
  4. Strg+X

Ein Nutzer möchte die Datenbank testen.
Wähle zwei Antworten.

  1. ~ $ mysql
  2. ~ $ mysql -u username -p password
  3. > show tables;
  4. > show databases;


Nenne den Befehl zum Anzeigen der IP-Adresse.
Wähle eine Antwort.

  1. ~ $ ip -c adress
  2. ~ $ ifaddress
  3. ~ $ ipconfig
  4. ~ $ ip -c address

Erkläre worum es sich bei einem Server handelt.
Wähle eine Antwort.

  1. ein Rechner
  2. viele Rechner
  3. ein Rechner der einen Netzwerkdienst bereitstellt
  4. eine Software die einen Netzwerkdienst bereitstellt


Nenne die Serverart die es nicht gibt.
Wähle eine Antwort.

  1. Webserver
  2. Netzserver
  3. FTP-Server
  4. DNS-Server

Übung 2 Website auf dem Raspberry einrichten

HTML Tabelle mit bootstrap

Im ersten Schritt wird eine Internetseite erstellt die später auf den Raspberry übertragen wird.

  1. Erstelle die Datei index.html.
  2. Binde von der Bibliothek boostrap die css- und js-Datei ein.
  3. Erstelle eine einfache Tabelle für zwei Messwerte in der Du diese manuell einträgst.

Melde Dich an Deinem Raspberry Pi an. Jetzt werden die Serverdienste installiert.

  1. Führe ein Update des Repositorys durch.
  2. Installiere den Webserver Apache 2 und teste die Installation.
  3. Installiere PHP und validiere die Installation durch die Testdatei phptest.php.
  4. Installiere die Datenbank MariaDB.
  5. Installiere den Dienst phpMyAdmin und teste die Datenbank.

Zugriff auf den Raspberry Pi via FSTP.

  1. Installiere auf Deinen Rechner ein ftp-Programm (filezilla, cyberduck, ...).
  2. Melde Dich mit Deiner IP dem Username Pi und Deinem Passwort mit einer SFTP-Verbindung (Port 22) an.
  3. Kopiere die Datei in das Apache 2 Webserververzeichnis /var/www/html. Hinweis: Passe ggf. die Rechte für das Verzeichnis an.
  4. Teste die Internetseite durch Aufruf im Browser.