installieren Apache2 auf Rasperry PI

APACHE Installation

Update-RPI

Installieren Sie ownCloud

Anabele Apache MOD'S

Proxy-Multicast-Stream über Apache-Proxy mit Authentifizierung

Ich konfigurierte einen Proxy für Multicast zu http

Dazu benötigen Sie beispielsweise für Proxying Verkehr Form Telekom Home Entertainment

in den crontab

Neuanlegen für die Authentifizierung

fügen Sie ein addtional Benutzer

in den VHOST

Ändern Sie die Kanalliste wie für telekom

 

Wordpress autoupdater

wp-cli installieren -> http://wp-cli.org/

Verwenden Sie dieses Skript

Funksteckdosen via Raspberry Pi über das Terminal, Webinterface oder Siri steuern – 433 mHz

Belegung

rpi2-pins

RaspberryPi Transmitter Receiver
Pin 2 / 4 (5V) VCC VCC
Pin 6 / 9 (GND) GND GND
Pin 11 (GPIO17) – RPi Nr.1 ATAD
Pin 13 (GPIO27) – RPi Nr.2 DATA (to the left of GND)

Software

Kommen wir nun zur Software. Hierzu müsst ihr erstmal euren Raspberry Pi starten, an dem alles wie oben beschrieben montiert wurde. Anschließen solltet ihr erst mal

ausführen. Dadurch werden eure Paketquellen aktualisiert. Dann muss git-core installiert werden (falls nicht sowieso schon geschehen):

Um die Ansteuerung des Transmitters zu realisieren gibt es ein Projekt namensWiringPi. Dieses installiert ihr euch auf eurem Raspberry Pi wie folgt:

Auch für unseren Zweck, die Steckdosen zu steuern gibt es bereits ein Projekt. Dieses stammt von xkonni und nennt sich Raspberry-Remote. Ihr installiert es euch so:

Damit es läuft, müsst ihr euch noch die send.cpp kompilieren, also folgendes eintippen:

installieren eines sniffers

Für die Pin Belegung

test des sniffers

Webinterface

Natürlich ist es etwas umständlich und unkomfortabel, das Ganze immer über das Terminal/eine SSH-Verbindung machen zu müssen. Aber kein Problem! Raspberry-Remote liefert auch gleich ein passendes Webinterface mit. Damit ihr das nutzen könnt, solltet ihr erst mal Apache und PHP installieren auf eurem Raspberry:

Jetzt gehts zum Webinterface, was xkonni direkt mitliefert. Dazu habe ich im Ordner

einen Unterordner remote erstellt. Anschließend den Inhalt von ~/raspberry-remote/webinterface dorthin verschoben:

Jetzt muss noch in der

Datei die IP Adresse des Raspberry Pis angepasst werden: dazu einfach nano verwenden.

Deamon

Nun fehlt noch der Daemon, auf den das PHP-Script des Webinterfaces zugreift. Dazu gehen wir in das Raspberry-Remote Verzeichnis zurück: cd ~/raspberryremote und kompilieren den daemon: make daemon
Nun können wir diesen Starten:

Das & bewirkt, dass der Prozess im Hintergrund läuft.

Jetzt können wir unser Glück mit dem Webinterface probieren: Dazu rufen wir von einem anderen Rechner/Handy das Webinterface per http://192.168.11.44/remote/ (Eure IP einsetzen) auf. Wenn das geht und dort die verschiedenen Steckdosen sichtbar sind, dann muss man jetzt nur noch in der config.php die Steckdosen mit Namen versehen und evtl. die Codes, etc. anpassen. Die Konfiguration sollte selbsterklärend sein.screenshot_webinterface

