Raspberry Pi und Projekt Linuxserver für ein Kundennetzwerk: Unterschied zwischen den Seiten

Aus ITA-Wiki
(Unterschied zwischen Seiten)
Wechseln zu: Navigation, Suche
itawiki>Marco Bakera
(Inbetriebnahme: ssh konfig)
 
K (2 Versionen importiert: Import)
 
Zeile 1: Zeile 1:
  +
Ein Projekt für den [[Projekttag]].
Der Raspberry Pi ist ein kleiner und kostengünstiger Einplatinencomputer. Er wird während der Ausbildung in verschiedenen Bereichen eingesetzt.
 
   
  +
{{Projektinfo| Aufwand=16h | Teamgröße=3 | Schwierigkeit=mittel | Kontakt=Herr Peters}}
== Beschaffung ==
 
[[Datei:Raspberry Pi 2 Model B v1.1 rear angle new.jpg|miniatur|rechts|Raspberry Pi]]
 
   
  +
==Kurzbeschreibung==
Für den Einsatz eines Raspberry Pi im Unterricht werden folgende Komponenten zwingend benötigt:
 
   
  +
Es soll auf einem linuxbasierten Server ein Kundennetzwerk eingerichtet werden. Dieses soll den gewohnten Standard, den man im beruflichen Leben findet, entsprechen.
# Raspberry Pi 3 (ca. 38 €)
 
# Gehäuse für den Raspberry Pi (die 40 Pins der GPIO-Schnittstelle müssen von oben gut zugänglich sein). Ein paar Beispiele:
 
#* Pibow 3 Ninja Coupé (Schichtgehäuse) (ca. 10 €)
 
#* Mepro Enclosure Case (Schichtgehäuse) (ca. 7 €)
 
#* OneNineDesign Gehäuse (ca. 6 €)
 
# USB-Steckernetzteil (2 A, ca. 8 €) ([http://www.elektronik-kompendium.de/sites/raspberry-pi/2002021.htm Informationen zu den Netzteilen])
 
# microSD-Karte Class 10 mit mindestens 8GB Speicher. (ca. 4 €)
 