Falls ihr eine Fehlermeldung wie „Switch out of range: GET /:XY“ bekommt, keine Sorge! In der daemon.cpp sind standardmäßig nur die Hauscodes 00000 & 00001 & 00010 abgedeckt. Das lässt sich aber einfach ändern. Geht dazu wieder ins Verzeichnis von Raspberry Remote (bei mir /home/pi/raspberry-remote/, also via

und öffnet die daemon.cpp mit nano. Darin befindet sich der Eintrag „nPlugs=10;“, welche ihr einfach durch „nPlugs= 1110;“. Anschließend übersudo make daemon neu kompilieren und über sudo ./daemon & wieder starten. Jetzt sollte auch bei euch das Webinterface funktionieren.

 

Quellen:

Let Raspberry Pi’s communicate with each other per 433MHz wireless signals

https://alexbloggt.com/funksteckdosen-raspberry-pi-teil1/

https://alexbloggt.com/funksteckdosen-raspberry-pi-teil2/

 

Des weiteren habe noch einige anderen tolle Projekte gefunden

OK Google, Schalte Liste an -> https://blog.medienman.de/blog/2017/08/20/google-home-steuert-433-mhz-funksteckdosen/

letsencrypt auf Apache und Linux

dies ist ein kleiner Leitfaden, wie man Setup letsencrypt auf Apache und auf Linux

Zuerst müssen wir ein letsencrypt Tool zum Download und die Beispielconfig in die richtige Position bewegen

Konfigurieren Sie die letsencrypt Konfigurationsdatei

/opt / letsencrypt.sh / config.sh

 

theletsencrypt alias für Apache konfigurieren

/etc / apache2 / conf.d / letsencrypt

die hook.sh Datei konfigurieren zum Nachladen des Apache

/etc / letsencrypt.sh / hook.sh

Ändern Sie den mod dieser Datei

Konfigurieren Sie die Domain-Datei

/opt / letsencrypt.sh / domains

laufen letsencrypt

erstellen crontjob, dass die certs jede Woche erzeugt werden

vHost

Neufassungen

Proxy-Pass

Fehler

Erstellen Sie eine Public-Key-Infrastruktur mit Hilfe der easy-rsa Scripts

Der erste Schritt bei der Einrichtung OpenVPN ist eine zu erstellen Public Key Infrastructure (PKI). Die PKI besteht aus:

  • Ein öffentlicher Master Zertifizierungsstelle (CA) Zertifikat und einen privaten Schlüssel.
  • Eine separate öffentliche Zertifikat und einen privaten Schlüssel (im Folgenden als Zertifikat bezeichnet) für jeden Server und jeder Client.

Um das Zertifikat Erstellungsprozess erleichtern, OpenVPN kommt mit einer Sammlung von RSA Schlüssel manangement Skripte (basierend auf der OpenSSL-Kommandozeilen-Tool) bekannt als easy-rsa.

Hinweis: Nur .key-Dateien müssen geheim gehalten werden, .CRT- und .csr-Dateien können über unsichere Kanäle wie Text-E-Mail gesendet werden.

In diesem Artikel werden die benötigten Zertifikate werden von Wurzel im Stammverzeichnis des erstellt. Dadurch wird sichergestellt, dass die erzeugten Dateien den richtigen Eigentümer und Berechtigungen haben, und sind sicher von anderen Benutzern.

Hinweis: Die Zertifikate können auf jeder Maschine erstellt werden. Für die höchste Sicherheit, die Zertifikate auf einem physisch sicheren Maschine erzeugen aus jedem Netz getrennt, und stellen Sie sicher, dass die erzeugte ca.key privaten Schlüssel gesichert und nie für jedermann zugänglich.
Warnung: Stellen Sie sicher, dass die erzeugten Dateien gesichert werden, vor allem die ca.key und ca.crt Dateien, wenn sie verloren gehen, da werden Sie nicht in der Lage, jede neue zu schaffen, noch widerrufen alle kompromittiert Zertifikate, so erfordert die Erzeugung eines neuen Zertifizierungsstelle (CA) Zertifikat, entkräften die gesamte PKI-Infrastruktur.

Installieren der easy-rsa-Skripten

Installieren Sie die Skripte durch folgende Maßnahmen:

Zertifikate erstellen

Wechseln Sie in das Verzeichnis, in dem Sie die Skripte installiert.

Um die konsequente Nutzung der Werte zu gewährleisten, wenn die PKI-Generierung, Satz Standardwerte durch die PKI-Erzeugungs Skripte verwendet werden. Bearbeiten / root / easy-rsa / VARs und auf ein Minimum KEY_COUNTRY gesetzt, KEY_PROVINCE, KEY_CITY, KEY_ORG, und KEY_EMAIL Parameter (nicht jeder dieser Parameter leer lassen). Ändern Sie den KEY_SIZE Parameter 2048 für die SSL / TLS 2048bit RSA-Schlüssel für die Authentifizierung verwenden.

Exportieren Sie die Umgebungsvariablen.

Löschen Sie alle zuvor erstellten Zertifikate.

Hinweis: Die Eingabe eines . (Punkt) wenn für einen Wert aufgefordert, ausblendet den Parameter.

Der Build-Skript CA erzeugt das Zertifizierungsstelle (CA) Zertifikat.

Der Build-Schlüssel-Server-Skript # ./build-key-server <server name> erzeugt ein Serverzertifikat. Stellen Sie sicher, dass Sie den Servernamen (Common Name beim Ausführen des Skripts) ist einzigartig.

Hinweis: Verwenden Sie keine Herausforderung Passwort oder Firmennamen eingeben, wenn das Skript Sie eine Eingabeaufforderungen.

Der Build-Skript erzeugt die AVW Diffie-Hellman-Parameter .pem-Datei vom Server benötigt.

Hinweis: Es wäre besser, ein neues für jeden Server zu erzeugen, Sie können jedoch die gleiche, wenn Sie möchten,.

Der Build-key-Skript # ./build-key <client name> erzeugt ein Client-Zertifikat. Stellen Sie sicher, dass die Client-Namen (Common Name beim Ausführen des Skripts) ist einzigartig.

Hinweis: Verwenden Sie keine Herausforderung Passwort oder Firmennamen eingeben, wenn das Skript Sie eine Eingabeaufforderungen.

Generieren Sie ein Geheimnis Hash-basierte Message Authentication Code (HMAC) durch laufen: # openvpn --genkey --secret /root/easy-rsa/keys/ta.key

Dies wird verwendet, um eine zusätzliche HMAC-Signatur für alle SSL / TLS Handshake-Pakete hinzufügen. Darüber hinaus wird sofort gelöscht werden, jede UDP-Paket nicht die richtige HMAC-Signatur mit, Schutz vor:

  • Portscanning.
  • DoS-Angriffe auf dem OpenVPN UDP-Port.
  • SSL / TLS-Handshake Einweihungen von nicht autorisierten Maschinen.
  • Eventuelle Pufferüberlauf-Schwachstellen in der SSL / TLS-Implementierung.

Alle erstellten Schlüssel und Zertifikate in / root / easy-rsa / Schlüssel gespeichert. Wenn Sie einen Fehler machen,, Sie können wieder durch Ausführen des Rein alle Skript neu anfangen.

Warnung: Dadurch werden alle zuvor generierten Zertifikate in / root / easy-rsa / Schlüssel gespeichert löschen, einschließlich der Zertifizierungsstelle (CA) Zertifikat.

Konvertieren von Zertifikaten verschlüsselt P12-Format

Einige Software (wie Android) nur VPN-Zertifikate zu lesen, die in einem Passwort-verschlüsselten P12-Datei gespeichert werden. Diese können mit dem folgenden Befehl generiert werden:

Überprüfen OpenSSL

Wenn Sie benötigen die Informationen innerhalb eines Zertifikats zu überprüfen, CSR oder Private Key, Verwenden Sie diese Befehle. Du kannst auch überprüfen CSRs und prüfen Sie die Zertifikate mit unserem Online-Tools.

  • Prüfen Sie den Certificate Signing Request (CSR)
  • Überprüfen Sie einen privaten Schlüssel
  • Prüfen Sie ein Zertifikat
  • Überprüfen Sie eine PKCS # 12-Datei (.pfx oder P12)

HTTP: deaktivierte Verbindung für (xxx)

[Wed Nov 26 12:11:53.835820 2014] [proxy:error] [pid 25184:tid 139835276719872] AH00940: HTTP: disabled connection for (xxx)

Das ist, weil der SE Linux.

Etwas reparieren:

Oder Sie können auch die Sicherheitseinstellungen,

-> Zum Sicherheitsstufe Konfigurationen und ändern Tab zu SELinux

Und SELinux-Richtlinien überprüfen ändern

unter HTTPD Service