: Eine Analyse verschiedener Karten gibt es bei [http://elinux.org/RPi_SD_cards elinux.org].
 
   
  +
==Meilensteine==
Folgende Ergänzungen stehen entweder bereits durch andere Elektronikgeräte wie PCs, Smartphones, Tablets und Digitalkameras zur Verfügung oder müssen neu angeschafft werden.
 
   
  +
===Verkabelung und Installation des Linuxservers===
* Ein einfacher Kopfhörer
 
* Netzwerkkabel (ca. 3 €)
 
* Micro USB Kabel (USB 2.0 Typ A Stecker auf USB 2.0 Micro-B-Stecker)
 
   
  +
Zuerst wird die Vernetzung der Clients und des Servers umgesetzt. Als Betriebssystem wird Linux bzw. eine Linux-Distribution(Ubuntu, Debian o.Ä) installiert.
Für die praktische Arbeit mit den GPIO-Pins des Pi müssen folgende Komponenten beschafft werden:
 
   
  +
===DHCP und DNS===
* Box zur Aufbewahrung von Kleinteilen
 
  +
Um die Clients im Netzwerk zu adressieren, wird der DHCP- und DNS-Dienst "dnsmasq" installiert und konfiguriert.
* Experimentierboard "Breadboard" mit ca. 830 Kontakten (ca. 3 €)
 
* Steckbrücken "jumper wire" (ca. 4 €)
 
*: Benötigt werden ca. 10 Stück in alle Varianten: männlich-weiblich, weiblich-weiblich, männlich-männlich. Häufig sind Bündel mit 40 Stück erhältlich, die auf 4 Schüler aufgeteilt werden können.
 
   
  +
===E-Mail-Server===
  +
Damit die Clients und der Server sich untereinander E-Mails verschicken können, wird ein E-Mail-Server eingerichtet.
   
=== Bezugsquellen ===
+
===Cloud und Filesharing===
  +
Zum Austauschen von Dateien unter den jeweiligen Nutzern, wird eine Cloud, sowie ein Dateiserver aufgesetzt.
   
  +
===NTP===
Für den Versand bieten sich folgende Händler an: [https://www.reichelt.de/ reichelt elektronik], [https://www.alternate.de/ Alternate], [https://www.pollin.de Pollin Electronic] oder [https://www.conrad.de/ce/ Conrad]. Da die Preise schwanken, lohnt sich ein Vergleich. Auf den Shop-Seiten nach "Starterkit" oder "Bundle" suchen, um Komplettangebote zu erhalten.
 
  +
Durch das Network Time Protocol wird eine Synchronisation der Zeit zwischen dem Server und Clients ermöglicht.
   
  +
===Optional: VPN===
Vor der Bestellung bei Amazon-Händlern sollte darauf geachtet werden, aus welchem Land die Teile verschickt werden. Bei außereuropäischen Händlern sind lange Lieferzeiten einzuplanen.
 
  +
Ermöglicht eine sichere Verbindung über das Firmennetzwerk für Außenstehende z.B. Mitarbeiter im Außendienst.
   
  +
===Optional: Servergespeicherte Profile===
Conrad hat viele Komponenten in den Ladengeschäften in Dortmund und Essen auch vorrätig.
 
  +
Servergespeicherte Profile werden genutzt, um unabhängig vom Standort des Clients zu sein. Ein Nutzer ist dementsprechend nicht an einen bestimmten Rechner gebunden.
   
  +
===Optional: Netzwerk über WLAN===
Wenn sich mehrere Besteller zusammentun, können hierdurch zusätzlich Versandkosten eingespart werden.
 
  +
Netzwerkeinbindung des Servers nicht über Switch oder Hub, sondern über eigenes WLAN-Netz, indem sich andere Clients integrieren können.
   
  +
===Optional: Subversion===
== Inbetriebnahme ==
 
  +
Durch Subversion ist es möglich, eine zentrale Versionsverwaltung (z.B. im Dateiserver) zu aktivieren.
   
  +
===Optional: Druckserver===
Vor dem ersten Einsatz, muss auf dem Raspberry Pi ein Betriebssystem auf einer SD-Karte installiert werden. Wir verwenden die verbreitete Linux-Distribution [https://www.raspbian.org/ Raspbian].
 
  +
Es wird ein Drucker an den Server angeschlossen, welcher über das Netzwerk für andere Clients zum Drucken freigegeben wird.
   
  +
==Eigenschaften==
# Baue den Raspberry Pi zusammen.
 
# Installiere Raspbian auf dem Raspberry Pi.
 
#* Eine ausführliche Anleitung befindet sich in der [https://www.rheinwerk-verlag.de/raspberry-pi_3872/ Leseprobe des Raspberry Pi Buches].
 
#* Eine kurze Anleitung ist in [https://www.raspberrypi.org/magpi-issues/MagPi36.pdf Ausgabe 36 von The MagPi (ab Seite 16)].
 
#* Auch der [https://www.raspberrypi.org/help/noobs-setup/ Setup-Guide] von der RapberryPi-Foundation hält nützliche Informationen bereit.
 
#* Um den Fernzugriff zu aktivieren, muss eine Datei mit dem Namen "ssh" im Verzeichnis "boot" abgelegt werden. [https://www.raspberrypi.org/blog/a-security-update-for-raspbian-pixel/]
 
# Installiere das Paket espeak und die Sprachfiles (espeak-data). Hiermit wird der Pi [[IP-Sprachausgabe einrichten|um eine Sprachausgabe erweitert]]. Über die Audioausgabe wird der Pi später seine eigene IP-Adresse ausgeben, damit wir ihn im Netz wiederfinden, ohne einen Monitor jedesmal anschließen zu müssen.<br /><tt> $ sudo apt-get install espeak espeak-data</tt>
 
# Für den Fernzugriff musst du noch xrdp installieren. Damit können wir unter Windows eine Remote-Desktop Verbindung zum Pi herstellen.<br /> <tt> $ sudo apt-get install xrdp </tt>
 
#* Bei der aktuellen Version von Raspbian wird der RealVNC-Server mitinstalliert, der nicht mit xrdp zusammenarbeitet. Daher ist '''vor''' der Installation von xrdp eine Deinstallation des VNC-Servers notwendig. <br /> <tt> $ sudo apt-get remove realvnc-vnc-server</tt>
 
# Notiere die MAC-Adresse (Hardware Adresse) der Netzwerkschnittstelle - am besten direkt auf dem Gehäuse. Du erhältst sie mit dem Befehl<br /> <tt> $ ifconfig eth0</tt> <br />Mehr Informationen stehen auf den [http://www.elektronik-kompendium.de/sites/raspberry-pi/1910021.htm Seiten des Elektronik Kompendiums]
 
# Bringe den Pi, einen Kopfhörer, ein Ethernetkabel, ein USB-Kabel (und alles, was du sonst noch besorgt hast) mit.
 
   
  +
{| class="wikitable sortable"
Notiere bei Problemen die genaue Fehlermeldung oder mache ein Bild davon.
 
  +
|-
 
  +
! Eigenschaft !! Priorität
== Eingabe-Ausgabe-Modul ==
 
  +
|-
 
  +
| Verkabelung und Installation des Linuxservers || zwingend
[[Datei:EA rpi modul an pi.jpg|miniatur|Eingabe-Ausgabe-Modul für den RaspberryPI]]
 
  +
|-
 
  +
| DHCP und DNS || zwingend
Im Unterricht wird ein Eingabe-Ausgabe-Hardware-Modul erstellt und über Software angesteuert. Viele Informationen darüber inkl. einer Dokumentation ist unter dem Projektnamen [https://github.com/pintman/ea_rpi_modul eapi] bei github verfügbar.
 
  +
|-
 
  +
| E-Mail-Server|| zwingend
Das E/A-Modul ist eine kleine Platine, die über zwei Taster für Eingaben und drei Leuchtdioden (rot, gelb und grün) für Ausgaben verfügt. Die Ansteuerung erfolgt über die GPIO-Schnittstelle des Raspberry Pi. Es wird an fünf GPIO-Pins des PI angeschlossen und benötigt zusätzlich einen 3,3-V-Pin und einen Masse-Pin für die Spannungsversorgung.
 
  +
|-
 
  +
| Cloud und Filesharing || zwingend
Die Software liegt als Modul im Python-Package-Index (PyPi) unter dem Namen ''eapi''. Sie kann mit ''sudo pip3 install eapi'' installiert werden. Wenn die Installation nur lokal für einen User erfolgen soll, heißt der Befehl ''pip3 install --user eapi''.
 
  +
|-
 
  +
| NTP || zwingend
Unter Windows gibt es kein ''sudo''. Daher kann dieser Befehl unter Windows ohne ''sudo'' ausgeführt werden.
 
  +
|-
 
  +
| VPN || optional
== Links ==
 
  +
|-
 
  +
| Servergespeicherte Profile || optional
* [https://www.raspberrypi.org/ Webseite von RaspberryPi]
 
  +
|-
* [https://www.raspbian.org/ Raspbian] - Das Betriebssystem für den RaspberryPi. Es basiert auf dem Betriebssystem Debian.
 
  +
| Netzwerk über WLAN || optional
* [http://sourceforge.net/projects/win32diskimager/ Win32 Disk Imager] schreibt unter Windows Disk-Images auf SD-Karten. Unter Linux klappt dies mit dem dd-Befehl.
 
  +
|-
 
  +
| Subversion || optional
* [https://de.wikipedia.org/wiki/Raspberry_Pi Raspberry Pi] bei Wikipedia
 
  +
|-
* [https://www.raspberrypi.org/magpi-issues/MagPi36.pdf The MagPi (Ausgabe 36)] - in dieser Ausgabe werden die ersten Schritte mit dem Raspberry Pi ab Seite 16 ausführlich beschrieben.
 
  +
| Druckserver || optional
* [https://www.rheinwerk-verlag.de/raspberry-pi_3872/ Raspberry Pi - Das umfassende Handbuch] ist ein dickes Buch über den Raspberry Pi. Die ersten Kapitel stellt der Verlag kostenlos zur Verfügung. Für den Einstieg reichen sie. Die Schule hat eine Ausgabe in der IT-Bibliothek im Raum zwischen R.44 und R.46 deponiert.
 
  +
|}
* [https://medienistik.wordpress.com/2013/03/27/neues-themenheft-unterrichten-mit-dem-raspberry-pi/ Kostenloses Themenheft: Unterrichten mit dem Raspberry Pi]
 
* [http://pinout.xyz/ pinout.xyz] zeigt die Pin-Belegung der GPIO-Pins des Pi zusammen mit typischen Code-Schnipseln in Python.
 
 
* Materialien von [https://www.bakera.de/dokuwiki/doku.php/schule/raspberry_pi Herrn Bakera] und [https://elektro.schule/doku.php/raspberry Herrn Gummlich]
 
 
* Ein [http://main.tbs1.de:5080/NOOBS_latest.zip einigermaßen aktuelles NOOBS] bzw. [http://main.tbs1.de:5080/raspbian_lite_latest.zip Raspbian lite] gibt es auch auf dem Server des ITA-Wiki.
 

Aktuelle Version vom 24. Oktober 2020, 12:57 Uhr

Ein Projekt für den Projekttag.

Projektinformationen
Aufwand (Ph) 16h
Teamgröße 3
Schwierigkeitsgrad mittel
Ansprechpartner Herr Peters
Projekttag


Kurzbeschreibung

Es soll auf einem linuxbasierten Server ein Kundennetzwerk eingerichtet werden. Dieses soll den gewohnten Standard, den man im beruflichen Leben findet, entsprechen.

Meilensteine

Verkabelung und Installation des Linuxservers

Zuerst wird die Vernetzung der Clients und des Servers umgesetzt. Als Betriebssystem wird Linux bzw. eine Linux-Distribution(Ubuntu, Debian o.Ä) installiert.

DHCP und DNS

Um die Clients im Netzwerk zu adressieren, wird der DHCP- und DNS-Dienst "dnsmasq" installiert und konfiguriert.

E-Mail-Server

Damit die Clients und der Server sich untereinander E-Mails verschicken können, wird ein E-Mail-Server eingerichtet.

Cloud und Filesharing

Zum Austauschen von Dateien unter den jeweiligen Nutzern, wird eine Cloud, sowie ein Dateiserver aufgesetzt.

NTP

Durch das Network Time Protocol wird eine Synchronisation der Zeit zwischen dem Server und Clients ermöglicht.

Optional: VPN

Ermöglicht eine sichere Verbindung über das Firmennetzwerk für Außenstehende z.B. Mitarbeiter im Außendienst.

Optional: Servergespeicherte Profile

Servergespeicherte Profile werden genutzt, um unabhängig vom Standort des Clients zu sein. Ein Nutzer ist dementsprechend nicht an einen bestimmten Rechner gebunden.

Optional: Netzwerk über WLAN

Netzwerkeinbindung des Servers nicht über Switch oder Hub, sondern über eigenes WLAN-Netz, indem sich andere Clients integrieren können.

Optional: Subversion

Durch Subversion ist es möglich, eine zentrale Versionsverwaltung (z.B. im Dateiserver) zu aktivieren.

Optional: Druckserver

Es wird ein Drucker an den Server angeschlossen, welcher über das Netzwerk für andere Clients zum Drucken freigegeben wird.

Eigenschaften

Eigenschaft Priorität
Verkabelung und Installation des Linuxservers zwingend
DHCP und DNS zwingend
E-Mail-Server zwingend
Cloud und Filesharing zwingend
NTP zwingend
VPN optional
Servergespeicherte Profile optional
Netzwerk über WLAN optional
Subversion optional
Druckserver optional