staging.inyokaproject.org

4. Juli 2018

Es gibt in der heutigen Zeit gute Gründe, über VPN, einen Proxy oder über TOR ins Netz zu gehen. Sei es das öffentliche W-Lan im Lieblingscafé oder aber wesentlich relevanter, ihr befindet euch in einem Land, in dem kein freies Internet vorhanden ist bzw. gewisse Inhalte blockiert werden.
Nicht jeder Mensch kann oder möchte sich damit herumschlagen, beispielsweise einen OpenVPN-Server oder Proxy-Server einzurichten. Oft fehlt auch einfach das technische Verständnis bzw. Kenntnis.

alt

Streisand zeigt wie wundervoll OpenSource im Kampf gegen Unterdrückung und Zensur im Internet helfen kann. Mittels Streisand lassen sich in wenigen Minuten auf Wunsch unzählige Gateway-Server zum anonymen Zugriff einrichten, die euch folgende fertig konfigurierte Dinge bieten:

  • Passwortgeschützte Gateway-Seite mittels NGINX, erreichbar über SSL und Tor als Hidden service
  • Installation folgender Dienste: OpenSSH, OpenConnect / Cisco AnyConnect, OpenVPN, Shadowsocks, sslh, Stunnel, Tor, UFW, unattended-upgrades, WireGuard
  • Schritt-für-Schritt-Anleitungen zur Einrichtung der einzelnen Dienste
  • Sämtliche empfohlene Software wird gemirrored. Die Authentizität wird mittels Checksummen sichergestellt.
  • Alle genutzten Ports wurden so gewählt, dass Port-Blockierungen sich als schwierig erweisen. Als Beispiel verwendet OpenVPN Port 636, der auch von LDAP verwendet wird.

Eine deutlich umfangreichere Auflistung findet ihr in der Readme vom Projekt.

Die Installation ist zur Zeit leider noch mit Mehraufwand verbunden, was in Zukunft aber vereinfacht werden soll.
Der Normalfall sieht vor, dass von eurem Client aus mittels Ansible-Scripts ein neuer Server bei Amazon EC2, Azure, DigitalOcean, Google Compute Engine, Linode und Rackspace angelegt und automatisch eingerichtet wird. Es gibt aber auch die Möglichkeit lokal vorzugehen. Ich beschreibe im folgenden, wie ich vorgegangen bin.

Ausgangslage ist bei mir ein Cloud-Server von Hetzner. Voraussetzung ist – leider noch – ein Ubuntu 16.04-Image. Als erstes sorgt dafür, dass euer Server mittels DNS erreichbar ist, damit ihr später im Verlauf der Installation ein Let´s Encrypt-Zertifikat beantragen könnt.
Bevor wir mit der Installation beginnen, muss – sofern noch nicht vorhanden – mittels ssh-keygen ein SSH-Key erstellt werden. Übernimmt einfach die vorgeschlagenen Standard-Pfade.

Als erstes müssen wir nun ein ein paar benötigte Pakete installieren sowie das Projekt von Github clonen:

apt updateapt-get install git python-pipgit clone https://github.com/StreisandEffect/streisand.git && cd streisand

Mittels folgenden Befehl wird der Installer für Ansible gestartet. Dieser prüft zunächst auf fehlende Pakete und wird euch diese auflisten. Installiert diese wie angegeben.

./util/venv-dependencies.sh ./venv

Anschließend ruft ihr den Befehl erneut auf um die Installation durchzuführen. Ist die Installation durchgelaufen aktiviert ihr mit folgendem Befehl die installierten Ansible-Pakete:

source ./venv/bin/activate

Ein Ausführen von ./streisand startet nun die Installation. Wählt im Installer nun den Punkt 7. localhost (Advanced) aus und bestätigt im weiteren Verlauf die Warnung, dass ggf. Konfigurationen überschrieben werden können.

Wenn ihr gefragt werdet, ob ihr Änderungen an den Standard-Einstellungen vornehmen möchtet, widersprecht ihr mit Eingabe von no.

Ebenfalls werdet ihr im Verlauf der Installation nach Hostnamen des Servers und eurer E-Mail-Adresse gefragt. Beides ist lediglich von Bedeutung, sofern ihr Let’s Encrypt nutzen wollt – was sich allerdings gerade bei solch einem Anwendungsfall empfiehlt.

alt

Die Installation wird mit einer Fehlermeldung erfolgreich beendet werden, was daran liegt, dass der Installer versucht euch die HTML-Datei mit dem Zugangsdaten anzuzeigen.
Kopiert euch von eurem System den Ordner generated-docs herunter. Dieser enthält Informationen zur Firewall und die erwähnten Zugangsdaten.

Streisand ist nun eingerichtet und bereit zur Benutzung. ?

Sofern jemand in der anfangs beschriebenen Situation ist und solch eine Installation benötigt, schreibt mir eine E-Mail und ich helfe gerne weiter!

STREISAND - Automatisierter Gateway-Server zum anonymen surfen

Es gibt in der heutigen Zeit gute Gründe, über VPN, einen Proxy oder über TOR ins Netz zu gehen. Sei es das öffentliche W-Lan im Lieblingscafé oder aber wesentlich relevanter, ihr befindet euch in einem Land, in dem kein freies Internet vorhanden ist bzw. gewisse Inhalte blockiert werden.
Nicht jeder Mensch kann oder möchte sich damit herumschlagen, beispielsweise einen OpenVPN-Server oder Proxy-Server einzurichten. Oft fehlt auch einfach das technische Verständnis bzw. Kenntnis.

STREISAND - Automatisierter Gateway-Server zum anonymen surfen
Streisand Übersicht

Streisand zeigt wie wundervoll OpenSource im Kampf gegen Unterdrückung und Zensur im Internet helfen kann. Mittels Streisand lassen sich in wenigen Minuten auf Wunsch unzählige Gateway-Server zum anonymen Zugriff einrichten, die euch folgende fertig konfigurierte Dinge bieten:

  • Passwortgeschützte Gateway-Seite mittels NGINX, erreichbar über SSL und Tor als Hidden service
  • Installation folgender Dienste: OpenSSH, OpenConnect / Cisco AnyConnect, OpenVPN, Shadowsocks, sslh, Stunnel, Tor, UFW, unattended-upgrades, WireGuard
  • Schritt-für-Schritt-Anleitungen zur Einrichtung der einzelnen Dienste
  • Sämtliche empfohlene Software wird gemirrored. Die Authentizität wird mittels Checksummen sichergestellt.
  • Alle genutzten Ports wurden so gewählt, dass Port-Blockierungen sich als schwierig erweisen. Als Beispiel verwendet OpenVPN Port 636, der auch von LDAP verwendet wird.

Eine deutlich umfangreichere Auflistung findet ihr in der Readme vom Projekt.

Die Installation ist zur Zeit leider noch mit Mehraufwand verbunden, was in Zukunft aber vereinfacht werden soll.
Der Normalfall sieht vor, dass von eurem Client aus mittels Ansible-Scripts ein neuer Server bei Amazon EC2, Azure, DigitalOcean, Google Compute Engine, Linode und Rackspace angelegt und automatisch eingerichtet wird. Es gibt aber auch die Möglichkeit lokal vorzugehen. Ich beschreibe im folgenden, wie ich vorgegangen bin.

Ausgangslage ist bei mir ein Cloud-Server von Hetzner. Voraussetzung ist - leider noch - ein Ubuntu 16.04-Image. Als erstes sorgt dafür, dass euer Server mittels DNS erreichbar ist, damit ihr später im Verlauf der Installation ein Let´s Encrypt-Zertifikat beantragen könnt.
Bevor wir mit der Installation beginnen, muss - sofern noch nicht vorhanden - mittels ssh-keygen ein SSH-Key erstellt werden. Übernimmt einfach die vorgeschlagenen Standard-Pfade.

Als erstes müssen wir nun ein ein paar benötigte Pakete installieren sowie das Projekt von Github clonen:

apt update
apt-get install git python-pip
git clone https://github.com/StreisandEffect/streisand.git && cd streisand

Mittels folgenden Befehl wird der Installer für Ansible gestartet. Dieser prüft zunächst auf fehlende Pakete und wird euch diese auflisten. Installiert diese wie angegeben.

./util/venv-dependencies.sh ./venv

Anschließend ruft ihr den Befehl erneut auf um die Installation durchzuführen. Ist die Installation durchgelaufen aktiviert ihr mit folgendem Befehl die installierten Ansible-Pakete:

source ./venv/bin/activate

Ein Ausführen von ./streisand startet nun die Installation. Wählt im Installer nun den Punkt 7. localhost (Advanced) aus und bestätigt im weiteren Verlauf die Warnung, dass ggf. Konfigurationen überschrieben werden können.

Wenn ihr gefragt werdet, ob ihr Änderungen an den Standard-Einstellungen vornehmen möchtet, widersprecht ihr mit Eingabe von no.

Ebenfalls werdet ihr im Verlauf der Installation nach Hostnamen des Servers und eurer E-Mail-Adresse gefragt. Beides ist lediglich von Bedeutung, sofern ihr Let's Encrypt nutzen wollt - was sich allerdings gerade bei solch einem Anwendungsfall empfiehlt.

STREISAND - Automatisierter Gateway-Server zum anonymen surfen
Informationen zum Streisand Zugang

Die Installation wird mit einer Fehlermeldung erfolgreich beendet werden, was daran liegt, dass der Installer versucht euch die HTML-Datei mit dem Zugangsdaten anzuzeigen.
Kopiert euch von eurem System den Ordner generated-docs herunter. Dieser enthält Informationen zur Firewall und die erwähnten Zugangsdaten.

Streisand ist nun eingerichtet und bereit zur Benutzung. :)

Sofern jemand in der anfangs beschriebenen Situation ist und solch eine Installation benötigt, schreibt mir eine E-Mail und ich helfe gerne weiter!

Es gibt in der heutigen Zeit gute Gründe, über VPN, einen Proxy oder über TOR ins Netz zu gehen. Sei es das öffentliche W-Lan im Lieblingscafé oder aber wesentlich relevanter, ihr befindet euch in einem Land, in dem kein freies Internet vorhanden ist bzw. gewisse Inhalte blockiert werden.
Nicht jeder Mensch kann oder möchte sich damit herumschlagen, beispielsweise einen OpenVPN-Server oder Proxy-Server einzurichten. Oft fehlt auch einfach das technische Verständnis bzw. Kenntnis.

alt

Streisand zeigt wie wundervoll OpenSource im Kampf gegen Unterdrückung und Zensur im Internet helfen kann. Mittels Streisand lassen sich in wenigen Minuten auf Wunsch unzählige Gateway-Server zum anonymen Zugriff einrichten, die euch folgende fertig konfigurierte Dinge bieten:

  • Passwortgeschützte Gateway-Seite mittels NGINX, erreichbar über SSL und Tor als Hidden service
  • Installation folgender Dienste: OpenSSH, OpenConnect / Cisco AnyConnect, OpenVPN, Shadowsocks, sslh, Stunnel, Tor, UFW, unattended-upgrades, WireGuard
  • Schritt-für-Schritt-Anleitungen zur Einrichtung der einzelnen Dienste
  • Sämtliche empfohlene Software wird gemirrored. Die Authentizität wird mittels Checksummen sichergestellt.
  • Alle genutzten Ports wurden so gewählt, dass Port-Blockierungen sich als schwierig erweisen. Als Beispiel verwendet OpenVPN Port 636, der auch von LDAP verwendet wird.

Eine deutlich umfangreichere Auflistung findet ihr in der Readme vom Projekt.

Die Installation ist zur Zeit leider noch mit Mehraufwand verbunden, was in Zukunft aber vereinfacht werden soll.
Der Normalfall sieht vor, dass von eurem Client aus mittels Ansible-Scripts ein neuer Server bei Amazon EC2, Azure, DigitalOcean, Google Compute Engine, Linode und Rackspace angelegt und automatisch eingerichtet wird. Es gibt aber auch die Möglichkeit lokal vorzugehen. Ich beschreibe im folgenden, wie ich vorgegangen bin.

Ausgangslage ist bei mir ein Cloud-Server von Hetzner. Voraussetzung ist – leider noch – ein Ubuntu 16.04-Image. Als erstes sorgt dafür, dass euer Server mittels DNS erreichbar ist, damit ihr später im Verlauf der Installation ein Let´s Encrypt-Zertifikat beantragen könnt.
Bevor wir mit der Installation beginnen, muss – sofern noch nicht vorhanden – mittels ssh-keygen ein SSH-Key erstellt werden. Übernimmt einfach die vorgeschlagenen Standard-Pfade.

Als erstes müssen wir nun ein ein paar benötigte Pakete installieren sowie das Projekt von Github clonen:

apt updateapt-get install git python-pipgit clone https://github.com/StreisandEffect/streisand.git && cd streisand

Mittels folgenden Befehl wird der Installer für Ansible gestartet. Dieser prüft zunächst auf fehlende Pakete und wird euch diese auflisten. Installiert diese wie angegeben.

./util/venv-dependencies.sh ./venv

Anschließend ruft ihr den Befehl erneut auf um die Installation durchzuführen. Ist die Installation durchgelaufen aktiviert ihr mit folgendem Befehl die installierten Ansible-Pakete:

source ./venv/bin/activate

Ein Ausführen von ./streisand startet nun die Installation. Wählt im Installer nun den Punkt 7. localhost (Advanced) aus und bestätigt im weiteren Verlauf die Warnung, dass ggf. Konfigurationen überschrieben werden können.

Wenn ihr gefragt werdet, ob ihr Änderungen an den Standard-Einstellungen vornehmen möchtet, widersprecht ihr mit Eingabe von no.

Ebenfalls werdet ihr im Verlauf der Installation nach Hostnamen des Servers und eurer E-Mail-Adresse gefragt. Beides ist lediglich von Bedeutung, sofern ihr Let’s Encrypt nutzen wollt – was sich allerdings gerade bei solch einem Anwendungsfall empfiehlt.

alt

Die Installation wird mit einer Fehlermeldung erfolgreich beendet werden, was daran liegt, dass der Installer versucht euch die HTML-Datei mit dem Zugangsdaten anzuzeigen.
Kopiert euch von eurem System den Ordner generated-docs herunter. Dieser enthält Informationen zur Firewall und die erwähnten Zugangsdaten.

Streisand ist nun eingerichtet und bereit zur Benutzung. ?

Sofern jemand in der anfangs beschriebenen Situation ist und solch eine Installation benötigt, schreibt mir eine E-Mail und ich helfe gerne weiter!

STREISAND - Automatisierter Gateway-Server zum anonymen surfen

Es gibt in der heutigen Zeit gute Gründe, über VPN, einen Proxy oder über TOR ins Netz zu gehen. Sei es das öffentliche W-Lan im Lieblingscafé oder aber wesentlich relevanter, ihr befindet euch in einem Land, in dem kein freies Internet vorhanden ist bzw. gewisse Inhalte blockiert werden.
Nicht jeder Mensch kann oder möchte sich damit herumschlagen, beispielsweise einen OpenVPN-Server oder Proxy-Server einzurichten. Oft fehlt auch einfach das technische Verständnis bzw. Kenntnis.

STREISAND - Automatisierter Gateway-Server zum anonymen surfen
Streisand Übersicht

Streisand zeigt wie wundervoll OpenSource im Kampf gegen Unterdrückung und Zensur im Internet helfen kann. Mittels Streisand lassen sich in wenigen Minuten auf Wunsch unzählige Gateway-Server zum anonymen Zugriff einrichten, die euch folgende fertig konfigurierte Dinge bieten:

  • Passwortgeschützte Gateway-Seite mittels NGINX, erreichbar über SSL und Tor als Hidden service
  • Installation folgender Dienste: OpenSSH, OpenConnect / Cisco AnyConnect, OpenVPN, Shadowsocks, sslh, Stunnel, Tor, UFW, unattended-upgrades, WireGuard
  • Schritt-für-Schritt-Anleitungen zur Einrichtung der einzelnen Dienste
  • Sämtliche empfohlene Software wird gemirrored. Die Authentizität wird mittels Checksummen sichergestellt.
  • Alle genutzten Ports wurden so gewählt, dass Port-Blockierungen sich als schwierig erweisen. Als Beispiel verwendet OpenVPN Port 636, der auch von LDAP verwendet wird.

Eine deutlich umfangreichere Auflistung findet ihr in der Readme vom Projekt.

Die Installation ist zur Zeit leider noch mit Mehraufwand verbunden, was in Zukunft aber vereinfacht werden soll.
Der Normalfall sieht vor, dass von eurem Client aus mittels Ansible-Scripts ein neuer Server bei Amazon EC2, Azure, DigitalOcean, Google Compute Engine, Linode und Rackspace angelegt und automatisch eingerichtet wird. Es gibt aber auch die Möglichkeit lokal vorzugehen. Ich beschreibe im folgenden, wie ich vorgegangen bin.

Ausgangslage ist bei mir ein Cloud-Server von Hetzner. Voraussetzung ist - leider noch - ein Ubuntu 16.04-Image. Als erstes sorgt dafür, dass euer Server mittels DNS erreichbar ist, damit ihr später im Verlauf der Installation ein Let´s Encrypt-Zertifikat beantragen könnt.
Bevor wir mit der Installation beginnen, muss - sofern noch nicht vorhanden - mittels ssh-keygen ein SSH-Key erstellt werden. Übernimmt einfach die vorgeschlagenen Standard-Pfade.

Als erstes müssen wir nun ein ein paar benötigte Pakete installieren sowie das Projekt von Github clonen:

apt update
apt-get install git python-pip
git clone https://github.com/StreisandEffect/streisand.git && cd streisand

Mittels folgenden Befehl wird der Installer für Ansible gestartet. Dieser prüft zunächst auf fehlende Pakete und wird euch diese auflisten. Installiert diese wie angegeben.

./util/venv-dependencies.sh ./venv

Anschließend ruft ihr den Befehl erneut auf um die Installation durchzuführen. Ist die Installation durchgelaufen aktiviert ihr mit folgendem Befehl die installierten Ansible-Pakete:

source ./venv/bin/activate

Ein Ausführen von ./streisand startet nun die Installation. Wählt im Installer nun den Punkt 7. localhost (Advanced) aus und bestätigt im weiteren Verlauf die Warnung, dass ggf. Konfigurationen überschrieben werden können.

Wenn ihr gefragt werdet, ob ihr Änderungen an den Standard-Einstellungen vornehmen möchtet, widersprecht ihr mit Eingabe von no.

Ebenfalls werdet ihr im Verlauf der Installation nach Hostnamen des Servers und eurer E-Mail-Adresse gefragt. Beides ist lediglich von Bedeutung, sofern ihr Let's Encrypt nutzen wollt - was sich allerdings gerade bei solch einem Anwendungsfall empfiehlt.

STREISAND - Automatisierter Gateway-Server zum anonymen surfen
Informationen zum Streisand Zugang

Die Installation wird mit einer Fehlermeldung erfolgreich beendet werden, was daran liegt, dass der Installer versucht euch die HTML-Datei mit dem Zugangsdaten anzuzeigen.
Kopiert euch von eurem System den Ordner generated-docs herunter. Dieser enthält Informationen zur Firewall und die erwähnten Zugangsdaten.

Streisand ist nun eingerichtet und bereit zur Benutzung. :)

Sofern jemand in der anfangs beschriebenen Situation ist und solch eine Installation benötigt, schreibt mir eine E-Mail und ich helfe gerne weiter!

Es gibt in der heutigen Zeit gute Gründe, über VPN, einen Proxy oder über TOR ins Netz zu gehen. Sei es das öffentliche W-Lan im Lieblingscafé oder aber wesentlich relevanter, ihr befindet euch in einem Land, in dem kein freies Internet vorhanden ist bzw. gewisse Inhalte blockiert werden.
Nicht jeder Mensch kann oder möchte sich damit herumschlagen, beispielsweise einen OpenVPN-Server oder Proxy-Server einzurichten. Oft fehlt auch einfach das technische Verständnis bzw. Kenntnis.

alt

Streisand zeigt wie wundervoll OpenSource im Kampf gegen Unterdrückung und Zensur im Internet helfen kann. Mittels Streisand lassen sich in wenigen Minuten auf Wunsch unzählige Gateway-Server zum anonymen Zugriff einrichten, die euch folgende fertig konfigurierte Dinge bieten:

  • Passwortgeschützte Gateway-Seite mittels NGINX, erreichbar über SSL und Tor als Hidden service
  • Installation folgender Dienste: OpenSSH, OpenConnect / Cisco AnyConnect, OpenVPN, Shadowsocks, sslh, Stunnel, Tor, UFW, unattended-upgrades, WireGuard
  • Schritt-für-Schritt-Anleitungen zur Einrichtung der einzelnen Dienste
  • Sämtliche empfohlene Software wird gemirrored. Die Authentizität wird mittels Checksummen sichergestellt.
  • Alle genutzten Ports wurden so gewählt, dass Port-Blockierungen sich als schwierig erweisen. Als Beispiel verwendet OpenVPN Port 636, der auch von LDAP verwendet wird.

Eine deutlich umfangreichere Auflistung findet ihr in der Readme vom Projekt.

Die Installation ist zur Zeit leider noch mit Mehraufwand verbunden, was in Zukunft aber vereinfacht werden soll.
Der Normalfall sieht vor, dass von eurem Client aus mittels Ansible-Scripts ein neuer Server bei Amazon EC2, Azure, DigitalOcean, Google Compute Engine, Linode und Rackspace angelegt und automatisch eingerichtet wird. Es gibt aber auch die Möglichkeit lokal vorzugehen. Ich beschreibe im folgenden, wie ich vorgegangen bin.

Ausgangslage ist bei mir ein Cloud-Server von Hetzner. Voraussetzung ist – leider noch – ein Ubuntu 16.04-Image. Als erstes sorgt dafür, dass euer Server mittels DNS erreichbar ist, damit ihr später im Verlauf der Installation ein Let´s Encrypt-Zertifikat beantragen könnt.
Bevor wir mit der Installation beginnen, muss – sofern noch nicht vorhanden – mittels ssh-keygen ein SSH-Key erstellt werden. Übernimmt einfach die vorgeschlagenen Standard-Pfade.

Als erstes müssen wir nun ein ein paar benötigte Pakete installieren sowie das Projekt von Github clonen:

apt updateapt-get install git python-pipgit clone https://github.com/StreisandEffect/streisand.git && cd streisand

Mittels folgenden Befehl wird der Installer für Ansible gestartet. Dieser prüft zunächst auf fehlende Pakete und wird euch diese auflisten. Installiert diese wie angegeben.

./util/venv-dependencies.sh ./venv

Anschließend ruft ihr den Befehl erneut auf um die Installation durchzuführen. Ist die Installation durchgelaufen aktiviert ihr mit folgendem Befehl die installierten Ansible-Pakete:

source ./venv/bin/activate

Ein Ausführen von ./streisand startet nun die Installation. Wählt im Installer nun den Punkt 7. localhost (Advanced) aus und bestätigt im weiteren Verlauf die Warnung, dass ggf. Konfigurationen überschrieben werden können.

Wenn ihr gefragt werdet, ob ihr Änderungen an den Standard-Einstellungen vornehmen möchtet, widersprecht ihr mit Eingabe von no.

Ebenfalls werdet ihr im Verlauf der Installation nach Hostnamen des Servers und eurer E-Mail-Adresse gefragt. Beides ist lediglich von Bedeutung, sofern ihr Let’s Encrypt nutzen wollt – was sich allerdings gerade bei solch einem Anwendungsfall empfiehlt.

alt

Die Installation wird mit einer Fehlermeldung erfolgreich beendet werden, was daran liegt, dass der Installer versucht euch die HTML-Datei mit dem Zugangsdaten anzuzeigen.
Kopiert euch von eurem System den Ordner generated-docs herunter. Dieser enthält Informationen zur Firewall und die erwähnten Zugangsdaten.

Streisand ist nun eingerichtet und bereit zur Benutzung. ?

Sofern jemand in der anfangs beschriebenen Situation ist und solch eine Installation benötigt, schreibt mir eine E-Mail und ich helfe gerne weiter!

Es gibt in der heutigen Zeit gute Gründe, über VPN, einen Proxy oder über TOR ins Netz zu gehen. Sei es das öffentliche W-Lan im Lieblingscafé oder aber wesentlich relevanter, ihr befindet euch in einem Land, in dem kein freies Internet vorhanden ist bzw. gewisse Inhalte blockiert werden.
Nicht jeder Mensch kann oder möchte sich damit herumschlagen, beispielsweise einen OpenVPN-Server oder Proxy-Server einzurichten. Oft fehlt auch einfach das technische Verständnis bzw. Kenntnis.

Streisand zeigt wie wundervoll OpenSource im Kampf gegen Unterdrückung und Zensur im Internet helfen kann. Mittels Streisand lassen sich in wenigen Minuten auf Wunsch unzählige Gateway-Server zum anonymen Zugriff einrichten, die euch folgende fertig konfigurierte Dinge bieten:

  • Passwortgeschützte Gateway-Seite mittels NGINX, erreichbar über SSL und Tor als Hidden service
  • Installation folgender Dienste: OpenSSH, OpenConnect / Cisco AnyConnect, OpenVPN, Shadowsocks, sslh, Stunnel, Tor, UFW, unattended-upgrades, WireGuard
  • Schritt-für-Schritt-Anleitungen zur Einrichtung der einzelnen Dienste
  • Sämtliche empfohlene Software wird gemirrored. Die Authentizität wird mittels Checksummen sichergestellt.
  • Alle genutzten Ports wurden so gewählt, dass Port-Blockierungen sich als schwierig erweisen. Als Beispiel verwendet OpenVPN Port 636, der auch von LDAP verwendet wird.

Eine deutlich umfangreichere Auflistung findet ihr in der Readme vom Projekt.

Die Installation ist zur Zeit leider noch mit Mehraufwand verbunden, was in Zukunft aber vereinfacht werden soll.
Der Normalfall sieht vor, dass von eurem Client aus mittels Ansible-Scripts ein neuer Server bei Amazon EC2, Azure, DigitalOcean, Google Compute Engine, Linode und Rackspace angelegt und automatisch eingerichtet wird. Es gibt aber auch die Möglichkeit lokal vorzugehen. Ich beschreibe im folgenden, wie ich vorgegangen bin.

Ausgangslage ist bei mir ein Cloud-Server von Hetzner. Voraussetzung ist – leider noch – ein Ubuntu 16.04-Image. Als erstes sorgt dafür, dass euer Server mittels DNS erreichbar ist, damit ihr später im Verlauf der Installation ein Let´s Encrypt-Zertifikat beantragen könnt.
Bevor wir mit der Installation beginnen, muss – sofern noch nicht vorhanden – mittels ssh-keygen ein SSH-Key erstellt werden. Übernimmt einfach die vorgeschlagenen Standard-Pfade.

Als erstes müssen wir nun ein ein paar benötigte Pakete installieren sowie das Projekt von Github clonen:

apt updateapt-get install git python-pipgit clone https://github.com/StreisandEffect/streisand.git && cd streisand

Mittels folgenden Befehl wird der Installer für Ansible gestartet. Dieser prüft zunächst auf fehlende Pakete und wird euch diese auflisten. Installiert diese wie angegeben.

./util/venv-dependencies.sh ./venv

Anschließend ruft ihr den Befehl erneut auf um die Installation durchzuführen. Ist die Installation durchgelaufen aktiviert ihr mit folgendem Befehl die installierten Ansible-Pakete:

source ./venv/bin/activate

Ein Ausführen von ./streisand startet nun die Installation. Wählt im Installer nun den Punkt 7. localhost (Advanced) aus und bestätigt im weiteren Verlauf die Warnung, dass ggf. Konfigurationen überschrieben werden können.

Wenn ihr gefragt werdet, ob ihr Änderungen an den Standard-Einstellungen vornehmen möchtet, widersprecht ihr mit Eingabe von no.

Ebenfalls werdet ihr im Verlauf der Installation nach Hostnamen des Servers und eurer E-Mail-Adresse gefragt. Beides ist lediglich von Bedeutung, sofern ihr Let’s Encrypt nutzen wollt – was sich allerdings gerade bei solch einem Anwendungsfall empfiehlt.

Die Installation wird mit einer Fehlermeldung erfolgreich beendet werden, was daran liegt, dass der Installer versucht euch die HTML-Datei mit dem Zugangsdaten anzuzeigen.
Kopiert euch von eurem System den Ordner generated-docs herunter. Dieser enthält Informationen zur Firewall und die erwähnten Zugangsdaten.

Streisand ist nun eingerichtet und bereit zur Benutzung. 🙂

Sofern jemand in der anfangs beschriebenen Situation ist und solch eine Installation benötigt, schreibt mir eine E-Mail und ich helfe gerne weiter!

Der Beitrag STREISAND – Automatisierter Gateway-Server zum anonymen surfen erschien zuerst auf timscha.io.

3. Juli 2018

Ubuntu ist überflüssig! Bedingt durch den eigenen Erfolg und mangels Ideen und Engagement braucht man es eigentlich nicht mehr. Die hohen Marktanteile im Linux-Segment beruhen auf der verbreiteten Gleichsetzung Linux=Ubuntu und sichern aktuell noch die Verbreitung. Sich darauf auszuruhen ist gefährlich, der Linux Mint-Hype hat gezeigt, dass sich Marktanteile schnell verschieben können.

So überflüssig Ubuntu heute ist, so wenig trifft dies auf die Vergangenheit zu. Als Ubuntu 2004 die erste Version herausbrachte war Linux auf dem Desktop ein Elend. Die Installationsroutinen der Distributionen waren kompliziert und anschließend war massive Nacharbeit durch den Anwender notwendig, bis alles einigermaßen lief. Proprietäre Treiber für Grafikkarten, WLAN-Adapter und ähnliches waren kompliziert zu installieren und hatten das Potenzial Updates und Upgrades zu einem Glücksspiel zu machen. Manuelle Konfiguration der wichtigen Config-Dateien war nicht optional sondern Grundvoraussetzung.

Die Bedeutung von Ubuntu kann man sehr gut ermessen, wenn man mal openSUSE 10.2 mit Ubuntu Dapper Drake - der ersten LTS-Version - vergleicht. Von vergleichbaren Debian-Versionen ganz zu schweigen, man hatte schließlich erst mit Etch im Jahr 2007 ein richtiges Installationsprogramm. Was die Einfachheit der Installation und die anschließende Einrichtung betrifft lagen zwischen Ubuntu und dem Rest des Linux-Ökosystems Welten.

Innovativ war nicht nur die deutlich vereinfachte Installationsroutine und die LiveCD, die einen Vorabtest der Hardwarekompatiblität ermöglichte, sondern auch die gute Vorkonfiguration des Desktops und die ausgesuchte Programmauswahl. Neu war zudem auch die Idee eines festgelegten Supportzeitraumes und die Ausdehnung eines Enterprise-Supports auf den Desktop, sowie dessen Verfügbarkeit für Privatanwender.

Ubuntu hatte immer zahlreiche Schwachpunkte. Das schlecht gepflegte Universe, die Abhängigkeit von Canonical, die teilweise intransparente Entscheidungsfindung durch Mark Shuttleworth, das schwierige Verhältnis zur Open Source-Community - um nur einige zu nennen. Demgegenüber standen aber immer die immensen Vorteile auf dem Desktop gegenüber den alten Distributionen, die erst angespornt durch den Konkurrenzdruck und das Vorbild Ubuntus ein wenig Feinschliff vornahmen.

Der Vergleich mit Dapper Drake zeigt aber bereits die Problematik. Nachdem man die - nennen wir sie mal - Kerninnovationen umgesetzt hatte konzentrierte man sich auf den Feinschliff. Neuheiten waren doch eher kleinerer Natur und beschränkten sich oft auf die Übernahme der aktuellen Entwicklungen der Open Source-Gemeinschaft. Dieser Idee blieb man im Grunde genommen auch treu, als man Unity aus der Taufe hob. Die Ubuntu-Entwickler glaubten zu dem Zeitpunkt nicht, dass die GNOME Shell in der Form ein Erfolg sein würde - vollkommen richtig, wie sich dann herausgestellt hat.

Nachdem man fast alle Eigenentwicklungen beerdigt hat, ist man mit 18.04 zur GNOME Shell zurück gekehrt. Lieblos hat man versucht das Ubuntu Design zu übertragen, aber alles wirkt zusammen geflickt und eine Aktualisierung der Designsprache an gegenwärtige Design-Ideale steht weiterhin aus. Irgendwie glaubt man einen Software-Store haben zu müssen, aber auch dieser ist lieblos und dysfunktional. Die schlechte Integration der Snaps setzt dem nur die Krone auf.

Die Ubuntu-Entwickler scheinen jede Vision für den Desktop verloren zu haben. Rein oberflächlich ignoriert man die Tendenzen der Gegenwart, indem beispielsweise Cloud keine Rolle spielt und die Integration mit Android nicht vorkommt - für beides gibt es vitale Communityprojekte. Früher hätte Ubuntu so etwas integriert und leicht verfügbar gemacht. Dabei geht es nicht nur um die Oberfläche, sondern auch um Erleichterungen für den Privatanwender. Ein Gebiet auf dem Ubuntu früher immer geglänzt hat. Ein weiteres Beispiel für eine solche Innovation hat openSUSE in der Vergangenheit mit der Btrfs-Snapper Kombination entwickelt und die Linux-Mint Macher sind nun mit Timeshift auf diesen Zug aufgesprungen. Die Erkenntnis dahinter ist, dass Updates scheitern können und der Privatanwender dann meist überfordert ist. Leicht rückabwickelbare Schnappschüsse sollen dann helfen.

Bei Ubuntu gibt es Neuerungen nur noch mit Hinblick auf den Serverbereich. Hier gab es eine neue Installationsroutine und mit ZFS ein Experiment mit Zukunftschancen.

Wozu braucht man Ubuntu noch auf dem Desktop? Nichts von dem gebotenen, bekommt der Anwender nicht auch bei z. B. Debian. Das liegt natürlich auch daran, dass Debian und andere - vergleichsweise alte - Distributionen aufgeholt haben was Nutzerfreundlichkeit & Co betrifft. Der Fluch eines Avantgardeprojektes besteht halt darin, dass man nicht nur innovativ gewesen sein, sondern fortwährend innovativ bleiben muss. Ubuntu ist heute ein genau so lieblos zusammen geschusterter Baukasten wie Debian - mit dem Unterschied, dass es ohne die von Debian geerbten Pakete nicht mal das wäre.

Ubuntu ist also überflüssig.


Bilder:

Einleitungs- und Beitragsbild von JESHOOTScom via pixabay / Lizenz: CC0 Creative Commons

"

1. Juli 2018

Mozilla hat Firefox 61 veröffentlicht. Auch Firefox 61 bringt wieder viele Neuerungen. Dieser Artikel fast die wichtigsten Neuerungen zusammen.

Download Mozilla Firefox 61.0 für Microsoft Windows, Apple macOS und Linux

Mehr Sicherheit für Firefox-Nutzer

Geschlossene Sicherheitslücken

Auch in Firefox 61 hat Mozilla wieder zahlreiche Sicherheitslücken geschlossen, worunter auch einige sind, welche von Mozilla als besonders kritisch eingestuft werden. Alleine aus Gründen der Sicherheit ist ein Update auf Firefox 61 daher für alle Nutzer dringend empfohlen.

TLS 1.3 standardmäßig aktiviert

Transport Layer Security (TLS), vielen besser bekannt unter dem alten Namen Secure Sockets Layer (SSL), bezeichnet ein Verschlüsselungsprotokoll für sichere Datenübertragung im Internet. Mit Firefox 61 ist der neueste Entwurf von TLS 1.3 nun für alle Nutzer stardmäßig aktiviert.

Keine FTP-Sub-Ressourcen auf HTTP(S)-Webseiten mehr

Firefox lädt nicht länger FTP-Sub-Ressourcen auf HTTP- oder HTTPS-Webseiten. Bei FTP handelt es sich um ein unsicheres Protokoll, dessen Verwendung im Browser als deprecated gilt und langfristig komplett entfernt werden wird.

Tipp: Eine neue Einstellung seit Firefox 60 erlaubt das vollständige Deaktivieren des FTP-Protokolls.

Mehr Geschwindigkeit für Firefox-Nutzer

Mit der Veröffentlichung von Firefox 57 im November 2017 hat Mozilla die Performance seines Browsers signifikant verbessert. Doch ruht sich Mozilla seit dem nicht aus und arbeitet kontinuierlich an weiteren Verbesserungen der Geschwindigkeit. Auch Firefox 61 bringt diesbezüglich wieder verschiedene Verbesserungen.

Retained Display Lists

Das Display List Building bezeichnet den Prozess, in welchem die Elemente wie Ränder, Hintergründe usw. gesammelt werden, welche auf dem Bildschirm angezeigt werden sollen und dann gemäß der CSS Painting-Regeln sortiert werden. Bislang musste die sogenannte Display List jedes Mal neu berechnet werden, wenn eine Änderung der Anzeige erfolgte. Dieser Vorgang kann langsam sein, insbesondere mit den immer komplexer werdenden Webseiten sowie den immer größeren Bildschirmen, welche von den Nutzern eingesetzt werden. Retained Display Lists ermöglichen es, dass nur die Teile neu berechnet werden müssen, die sich auch tatsächlich geändert haben. In einem Test konnte die Häufigkeit langsamer Ausführungen um 30 Prozent reduziert werden. Mit Firefox 61 beginnt Mozilla mit der Auslieferung der Verbesserung, zunächst für einen Teil der Nutzer und im Laufe der kommenden Wochen schließlich für alle Nutzer.

Paralleles CSS-Parsing

Mit Firefox 57 hat Mozilla Quantum CSS, auch Stylo genannt, eingeführt. Dabei handelt es sich um eine in Rust geschriebene CSS-Engine aus Mozillas Forschungsprojekt Servo. Stylo nutzt für die Verarbeitung von CSS mehrere Prozessorkerne – etwas, was bislang keine andere Browser-Engine auf dem Markt kann. Mit Firefox 61 hat Mozilla nun auch den Parsing-Schritt parallelisiert.

Windows, Linux: Schnelleres Wechseln von Tabs

Auch die Geschwindigkeit des Tab-Wechsels wurde durch sogenanntes Tab Warming verbessert, in Firefox 61 zunächst für Nutzer von Windows und Linux. Das „Aufwärmen“ verbessert durch Vorbereitungen die gefühlte Performance , wenn der Benutzer die Maus über einen Tab bewegt und damit ein wahrscheinliches Interesse signalisiert, diesen Tab öffnen zu wollen.

Auf Apple macOS gibt es noch Probleme mit der Implementierung, weswegen eine Aktivierung dieser Verbesserung zurückgehalten wird, bis auch hier die Qualität stimmt.

Apple macOS: WebExtensions in einem eigenen Prozess

Die Multiprozess-Architektur von Firefox verbessert Stabilität, Reaktionsfreudigkeit sowie Sicherheit von Firefox, indem Browser und Content in separaten Prozessen ausgeführt werden. Neben dem Browser- und mehreren Content-Prozessen gibt es auch noch eigene Prozesse unter anderem für den Zugriff auf lokale Dateien oder für die Grafikkarte.

Nachdem auf Windows bereits seit Firefox 56 auch WebExtensions in einem eigenen Prozess ausgeführt werden, trifft dies nun auch auf Apple macOS zu. Auf Linux ist der zusätzliche WebExtension-Prozess derzeit für Firefox 63 geplant.

Sonstige Performance-Verbesserungen

Verbessert wurde auch die gefühlte Geschwindigkeit des Wechsels zwischen zwei Themes. Für minimale Performance-Verbesserungen auf Windows sorgt außerdem ein Update des Compilers auf Visual Studio 2017 15.6. Auch die Geschwindigkeit der WebExtensions-API, um einen bestimmten Tab auszuwählen, konnte verbessert werden. In einem Test zur Auswahl des aktiven Tabs mit knapp 1.900 offenen Tabs konnte hier die Zeit von ca. 4.000ms auf 370ms reduziert werden. Auch die Performance des CSS-Standards Flexbox konnte signifikant verbessert werden. Ein Extremfall einer Webseite, die zuvor in 185 Sekunden noch immer nicht geladen war, lädt nun in weniger als zehn Sekunden. Weiterhin konnte die CPU-Auslastung unter bestimmten Bedingungen reduziert werden.

Einfacher gemacht: Neue Suchmaschinen hinzufügen

Firefox wird bereits mit einigen Suchmaschinen standardmäßig ausgeliefert. Viele Webseiten, darunter auch dieser Blog, liefern eigene Suchfunktionen aus, welche vom Benutzer zu Firefox hinzugefügt werden können. Während Nutzer mit separater Suchleiste über diese bereits in der Vergangenheit Suchmaschinen hinzufügen konnten, besteht diese Möglichkeit ab sofort auch für Nutzer ohne separate Suchleiste. Eine entsprechende Option befindet sich in dem Menü mit den drei Punkten in der Adressleiste.

Firefox 61

Tipp: Wer diesen Menüeintrag per Kontextmenü zur Adressleiste hinzufügt, sieht auch ohne Auswahl dieses Menüs immer sofort in der Adressleiste, wenn eine Webseite eine eigene Suchmaschine anbietet.

Apple macOS: Einfacheres Teilen von Webseiten

Wer Apple macOS als Betriebssystem einsetzt, kann nun das Symbol mit den drei Punkten in der Adressleiste klicken und erhält darüber Zugriff auf eine Teilen-Funktion, welche es erlaubt, die aktuelle Seite über andere Dienste wie Facebook, Twitter, Messages, E-Mail, AirDrop oder weitere zu teilen. Dazu bedient sich Firefox an der entsprechenden Sharing-Schnittstelle, welche das Apple-Betriebssystem bereitstellt. Anwendungen, welche sich in das native Sharing von macOS integrieren, steht damit automatisch über dieses Menü in Firefox zur Verfügung.

Firefox 61

Dunkles Theme wird vollständig dunkel

Firefox wird im Standard-Auslieferungszustand neben seinem Standard-Design auch noch mit einem alternativen hellen sowie dunklen Theme ausgeliefert. Das dunkle Theme wird mit Firefox 61 vollständig dunkel. Das heißt, dass nicht länger nur die Tab- und Symbolleisten einschließlich der Symbole dunkel gefärbt werden, sondern auch die Adressleisten-Vorschläge, die Seite, welche beim Öffnen eines neuen Tabs erscheint, das Hauptmenü, sämtliche Panels von Firefox sowie die Seite zum Anpassen der Firefox-Oberfläche.

Firefox 61

Verbesserte Firefox-Startseite / neuer Tab

Neue Einstellungsoberfläche

Die Einstellungen zum Anpassen der Firefox-Startseite, welche standardmäßig auch beim Öffnen eines neuen Tabs erscheint, wurden in die Haupt-Einstellungsoberfläche von Firefox verschoben. Dort gibt es nun einen eigenen Reiter für die Firefox-Startseite.

Auch lässt sich in den neuen Einstellungen das Verhalten für die Startseite und die Seite, die beim Öffnen eines neuen Tabs erscheint, separat, aber an einem gemeinsamen Ort konfigurieren. Auch die Auswahl einer komplett leeren Seite, also auch ohne Zahnrad-Symbol für das Öffnen der Einstellungen, als neuer Tab ist hierüber nun möglich, ohne eine Einstellung in about:config ändern oder eine Erweiterung installieren zu müssen.

Firefox 61

Entsprechend wurde der Abschnitt zur Konfiguration der Startseite aus dem Bereich „Allgemein“ entfernt, wo sich jetzt die Option befindet, beim Start von Firefox die vorherige Browser-Sitzung wiederherzustellen. Dies war vorher in die Startseiten-Einstellung integriert.

Firefox 61

Der Bereich „Überblick“ auf der Firefox-Startseite beinhaltet eine Auswahl von Webseiten, welche kürzlich besucht oder als Lesezeichen gespeichert worden sind. Seit Firefox 60 werden hier auch Webseiten angezeigt, die der Nutzer über die entsprechende Schaltfläche in Firefox bei Pocket abgelegt hat, einem Online-Dienst von Mozilla. Mit Firefox 61 kommen heruntergeladene Dateien als weitere Kategorie dazu. Alle diese Kategorien können nun einzeln aktiviert respektive deaktiviert werden, womit der Nutzer noch mehr Kontrolle als eh schon über die Firefox-Startseite hat.

Tracking-Schutz für Vorschaubilder

Die Vorschaubilder, welche Firefox für die Firefox-Startseite generiert, holt sich Firefox nun grundsätzlich mit aktiviertem Tracking-Schutz, unabhängig davon, ob dieser für das allgemeine Surfen aktiviert ist oder nicht. Neben einer verbesserten Privatsphäre resultiert dies in einer verbesserten Geschwindigkeit für die Generierung der Bilder und für manche Seiten außerdem in besseren Vorschaubildern.

Individuelle Vorschaubilder

Wem auf der Firefox-Startseite im Abschnitt „Wichtige Seiten“ die Vorschaubilder nicht zusagen, kann ab Firefox 61 ganz einfach sein eigenes Bild festlegen.

Firefox 61

Verbesserte Synchronisation von Lesezeichen

Die Sychronisation von Lesezeichen ist einer der komplexesten und wichtigsten Teile der Firefox-Synchronisation, darum hat sich Mozilla in den vergangenen zwei Jahren intensiv mit der Lesezeichen-Synchronisation beschäftigt. Nachdem Mozilla die Synchronisation für die iOS-Version von Firefox komplett neu entwickelt hatte, erhält das dort bewährte Konzept zur Synchronisation nun auch in abgewandelter Form Einzug im Desktop-Firefox. Wer sich für die technischen Details interessiert, findet auf dem Mozilla-Blog eine ausführliche Beschreibung zur Funktionsweise. Durch die verbesserte Lesezeichen-Synchronisation sollen Probleme, von denen manche Nutzer in der Vergangenheit betroffen waren, wie verlorene Lesezeichen, doppelte Lesezeichen oder eine geänderte Lesezeichen-Reihenfolge, der Vergangenheit angehören. Diese Änderung wird schrittweise zunächst nur für einen Teil der Firefox-Nutzer eingeführt.

Verbesserungen für Entwickler von Firefox-Erweiterungen

Natürlich gab es auch für Entwickler von WebExtensions wieder einige neue APIs und Verbesserungen bestehender APIs. Eine Neuerung mit viel Potential für Tab- und Tab-Gruppen-Erweiterungen ist die Möglichkeit, Tabs zu verstecken. Sobald eine Erweiterung Tabs versteckt, bleiben versteckte Tabs weiterhin über das Pfeil-Symbol in der Tab-Leiste zugänglich. Spielt ein versteckter Tab Audio ab, erscheint ein Lautsprecher-Symbol auf dem Pfeil-Symbol.

Hat der Nutzer eine Erweiterung installiert, welche die Startseite von Firefox überschreibt, zeigt Firefox bei der ersten Benutzung nun einen Hinweis an, dass die Startseite überschrieben wird und durch welche Erweiterung. Ähnliches macht Firefox bereits, wenn die Seite überschrieben wird, die beim Öffnen eines neuen Tabs erscheint.

Firefox 61

Mit Firefox 61 werden auch Wörterbücher als WebExtensions unterstützt. Es wurden noch viele weitere Neuerungen für WebExtension-Entwickler implementiert. Diese alle aufzuzählen, würde einen ganz eigenen Artikel füllen, daher sei an dieser Stelle auf den offiziellen Mozilla-Blog verwiesen, wo sämtliche Neuerungen für WebExtension-Entwickler aufgelistet werden.

Verbesserungen der Webplattform

Natürlich gibt es auch bezüglich Webstandards wie immer auch in Firefox 61 Neuerungen.

Die Unterstützung der nicht standardisierten @-moz-document-Regel wurde für Webseiten entfernt, aus Gründen der Web-Kompatibilität außer in Form eines leeren url-prefix()-Wertes.

Weitere Informationen zu Änderungen für Webentwickler in Firefox 61 finden sich in den MDN web docs.

Neuerungen für Webentwickler

Reihenfolge der Entwickler-Werkzeuge kann geändert werden

Was die Reihenfolge der Entwickler-Werkzeuge betrifft, so hat jeder Entwickler seine eigenen Vorlieben. Werkzeuge, die man häufiger benötigt, will man dabei wahrscheinlich mit so kurzen Wegen wie nur möglich erreichen. Mit Firefox 61 wird Mozilla diesem Anspruch gerecht. Dann nämlich ist es möglich, die Reihenfolge der Entwickler-Werkzeuge beliebig per Drag and Drop zu ändern.

Tipp: Firefox besitzt noch einige Entwickler-Werkzeuge mehr als nur diejenigen, welche standardmäßig sichtbar sind. Wer bei geöffneten Entwickler-Werkzeugen die Taste F1 drückt (oder auch über das Menü-Symbol auf der rechten Seite), gelangt in die Einstellungen der Entwickler-Werkzeuge, wo weitere Werkzeuge aktiviert oder auch standardmäßig angezeigte Werkzeuge deaktiviert werden können.

Neue Browser-Konsole

Nachdem die Web-Konsole bereits in Firefox 57 ein komplett neues Frontend erhalten hat, welches nicht länger auf Mozillas proprietärem XUL-Standard basiert, sondern mit Webtechnologie umgesetzt worden ist, wird das neue Konsolen-Frontend nun auch für die Browser-Konsole verwendet.

Neues Werkzeug für Barrierefreiheit

In den Einstellungen der Entwickler-Werkzeuge kann ein neues Werkzeug für Barrierefreiheit aktiviert werden. Weitere Details dazu gibt es hier.

Firefox 61

Sonstige Neuerungen für Webentwickler

Für die Entwickler-Werkzeuge konnte bisher eines von drei Themes ausgewählt werden: ein helles Theme, ein dunkles und ein Firebug-Theme. Dieses war an das Design der früher weit verbreiteten Firebug-Erweiterung angelehnt. Nachdem die Übergangsphase, in der sich frühere Firebug-Nutzer an die Firefox-Werkzeuge gewöhnt haben, mittlerweile als vorbei bezeichnet werden kann, wurde das Firebug-Theme nun aus Firefox entfernt.

Im Inspektor-Werkzeug gab es die grafische Präsentation des Box-Modells bisher sowohl im „Berechnet“- als auch im „Layout“-Panel. Aus ersterem wurde das Box-Modell nun entfernt, so dass diese Funktion nicht mehr doppelt ist. Auch wurde die Darstellung des Box-Modells optisch überarbeitet.

Auf der rechten Seite der Tab-Leiste der Entwickler-Werkzeuge gibt es nun deutlich weniger Symbole. Dafür gibt es dort ein neues Menü-Symbol mit drei Punkten, worüber sich die bisher dort zu findenden Optionen auswählen lassen. Zum einen wirkt die Oberfläche dadurch aufgeräumter, zum anderen sind die Funktionen klarer, weil nun Text anstelle von Symbolen verwendet wird.

Firefox 61

Im Netzwerk-Panel gibt es nun die Möglichkeit, langsame Internet-Verbindungen zu simulieren. Dieses Feature war bisher nur über den Responsive Design Modus zugänglich. Auch die Möglichkeit, HAR-Archive zu importieren und zu exportieren, findet sich nun hier.

Für Ressourcen, die aus dem Cache geladen werden, gibt es jetzt einen eigenen Cache-Reiter mit Informationen zu den Caching-Eigenschaften der jeweiligen Ressource.

Firefox 61

Der Debugger von Firefox 61 besitzt nun ein Verständnis von Babel und Webpack, was es möglich macht, mit dem Original-Code im Debugger zu interagieren, so als wären die Script-Dateien nicht zusammengefügt und minimiert worden.

Video auf YouTube ansehen

Optionale Features

Einstellung zum Schließen von Tabs per Doppelklick

Tabs in Firefox können entweder per Tastatur (Strg + W; macOS: Cmd + W) geschlossen werden oder über die Schließen-Schaltfläche im Tab. Ab Firefox 61 kommt für aktive Tabs eine weitere Option dazu: wird zunächst über about:config der Schalter browser.tabs.closeTabByDblclick durch einen Doppelklick auf true geschaltet, lassen sich aktive Tabs auch durch einen Doppelklick schließen.

Sonstige Neuerungen von Firefox 61

Soll auf Windows bei Ausführung des sogenannten Stub Installers der Installationsvorgang von Firefox abgebrochen werden, bietet der Installer jetzt die Option an, die Installation fortzusetzen. Durch eine Verbesserung der Kompression konnte die Größe von Firefox-Updates minimal reduziert werden.

Firefox wird seit Version 50 mit EmojiOne ausgeliefert, damit Emojis auch in alten Windows-Versionen und auf Linux dargestellt werden können, wo die Emoji-Unterstüzung mangelhaft ist. Nachdem die neuste Version von EmojiOne unter einer anderen Lizenz steht, die nicht kompatibel mit den Anforderungen von Mozilla ist, wurde EmojiOne durch die freie Emoji-Font Twemoji von Twitter ersetzt.

In Firefox 56 hatte Mozilla eine versteckte Funktion zur Sitzungswiederherstellung implementiert. War eine entsprechende Einstellung in about:config gesetzt und Firefox so konfiguriert, dass er bei Start nicht automatisch die Tabs wiederherstellt, wurde beim Start in der Tab-Leiste eine Schaltfläche zur Sitzungswiederherstellung hinzugefügt. Nachdem Mozilla damit experimentiert und derzeit keine Pläne hat, das Konzept weiterzuverfolgen, wurde diese versteckte Funktion wieder entfernt. Entfernt wurde auch die Möglichkeit, Java-Archive (JAR) zu öffnen. Diese Möglichkeit war bereits seit Firefox 55 standardmäßig deaktiviert.

Es wurde eine neue Möglichkeit implementiert, den Browser schnell neu zu starten: Strg + Shift + J (zum Öffnen der Browser-Konsole) und anschließend Strg + Alt + R.

Randnotiz: mein erster Beitrag zum Firefox-Code

Eine kleine Randnotiz: Firefox 61 ist die erste Firefox-Version, zu welcher auch ich Code beigetragen habe. Genauer gesagt habe ich eine WebExtension-Schnittstelle hinzugefügt, um Webseiten zu zwingen, die System-Schriftarten zu verwenden statt die Schriftarten, welche die Webseite vorgibt.

Der Beitrag Mozilla veröffentlicht Firefox 61 – die Neuerungen erschien zuerst auf soeren-hentzschel.at.

29. Juni 2018

Ich nutze Android8 und habe festgestellt, dass ich mir im Congstar Mobilnetz eine IPv6-Adresse geben kann. Hierzu gehe ich in den Einstelungen zu VERBINDUNGEN - MOBILE NETZWERKE - ZUGANGSPUNKTE - und wähle “hinzufügen”. Folgende Felder habe ich eingeragen: Name: T-Mobile Internet APN: internet.t-mobile Benutzername: telekom (oder congstar eintragen) Kennwort: tm (oder cs eintragen, wenn als Benutzer congstar gewählt wurde) MCC: 262 MNC: 01 Authentifizierung: CHAP APN-Typ: default,supl,mms APN-Protokoll IPv4/IPv6 Alles andere habe ich nicht angegeben/so belassen.

Ich nutze Android8 und habe festgestellt, dass ich mir im Congstar Mobilnetz eine IPv6-Adresse geben kann.
Hierzu gehe ich in den Einstelungen zu VERBINDUNGEN – MOBILE NETZWERKE – ZUGANGSPUNKTE – und wähle „hinzufügen“.

Folgende Felder habe ich eingeragen:

Name: T-Mobile Internet
APN: internet.t-mobile
Benutzername: telekom (oder congstar eintragen)
Kennwort: tm (oder cs eintragen, wenn als Benutzer congstar gewählt wurde)
MCC: 262
MNC: 01
Authentifizierung: CHAP
APN-Typ: default,supl,mms
APN-Protokoll IPv4/IPv6

Alles andere habe ich nicht angegeben/so belassen.

Jetzt noch speichern, und ich kann den neuen ANP auswählen.
Und zack, hat mein Handy eine gültige globale IPv6 Adresse.
Diese sieht man zB unter Einstelungen, Telefoninfo, Status.

share this
Achtung

Dieser Beitrag ist schon sehr alt, und die Infos hier sind sicherlich hoffnungslos veraltet…

Ich nutze Android8 und habe festgestellt, dass ich mir im Congstar Mobilnetz eine IPv6-Adresse geben kann. Hierzu gehe ich in den Einstelungen zu VERBINDUNGEN - MOBILE NETZWERKE - ZUGANGSPUNKTE - und wähle “hinzufügen”.

Folgende Felder habe ich eingeragen:

Name: T-Mobile Internet
APN: internet.t-mobile
Benutzername: telekom (oder congstar eintragen)
Kennwort: tm (oder cs eintragen, wenn als Benutzer congstar gewählt wurde)
MCC: 262
MNC: 01
Authentifizierung: CHAP
APN-Typ: default,supl,mms
APN-Protokoll IPv4/IPv6

Alles andere habe ich nicht angegeben/so belassen.

Jetzt noch speichern, und ich kann den neuen ANP auswählen. Und zack, hat mein Handy eine gültige globale IPv6 Adresse. Diese sieht man zB unter Einstelungen, Telefoninfo, Status.

25. Juni 2018

Mozilla hat heute sein neues Sicherheits-Tool Firefox Monitor angekündigt. Dabei handelt es sich um einen Dienst, welcher Nutzer überprüfen lässt, ob diese in der Vergangenheit von einem Datendiebstahl betroffen waren.

Nutzer haben häufig Benutzerkonten auf zahlreichen Webseiten. Die Zahl der Daten-Diebstähle, das heißt, dass jemand Unbefugtes Zugriff auf persönliche Daten und Passwörter erlangt, nimmt dabei immer mehr zu. Mozilla hat eine Partnerschaft mit HaveIBeenPwned.com abgeschlossen und wird in Kürze den Dienst Firefox Monitor starten. Durch die Eingabe der E-Mail-Adresse kann jeder überprüfen, ob seine E-Mail-Adresse und damit verbunden meist auch andere Daten Teil eines bekannten Datendiebstahls in der Vergangenheit ist. Firefox Monitor listet Details zu den betroffenen Diensten auf und spricht außerdem Empfehlungen aus, was im Falle eines Datendiebstahls unternommen werden sollte.

Firefox Monitor

Mozilla möchte dem Nutzer auch die Möglichkeit geben, informiert zu werden, wenn es in Zukunft zu einem Datendiebstahl kommt, von dem der Nutzer betroffen ist. Außerdem arbeitet Mozilla an einer Erweiterung für Firefox, welche den Nutzer warnt, wenn er eine Seite besucht, die in der Vergangenheit Opfer eines Datendiebstahls worden ist.

Firefox Monitor Add-on

Mozilla wird in der kommenden Woche damit starten, ca. 250.000 Nutzer, vor allem aus den USA, zu einem Test von Firefox Monitor einzuladen. Basierend auf dem Feedback wird Mozilla seinen Dienst weiter verbessern und schließlich allen Nutzern zugänglich machen.

Der Beitrag Mozilla kündigt neues Sicherheits-Tool Firefox Monitor an erschien zuerst auf soeren-hentzschel.at.

Anonymisierte Telemetrie-Daten sind eine wichtige Entscheidungsgrundlage für die Entwicklung und kein unmittelbarer Eingriff in die Privatsphäre der Anwender. Man sollte nicht zu vorschnell urteilen (siehe auch: Kommentar: Datenerhebung durch Linux-Distributionen) und vor allem nicht die Erhebung von anonymen Telemetrie-Daten mit der hemmungslosen personalisierten Datenauswertung vieler IT-Konzerne vermischen.

Eine erste Auswertung der Daten, die mittels der Erhebung in Ubuntu LTS 18.04 gesammelten wurden, illustriert die Notwendigkeit sehr deutlich.

Entwickler neigen beispielsweise immer dazu die Hardwareleistung zu überschätzen. Mutmaßlich weil viele Entwickler potentere und neuere Hardware ihr Eigen nennen. Die Datenerhebung zeigt sehr deutlich, dass der typische Linux-Nutzer Hardware verwendet, die kaum ein Entwickler noch berücksichtigt. Direkt nach einer Full-HD Auflösung kommt so die klassische Notebook-Auflösung mit 1366x768 Pixel. Die von den Desktopentwicklern gehypte HiDPI-Varianten spielen keine nennenswerte Rolle. So mancher Desktopentwickler sollte sich diese Daten mal genau anschauen. Das gleiche gilt für den vorhandenen Arbeitsspeicher. Hier dominieren 4 und 8 GB, aber auch 2 GB sind noch oft vorhanden.

Andere Probleme, die in Kommentarspalten und Supportforen viel Raum einnehmen, scheinen nur eine Minderheit der Anwender zu betreffen. So beispielsweise duale Grafikkarten-Lösungen wie NVIDIA Optimus.

Richtige Museumshardware mit weniger als 1 GB Arbeitsspeicher scheint jedoch keine größere Rolle mehr zu spielen. Die zukünftig geplante Aufschlüsselung nach CPU-Kernen dürfte hier noch interessant werden.

Es dürfte der Linux-Entwicklung gut tun, hier mal eine größere Datenbasis zu erhalten. Die schweigende Masse erhält hier indirekt eine Stimme über die nörgelnden Nutzer von Spezialhardware.

Schön wäre ein transparenter Zugriff auf die Daten für alle Interessenten und nicht nur ein gefilterter Bericht als Blogpost.


Bilder: 

Einleitungsbild und Beitragsbild von von geralt via pixabay / Lizenz: CC0 Public Domain

Es gibt zahlreiche Verschlüsselungslösungen für unterschiedliche Betriebssysteme. Manche sind nur für bestimmte Systeme verfügbar, andere haben sich auf spezielle Einsatzzwecke spezialisiert und wieder andere sind so genannte Universallösungen. Eine Übersicht gibt es hier: Verschlüsselung - Eine Übersicht

Einsteiger im Bereich der Verschlüsselung stehen aber bereits am Anfang vor dem fast unlösbaren Problem: Was soll man denn nun verwenden?

Im folgenden werden daher einige grundsätzliche Überlegungen angestellt, die bei der Auswahl der richtigen Lösungen helfen sollen.

Sicherheit

Die verbreiteten Lösungen gelten ausnahmslos als sicher, keine der Lösungen ist erwiesenermaßen gebrochen. Bisher gibt es aber lediglich zu TrueCrypt und VeraCrypt unabhängige Überprüfungen der Sicherheit. Solche Audits fehlen sowohl für die Open Source-Lösungen LUKS/dm-crypt und eCryptFS, als auch für die proprietären Lösungen FileFault von Apple und BitLocker von Microsoft.

Der ewige Konflikt um proprietär vs. quelloffen ist somit vollkommen irrelevant, da eine quelloffene Lösung ohne Überprüfung letztlich auch nicht transparenter ist, als nicht einsehbarer Quellcode. Vor allem bei so komplexen Bereichen wie Verschlüsselung dürfte kein Hobby-Entwickler den Quellcode von LUKS/dm-crypt vollumfänglich prüfen können.

Wenn man also eine nachvollziehbare Sicherheitsüberprüfung zur Entscheidungsgrundlage erklärt, bleibt nur VeraCrypt übrig.

Einsatzzwecke

Betriebssystemverschlüsselung

Die verbreitete Unterstützung von AES-NI-Erweiterungen in Intel- und AMD-Prozessoren hat die Vollverschlüsselung von Betriebssystemen extrem vereinfacht. Früher verschlüsselte man lediglich sensible Bereiche wie z. B. die Nutzerdaten, da eine Verschlüsselung das System erhebliche verlangsamen konnte. Dies ist nun nicht mehr der Fall, weshalb eine Vollverschlüsselung immer zu empfehlen ist. Man umgeht dadurch das Risiko, dass sensible Daten versehentlich in unverschlüsselten Bereichen abgelegt werden.

Bei der Verschlüsselung des gesamten Betriebssystems ist die Interoperabilität, d. h. die systemübergreifende Verfügbarkeit, von nachrangiger Bedeutung. Es empfiehlt sich daher in der Regel die native Verschlüsselungslösung zu verwenden. Diese ist meist am besten integriert und auf Fehler getestet, während unabhängige Lösungen wie VeraCrypt mit modernen Systemen wie UEFI und Secure Boot immer noch Probleme haben.

Dies bedeutet für Windows den Rückgriff auf BitLocker und macOS auf FileVault. Bei Linux eignet sich gegenwärtig vor allem ein LVM-Container mit LUKS/dm-crypt. Hier existieren zwar auch alternative Lösungen für die native Verschlüsselung von ext4 oder eCryptFS. Die Entwicklung von letzterem ist jedoch ungewiss und ersteres wird momentan von keiner Desktop-Distribution unterstützt.

Externe Speichermedien

Externe Speichermedien wie USB-Sticks oder externe Festplatten sind in ein vollumfängliches Verschlüsselungskonzept einzubeziehen. Je nach Betriebssystemlandschaft muss man hier unterschiedliche Kriterien beachten. Sofern man eine vollkommen homogenes Ökosystem, beispielsweise mit ausschließlich Linux-Systemen, einsetzt kann man auch die dafür verfügbare native Lösung verwenden. Sowohl LUKS/dm-crypt, als auch BitLocker und FileVault unterstützen die Verschlüsselung externer Speichermedien.

Die meisten Anwender besitzen jedoch heterogene Systemlandschaften, weshalb hier VeraCrypt seine Stärke ausspielen kann. Dieses ist nämlich für alle großen und nicht so großen Betriebssysteme verfügbar. Neben Windows, macOS und Linux eben auch FreeBSD. Dies ist ein unschlagbarer Vorteil, der insbesondere bei USB-Sticks, die ja oft dem Datenaustausch dienen, interessant ist.

Cloud

Nur sehr wenige Anbieter unterstützen clientseitige Verschlüsselung. Darunter versteht man ein Verschlüsselungsverfahren auf dem Endgerät, bei dem nur die verschlüsselten Dateien in die Cloud hochgeladen und auf anderen Endgeräten wieder entschlüsselt werden. Bei den meisten Anbietern ist lediglich der Transportweg verschlüsselt, während die Datei beim Cloud-Dienstleister unverschlüsselt und ungesichert liegt.

Container-basierte Verfahren wie die oben genannten Verschlüsselungsmechanismen sind für Cloud-Verschlüsselung meist ungeeignet. Nur wenige Anbieter unterstützen den so genannten Delta-Sync, bei dem lediglich die geänderten Teile einer Datei hochgeladen werden. Die meisten Anbieter laden den kompletten Container neu hoch, was unter Umständen mehrere GB sein können.

Daher benötigt man für die Cloud-Verschlüsselung eine Lösung, die dateibasiert arbeitet. EncFS gilt inzwischen als gebrochen, freie Alternativen wie CryFS sind noch nicht stabil genug. Bisher gibt es lediglich die komplett oder zumindest teilweise proprietären Lösungen Boxcryptor und Cryptomator. Nutzer mit einem reinen Apple-Ökosystem können zudem einen Blick auf SimpleumSafe werfen.

Sinnvolle Cloudverschlüsselung hängt vor allem vom konkreten Einsatzszenario und dem Betriebssystemumfeld ab. Fast keine Lösung funktioniert gleichermaßen mit allen Betriebssystemen und die Mechanismen der Verschlüsselung unterminieren einige Anwendungsfälle, weshalb hier individuell geprüft werden muss.

Einzelne Dateien

Manchmal möchte man auch nur einzelne Dateien verschlüsseln. Hier eignet sich sehr gut die OpenPGP-Implementierung GnuPG, sofern diese auf dem System eingerichtet ist. Hier lassen sich Dateien entweder mit dem eigenen öffentlichen Schlüssel sichern, wodurch bei der Entschlüsselung eine Passwortabfrage erfolgt. Ist das Ziel die Weitergabe an eine andere Person muss dessen öffentlicher Schlüssel vorliegen. LibreOffice unterstützt dieses Verfahren inzwischen auch direkt.

Verfügt man über keine GnuPG Installation oder kennt nicht den öffentlichen Schlüssel der Zielperson kann man auch ein passwortgeschütztes Archiv erstellen. Die meisten Lösungen untersützen AES-256 Verschlüsselung und sind somit lediglich sicher.

Zusammenfassung

Betriebssysteme sollten mit den nativen Verschlüsselungsmethoden gesichert werden. Keine von diesen ist gebrochen und VeraCrypt arbeitet auf UEFI-Systemen nicht zuverlässig genug.

Bei externen Speichermedien macht es jedoch - abhängig vom eigenen Nutzungsszenario - Sinn auf VeraCrypt zu setzen, da dieses für jedes Betriebssystem zur Verfügung steht und man sich nicht auf ein Ökosystem festlegt.

Cloudlösungen sind eine eigene Kategorie, da Container-basierte Verschlüsselung bei den meisten Anbietern nicht effizient genug arbeitet. Die Platzhirsche sind hier Cryptomator und Boxcryptor. Beide sind nicht komplett kostenlos, sondern der Preis hängt ab von der Nutzung auf mobilen Endgeräten und der Anzahl der Geräte. Sofern man experimentierfreudig ist kann man auch Individuellösungen wie CryFS/Plasma Vault oder SimpleumSafe ausprobieren.

Eine vollständige Datenverschlüsselung über unterschiedliche Geräte, Speichermedien und Netzspeicher hinweg, führt also meist zu einer vielfältigen Auswahl an Verschlüsselungslösungen.


Bilder:

Einleitungs- und Beitragsbild von Tumisu via pixabay / Lizenz: CC0 Creative Commons

"

24. Juni 2018

Die verbreitete Verschlüsselungslösung TrueCrypt wurde in einer aufsehenerregenden Aktion 2014 eingestellt. Infolgedessen etablierten sich eine Reihe von Forks, unter denen VeraCrypt heute die populärste Lösung sein dürfte. Sehr viele Anwender nutzen aber immer noch die originale TrueCrypt-Lösung in Version 7.1a.

Neben grundsätzlichen Bedenken gegen neue Lösungen in diesem sicherheitsensiblen Bereich, dürfte dies auch daran liegen, dass neue VeraCrypt Container inkompatibel mit der alten TrueCrypt-Lösung sind (VeraCrypt kann aber durchaus auch alte TrueCrypt Container verarbeiten) und ein Wechsel somit auf allen Systemen erfolgen muss, die auf den Container zugreifen können sollen. Man verweist in dem Zusammenhang gerne auf den Audit von 2015, bei dem keine schwerwiegenden Lücken gefunden wurden.

Das ist aber nicht mehr zeitgemäß, da seitdem zahlreiche Sicherheitslücken gefunden wurden. Googles Projekt Zero hatte bereits 2015 sicherheitsrelevante Lücken unter den Nummern CVE-2015-7358 und CVE-2015-7359 veröffentlicht. Beide sind in VeraCrypt bereits behoben, in der eingestellten letzten TrueCrypt-Version natugemäß nicht.

Bei einem Audit von VeraCrypt nahm nochmal den vorangegangenen Audit unter die Lupe und vor allem die neu hinzugefügten Bestandteile. Hier fand man einige Lücken, was zur Kritik an VeraCrypt führte und manche in ihrem Festhalten an TrueCrypt bestätigte. Diese Lücken können jedoch behoben werden, da VeraCrypt aktiv entwickelt wird. Problematisch sind hier insbesondere enthaltene Bibliotheken wie beispielsweise zlib, die in der Vergangenheit schwere Sicherheitslücken aufwiesen. TrueCrypt ist auf uralte Versionen oder sogar dubiose Forks festgenagelt, da die Macher die Software bereits in den Jahren vor der ihrer Einstellung nur noch schleppend entwickelten. Diese Bibliotheken von Dritten sind sowieso ein großes Problem, da hier faktisch separate Audits notwendig sind um die Sicherheit zu gewährleisten.

Teilweise konnte man bei VeraCrypt unproblematische Fehler nicht schließen, um die Kompatibilität zu TrueCrypt nicht zu verlieren. Hier wird die verbreitete Nutzung des originalen TrueCrypt zum Risiko für alle anderen Anwender.

Zusammengefasst: Ersetzt endlich TrueCrypt durch einen Nachfolger. VeraCrypt dürfte hier die Lösung der Wahl sein.


Bilder:

Einleitungs- und Beitragsbild von Tumisu via pixabay / Lizenz: CC0 Creative Commons

"

23. Juni 2018

Linux erfindet sich gerade neu. Nicht optisch oder durch große strukturelle Änderungen am Desktop, sondern unter der Oberfläche. Erst kam systemd, nun schränken viele Distributionen den Root-Zugriff massiv ein und setzen stattdessen auf PolicyKit und langsam aber sicher löst Wayland das alte X11 ab. Besonders sichtbar sind zudem die neuen Formate für Apps, die den klassischen Dualismus aus RPM und DEB durcheinander bringen.

Besonders chaotisch verläuft dieser Prozess bei Ubuntu. Nachdem Canonical letztes Jahr seine Eigenentwicklungen Unity 8 und MIR auf das Abstellgleis geschoben hat, ist sowieso unklar, wie genau der Plan auf dem Desktop aussieht und wie viele Ressourcen Canonical noch bereit ist zu investieren. Ein Blick auf die Homepage zeigt, dass der Desktop alles andere als im Fokus steht.

Zudem ist Ubuntu strukturell bedingt eine chaotische Distribution. Canonical entwickelt hinter verschlossenen Türen die Hauptvariante Ubuntu und die Derivate entwickeln ihre jeweilige Variante losgelöst von den anderen Projekten. Wenn man sich die Mailinglisten so anschaut, verläuft die Kommunikation da alles andere als optimal. Die einzelnen Projekte referenzieren sich auf den Internetauftritten nicht mal unbedingt gegenseitig.

Canonical scheint momentan mit den neuen Snaps auf dem Desktop zu experimentieren. Testweise lieferte man deshalb für die Hauptvariante mit GNOME einige Programme in 18.04 als Snap aus. Ein Experiment, das man bei den Ubuntu MATE-Entwicklern auch versucht. Sollten die Tests nicht vollkommen scheitern könnte dies die Zukunft der Programm-Installation aus dem Linux-Desktop liegen. Insbesondere Drittabieter wie Spotify haben diesen Weg bereits aufgegriffen.

Andere Projekte wie Kubuntu wissen noch nicht mal, ob sie eine LTS oder eine Rolling Release Distribution sein wollen. Wenn man sich diese Diskussion so anschaut, kann man erhebliche Zweifel daran entwickeln, dass die Kubuntu-Entwickler das Ubuntu-Entwicklungssystem noch unterstützen. Anstatt die bestehenden LTS-Varianten mit Elan zu pflegen und neue Bugfix-Versionen über das Updatesystem zu verteilen, beschäftigt man sich mit einem PPA-Monster, über das man zukünftig sogar das Toolkit aktualisieren will. Kubuntu bewegt sich damit eher in eine Richtung wie KDE neon und behandelt die Ubuntu Veröffentlichungen als Snapshots der eigenen Entwicklung.

Lubuntu und Xubuntu sind davon gar nicht betroffen. Ersteres versucht seit Jahren LXQT zu implementieren und letzteres braucht für jedes Release letztlich nur ein neues Wallpaper, da sich kaum was tut.

Wenn man sich diese Entwicklung so ansieht, fragt man sich, ob Ubuntu und die offiziellen Derivate überhaupt noch eine Distribution sind. Abgesehen von Ubuntu-Minimal und Standard als Unterbau teilt man nicht mehr viel und diesen Unterbau haben Mint oder KDE neon auch.

Im Grunde genommen ist diese Entwicklung nicht gänzlich neu. Ubuntu war durch die Einbeziehung von Derivaten schon immer ein unübersichtliches System. Andere Distributionen haben ihre Projekte aber zwischenzeitlich deutlich gestrafft und eine fokussierte Idee entwickelt, welche Zielgruppen ihre Distribution ansprechen möchte. Die Ubuntu-Familie möchte scheinbar alles gleichzeitig abdecken.


Bilder:

Einleitungs- und Beitragsbild von 3dman_eu via pixabay / Lizenz: CC0 Creative Commons

"

20. Juni 2018

Suchfunktionen im Allgemeinen sind manchmal mehr Schmerz als Hilfe (siehe Microsofts Bing ?‍♂️). Oft findet man Dinge die man sucht nicht, oder aber Dinge, die man gar nicht gesucht hat.
Wer viele Dateien in seiner Nextcloud nutzt, kann natürlich auch schnell den Überblick verlieren.

Mit Elasticsearch gibt es eine mächtige und trotzdem sehr schnelle auf Java basierende Suche, die sich mittels Erweiterungen auch in Nextcloud integrieren lässt.

Elasticsearch installieren

Elasticsearch benötigt zum ausführen eine Java-Umgebung. Folgende Anleitung beschreibt wie die Installation unter Debian aussieht.
Dort lässt sich ohne weiteres hinzufügen von Repositorys das OpenJDK installieren.

apt-get install openjdk-8-jre

Ein ausführen von java -version sollte anschließend wie folgt aussehen:

root@hive:/# java -versionopenjdk version "1.8.0_171"OpenJDK Runtime Environment (build 1.8.0_171-8u171-b11-1~deb9u1-b11)OpenJDK 64-Bit Server VM (build 25.171-b11, mixed mode)

Anschließend richten wir das Repository für Elasticsearch ein und installieren die Suche. Dies geschieht mittels folgenden Befehlen.

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -apt-get install apt-transport-httpsecho "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-6.x.listapt-get update && sudo apt-get install elasticsearchsystemctl enable elasticsearchsystemctl start elasticsearch

Sofern die Installation von Elasticsearch erfolgreich war, sollte ein curl -X GET „localhost:9200/“ nun folgendes ausgeben:

root@hive:/# curl -X GET "localhost:9200/"{  "name" : "fhCp22D",  "cluster_name" : "elasticsearch",  "cluster_uuid" : "LVEyx6SIREq5FPX1ee5TgA",  "version" : {    "number" : "6.3.0",    "build_flavor" : "default",    "build_type" : "deb",    "build_hash" : "424e937",    "build_date" : "2018-06-11T23:38:03.357887Z",    "build_snapshot" : false,    "lucene_version" : "7.3.1",    "minimum_wire_compatibility_version" : "5.6.0",    "minimum_index_compatibility_version" : "5.0.0"  },  "tagline" : "You Know, for Search"}

Damit auch PDF, XML und weitere Dateien indexiert werden können, muss noch ein Plugin für Elasticsearch installiert werden:

/usr/share/elasticsearch/bin/elasticsearch-plugin install ingest-attachment

Öffnet nun die Konfiguration von Elasticsearch unter /etc/elasticsearch/elasticsearch.yml und setzt die Variable network.host auf 127.0.0.1

Anschließend Elasticsearch einmal neustarten und mittels netstat prüfen, ob Elasticsearch und Java auf den Ports 9200 und 9300 lauschen.

Nextcloud konfigurieren

Widmen wir uns nun der Nextcloud. Wir benötigen drei Erweiterungen aus dem Appstore.

alt

Installiert werden müssen die folgenden drei:

Nach Aktivierung, wechselt in den Einstellungen in den Bereich der Volltextsuche.
Als Search Plattform wählt ihr Elasticsearch aus, die Address of the Servlet lautet http://localhost:9200/ und den Index könnt ihr frei benennen. Bei mehreren Nextcloud-Instanzen macht ein eindeutiger Index natürlich deutlich Sinn, bei mir lautet dieser beispielsweise nc_cloud1.

Abschließend muss die Indexierung einmalig mittels occ gestartet werden:

./occ fulltextsearch:index

Zudem ist es erforderlich, dass nach einer Aktualisierung der Erweiterung der Index einmal zurückgesetzt und neu indexiert wird:

./occ fulltextsearch:reset./occ fulltextsearch:index
Elasticsearch in Nextcloud 13 einbinden

Suchfunktionen im Allgemeinen sind manchmal mehr Schmerz als Hilfe (siehe Microsofts Bing 🤷‍♂️). Oft findet man Dinge die man sucht nicht, oder aber Dinge, die man gar nicht gesucht hat.
Wer viele Dateien in seiner Nextcloud nutzt, kann natürlich auch schnell den Überblick verlieren.

Mit Elasticsearch gibt es eine mächtige und trotzdem sehr schnelle auf Java basierende Suche, die sich mittels Erweiterungen auch in Nextcloud integrieren lässt.

Elasticsearch installieren

Elasticsearch benötigt zum ausführen eine Java-Umgebung. Folgende Anleitung beschreibt wie die Installation unter Debian aussieht.
Dort lässt sich ohne weiteres hinzufügen von Repositorys das OpenJDK installieren.

apt-get install openjdk-8-jre

Ein ausführen von java -version sollte anschließend wie folgt aussehen:

root@hive:/# java -version
openjdk version "1.8.0_171"
OpenJDK Runtime Environment (build 1.8.0_171-8u171-b11-1~deb9u1-b11)
OpenJDK 64-Bit Server VM (build 25.171-b11, mixed mode)

Anschließend richten wir das Repository für Elasticsearch ein und installieren die Suche. Dies geschieht mittels folgenden Befehlen.

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -
apt-get install apt-transport-https
echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-6.x.list
apt-get update && sudo apt-get install elasticsearch

systemctl enable elasticsearch
systemctl start elasticsearch

Sofern die Installation von Elasticsearch erfolgreich war, sollte ein curl -X GET "localhost:9200/" nun folgendes ausgeben:

root@hive:/# curl -X GET "localhost:9200/"
{
  "name" : "fhCp22D",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "LVEyx6SIREq5FPX1ee5TgA",
  "version" : {
    "number" : "6.3.0",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "424e937",
    "build_date" : "2018-06-11T23:38:03.357887Z",
    "build_snapshot" : false,
    "lucene_version" : "7.3.1",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}

Damit auch PDF, XML und weitere Dateien indexiert werden können, muss noch ein Plugin für Elasticsearch installiert werden:

/usr/share/elasticsearch/bin/elasticsearch-plugin install ingest-attachment

Öffnet nun die Konfiguration von Elasticsearch unter /etc/elasticsearch/elasticsearch.yml und setzt die Variable network.host auf 127.0.0.1

Anschließend Elasticsearch einmal neustarten und mittels netstat prüfen, ob Elasticsearch und Java auf den Ports 9200 und 9300 lauschen.

Nextcloud konfigurieren

Widmen wir uns nun der Nextcloud. Wir benötigen drei Erweiterungen aus dem Appstore.

Elasticsearch in Nextcloud 13 einbinden

Installiert werden müssen die folgenden drei:

Nach Aktivierung, wechselt in den Einstellungen in den Bereich der Volltextsuche.
Als Search Plattform wählt ihr Elasticsearch aus, die Address of the Servlet lautet http://localhost:9200/ und den Index könnt ihr frei benennen. Bei mehreren Nextcloud-Instanzen macht ein eindeutiger Index natürlich deutlich Sinn, bei mir lautet dieser beispielsweise nc_cloud1.

Abschließend muss die Indexierung einmalig mittels occ gestartet werden:

./occ fulltextsearch:index

Zudem ist es erforderlich, dass nach einer Aktualisierung der Erweiterung der Index einmal zurückgesetzt und neu indexiert wird:

./occ fulltextsearch:reset
./occ fulltextsearch:index

Suchfunktionen im Allgemeinen sind manchmal mehr Schmerz als Hilfe (siehe Microsofts Bing ?‍♂️). Oft findet man Dinge die man sucht nicht, oder aber Dinge, die man gar nicht gesucht hat.
Wer viele Dateien in seiner Nextcloud nutzt, kann natürlich auch schnell den Überblick verlieren.

Mit Elasticsearch gibt es eine mächtige und trotzdem sehr schnelle auf Java basierende Suche, die sich mittels Erweiterungen auch in Nextcloud integrieren lässt.

Elasticsearch installieren

Elasticsearch benötigt zum ausführen eine Java-Umgebung. Folgende Anleitung beschreibt wie die Installation unter Debian aussieht.
Dort lässt sich ohne weiteres hinzufügen von Repositorys das OpenJDK installieren.

apt-get install openjdk-8-jre

Ein ausführen von java -version sollte anschließend wie folgt aussehen:

root@hive:/# java -versionopenjdk version "1.8.0_171"OpenJDK Runtime Environment (build 1.8.0_171-8u171-b11-1~deb9u1-b11)OpenJDK 64-Bit Server VM (build 25.171-b11, mixed mode)

Anschließend richten wir das Repository für Elasticsearch ein und installieren die Suche. Dies geschieht mittels folgenden Befehlen.

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -apt-get install apt-transport-httpsecho "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-6.x.listapt-get update && sudo apt-get install elasticsearchsystemctl enable elasticsearchsystemctl start elasticsearch

Sofern die Installation von Elasticsearch erfolgreich war, sollte ein curl -X GET „localhost:9200/“ nun folgendes ausgeben:

root@hive:/# curl -X GET "localhost:9200/"{  "name" : "fhCp22D",  "cluster_name" : "elasticsearch",  "cluster_uuid" : "LVEyx6SIREq5FPX1ee5TgA",  "version" : {    "number" : "6.3.0",    "build_flavor" : "default",    "build_type" : "deb",    "build_hash" : "424e937",    "build_date" : "2018-06-11T23:38:03.357887Z",    "build_snapshot" : false,    "lucene_version" : "7.3.1",    "minimum_wire_compatibility_version" : "5.6.0",    "minimum_index_compatibility_version" : "5.0.0"  },  "tagline" : "You Know, for Search"}

Damit auch PDF, XML und weitere Dateien indexiert werden können, muss noch ein Plugin für Elasticsearch installiert werden:

/usr/share/elasticsearch/bin/elasticsearch-plugin install ingest-attachment

Öffnet nun die Konfiguration von Elasticsearch unter /etc/elasticsearch/elasticsearch.yml und setzt die Variable network.host auf 127.0.0.1

Anschließend Elasticsearch einmal neustarten und mittels netstat prüfen, ob Elasticsearch und Java auf den Ports 9200 und 9300 lauschen.

Nextcloud konfigurieren

Widmen wir uns nun der Nextcloud. Wir benötigen drei Erweiterungen aus dem Appstore.

alt

Installiert werden müssen die folgenden drei:

Nach Aktivierung, wechselt in den Einstellungen in den Bereich der Volltextsuche.
Als Search Plattform wählt ihr Elasticsearch aus, die Address of the Servlet lautet http://localhost:9200/ und den Index könnt ihr frei benennen. Bei mehreren Nextcloud-Instanzen macht ein eindeutiger Index natürlich deutlich Sinn, bei mir lautet dieser beispielsweise nc_cloud1.

Abschließend muss die Indexierung einmalig mittels occ gestartet werden:

./occ fulltextsearch:index

Zudem ist es erforderlich, dass nach einer Aktualisierung der Erweiterung der Index einmal zurückgesetzt und neu indexiert wird:

./occ fulltextsearch:reset./occ fulltextsearch:index

Suchfunktionen im Allgemeinen sind manchmal mehr Schmerz als Hilfe (siehe Microsofts Bing ?‍♂). Oft findet man Dinge die man sucht nicht, oder aber Dinge, die man gar nicht gesucht hat.
Wer viele Dateien in seiner Nextcloud nutzt, kann natürlich auch schnell den Überblick verlieren.

Mit Elasticsearch gibt es eine mächtige und trotzdem sehr schnelle auf Java basierende Suche, die sich mittels Erweiterungen auch in Nextcloud integrieren lässt.

Elasticsearch installieren

Elasticsearch benötigt zum ausführen eine Java-Umgebung. Folgende Anleitung beschreibt wie die Installation unter Debian aussieht.
Dort lässt sich ohne weiteres hinzufügen von Repositorys das OpenJDK installieren.

apt-get install openjdk-8-jre

Ein ausführen von java -version sollte anschließend wie folgt aussehen:

root@hive:/# java -versionopenjdk version "1.8.0_171"OpenJDK Runtime Environment (build 1.8.0_171-8u171-b11-1~deb9u1-b11)OpenJDK 64-Bit Server VM (build 25.171-b11, mixed mode)

Anschließend richten wir das Repository für Elasticsearch ein und installieren die Suche. Dies geschieht mittels folgenden Befehlen.

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -apt-get install apt-transport-httpsecho "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-6.x.listapt-get update && sudo apt-get install elasticsearchsystemctl enable elasticsearchsystemctl start elasticsearch

Sofern die Installation von Elasticsearch erfolgreich war, sollte ein curl -X GET „localhost:9200/“ nun folgendes ausgeben:

root@hive:/# curl -X GET "localhost:9200/"{  "name" : "fhCp22D",  "cluster_name" : "elasticsearch",  "cluster_uuid" : "LVEyx6SIREq5FPX1ee5TgA",  "version" : {    "number" : "6.3.0",    "build_flavor" : "default",    "build_type" : "deb",    "build_hash" : "424e937",    "build_date" : "2018-06-11T23:38:03.357887Z",    "build_snapshot" : false,    "lucene_version" : "7.3.1",    "minimum_wire_compatibility_version" : "5.6.0",    "minimum_index_compatibility_version" : "5.0.0"  },  "tagline" : "You Know, for Search"}

Damit auch PDF, XML und weitere Dateien indexiert werden können, muss noch ein Plugin für Elasticsearch installiert werden:

/usr/share/elasticsearch/bin/elasticsearch-plugin install ingest-attachment

Öffnet nun die Konfiguration von Elasticsearch unter /etc/elasticsearch/elasticsearch.yml und setzt die Variable network.host auf 127.0.0.1

Anschließend Elasticsearch einmal neustarten und mittels netstat prüfen, ob Elasticsearch und Java auf den Ports 9200 und 9300 lauschen.

Nextcloud konfigurieren

Widmen wir uns nun der Nextcloud. Wir benötigen drei Erweiterungen aus dem Appstore.

Installiert werden müssen die folgenden drei:

Nach Aktivierung, wechselt in den Einstellungen in den Bereich der Volltextsuche.
Als Search Plattform wählt ihr Elasticsearch aus, die Address of the Servlet lautet http://localhost:9200/ und den Index könnt ihr frei benennen. Bei mehreren Nextcloud-Instanzen macht ein eindeutiger Index natürlich deutlich Sinn, bei mir lautet dieser beispielsweise nc_cloud1.

Abschließend muss die Indexierung einmalig mittels occ gestartet werden:

./occ fulltextsearch:index

Zudem ist es erforderlich, dass nach einer Aktualisierung der Erweiterung der Index einmal zurückgesetzt und neu indexiert wird:

./occ fulltextsearch:reset./occ fulltextsearch:index

Der Beitrag Elasticsearch in Nextcloud 13 einbinden erschien zuerst auf timscha.io.

Elasticsearch in Nextcloud 13 einbinden

Suchfunktionen im Allgemeinen sind manchmal mehr Schmerz als Hilfe (siehe Microsofts Bing 🤷‍♂️). Oft findet man Dinge die man sucht nicht, oder aber Dinge, die man gar nicht gesucht hat.
Wer viele Dateien in seiner Nextcloud nutzt, kann natürlich auch schnell den Überblick verlieren.

Mit Elasticsearch gibt es eine mächtige und trotzdem sehr schnelle auf Java basierende Suche, die sich mittels Erweiterungen auch in Nextcloud integrieren lässt.

Elasticsearch installieren

Elasticsearch benötigt zum ausführen eine Java-Umgebung. Folgende Anleitung beschreibt wie die Installation unter Debian aussieht.
Dort lässt sich ohne weiteres hinzufügen von Repositorys das OpenJDK installieren.

apt-get install openjdk-8-jre

Ein ausführen von java -version sollte anschließend wie folgt aussehen:

root@hive:/# java -version
openjdk version "1.8.0_171"
OpenJDK Runtime Environment (build 1.8.0_171-8u171-b11-1~deb9u1-b11)
OpenJDK 64-Bit Server VM (build 25.171-b11, mixed mode)

Anschließend richten wir das Repository für Elasticsearch ein und installieren die Suche. Dies geschieht mittels folgenden Befehlen.

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -
apt-get install apt-transport-https
echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-6.x.list
apt-get update && sudo apt-get install elasticsearch

systemctl enable elasticsearch
systemctl start elasticsearch

Sofern die Installation von Elasticsearch erfolgreich war, sollte ein curl -X GET "localhost:9200/" nun folgendes ausgeben:

root@hive:/# curl -X GET "localhost:9200/"
{
  "name" : "fhCp22D",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "LVEyx6SIREq5FPX1ee5TgA",
  "version" : {
    "number" : "6.3.0",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "424e937",
    "build_date" : "2018-06-11T23:38:03.357887Z",
    "build_snapshot" : false,
    "lucene_version" : "7.3.1",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}

Damit auch PDF, XML und weitere Dateien indexiert werden können, muss noch ein Plugin für Elasticsearch installiert werden:

/usr/share/elasticsearch/bin/elasticsearch-plugin install ingest-attachment

Öffnet nun die Konfiguration von Elasticsearch unter /etc/elasticsearch/elasticsearch.yml und setzt die Variable network.host auf 127.0.0.1

Anschließend Elasticsearch einmal neustarten und mittels netstat prüfen, ob Elasticsearch und Java auf den Ports 9200 und 9300 lauschen.

Nextcloud konfigurieren

Widmen wir uns nun der Nextcloud. Wir benötigen drei Erweiterungen aus dem Appstore.

Elasticsearch in Nextcloud 13 einbinden

Installiert werden müssen die folgenden drei:

Nach Aktivierung, wechselt in den Einstellungen in den Bereich der Volltextsuche.
Als Search Plattform wählt ihr Elasticsearch aus, die Address of the Servlet lautet http://localhost:9200/ und den Index könnt ihr frei benennen. Bei mehreren Nextcloud-Instanzen macht ein eindeutiger Index natürlich deutlich Sinn, bei mir lautet dieser beispielsweise nc_cloud1.

Abschließend muss die Indexierung einmalig mittels occ gestartet werden:

./occ fulltextsearch:index

Zudem ist es erforderlich, dass nach einer Aktualisierung der Erweiterung der Index einmal zurückgesetzt und neu indexiert wird:

./occ fulltextsearch:reset
./occ fulltextsearch:index
Elasticsearch in Nextcloud 13 einbinden

Suchfunktionen im Allgemeinen sind manchmal mehr Schmerz als Hilfe (siehe Microsofts Bing 🤷‍♂️). Oft findet man Dinge die man sucht nicht, oder aber Dinge, die man gar nicht gesucht hat.
Wer viele Dateien in seiner Nextcloud nutzt, kann natürlich auch schnell den Überblick verlieren.

Mit Elasticsearch gibt es eine mächtige und trotzdem sehr schnelle auf Java basierende Suche, die sich mittels Erweiterungen auch in Nextcloud integrieren lässt.

Elasticsearch installieren

Elasticsearch benötigt zum ausführen eine Java-Umgebung. Folgende Anleitung beschreibt wie die Installation unter Debian aussieht.
Dort lässt sich ohne weiteres hinzufügen von Repositorys das OpenJDK installieren.

apt-get install openjdk-8-jre

Ein ausführen von java -version sollte anschließend wie folgt aussehen:

root@hive:/# java -version
openjdk version "1.8.0_171"
OpenJDK Runtime Environment (build 1.8.0_171-8u171-b11-1~deb9u1-b11)
OpenJDK 64-Bit Server VM (build 25.171-b11, mixed mode)

Anschließend richten wir das Repository für Elasticsearch ein und installieren die Suche. Dies geschieht mittels folgenden Befehlen.

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -
apt-get install apt-transport-https
echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-6.x.list
apt-get update && sudo apt-get install elasticsearch

systemctl enable elasticsearch
systemctl start elasticsearch

Sofern die Installation von Elasticsearch erfolgreich war, sollte ein curl -X GET "localhost:9200/" nun folgendes ausgeben:

root@hive:/# curl -X GET "localhost:9200/"
{
  "name" : "fhCp22D",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "LVEyx6SIREq5FPX1ee5TgA",
  "version" : {
    "number" : "6.3.0",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "424e937",
    "build_date" : "2018-06-11T23:38:03.357887Z",
    "build_snapshot" : false,
    "lucene_version" : "7.3.1",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}

Damit auch PDF, XML und weitere Dateien indexiert werden können, muss noch ein Plugin für Elasticsearch installiert werden:

/usr/share/elasticsearch/bin/elasticsearch-plugin install ingest-attachment

Öffnet nun die Konfiguration von Elasticsearch unter /etc/elasticsearch/elasticsearch.yml und setzt die Variable network.host auf 127.0.0.1

Anschließend Elasticsearch einmal neustarten und mittels netstat prüfen, ob Elasticsearch und Java auf den Ports 9200 und 9300 lauschen.

Nextcloud konfigurieren

Widmen wir uns nun der Nextcloud. Wir benötigen drei Erweiterungen aus dem Appstore.

Elasticsearch in Nextcloud 13 einbinden

Installiert werden müssen die folgenden drei:

Nach Aktivierung, wechselt in den Einstellungen in den Bereich der Volltextsuche.
Als Search Plattform wählt ihr Elasticsearch aus, die Address of the Servlet lautet http://localhost:9200/ und den Index könnt ihr frei benennen. Bei mehreren Nextcloud-Instanzen macht ein eindeutiger Index natürlich deutlich Sinn, bei mir lautet dieser beispielsweise nc_cloud1.

Abschließend muss die Indexierung einmalig mittels occ gestartet werden:

./occ fulltextsearch:index

Zudem ist es erforderlich, dass nach einer Aktualisierung der Erweiterung der Index einmal zurückgesetzt und neu indexiert wird:

./occ fulltextsearch:reset
./occ fulltextsearch:index

Suchfunktionen im Allgemeinen sind manchmal mehr Schmerz als Hilfe (siehe Microsofts Bing ?‍♂️). Oft findet man Dinge die man sucht nicht, oder aber Dinge, die man gar nicht gesucht hat.
Wer viele Dateien in seiner Nextcloud nutzt, kann natürlich auch schnell den Überblick verlieren.

Mit Elasticsearch gibt es eine mächtige und trotzdem sehr schnelle auf Java basierende Suche, die sich mittels Erweiterungen auch in Nextcloud integrieren lässt.

Elasticsearch installieren

Elasticsearch benötigt zum ausführen eine Java-Umgebung. Folgende Anleitung beschreibt wie die Installation unter Debian aussieht.
Dort lässt sich ohne weiteres hinzufügen von Repositorys das OpenJDK installieren.

apt-get install openjdk-8-jre

Ein ausführen von java -version sollte anschließend wie folgt aussehen:

root@hive:/# java -versionopenjdk version "1.8.0_171"OpenJDK Runtime Environment (build 1.8.0_171-8u171-b11-1~deb9u1-b11)OpenJDK 64-Bit Server VM (build 25.171-b11, mixed mode)

Anschließend richten wir das Repository für Elasticsearch ein und installieren die Suche. Dies geschieht mittels folgenden Befehlen.

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -apt-get install apt-transport-httpsecho "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-6.x.listapt-get update && sudo apt-get install elasticsearchsystemctl enable elasticsearchsystemctl start elasticsearch

Sofern die Installation von Elasticsearch erfolgreich war, sollte ein curl -X GET „localhost:9200/“ nun folgendes ausgeben:

root@hive:/# curl -X GET "localhost:9200/"{  "name" : "fhCp22D",  "cluster_name" : "elasticsearch",  "cluster_uuid" : "LVEyx6SIREq5FPX1ee5TgA",  "version" : {    "number" : "6.3.0",    "build_flavor" : "default",    "build_type" : "deb",    "build_hash" : "424e937",    "build_date" : "2018-06-11T23:38:03.357887Z",    "build_snapshot" : false,    "lucene_version" : "7.3.1",    "minimum_wire_compatibility_version" : "5.6.0",    "minimum_index_compatibility_version" : "5.0.0"  },  "tagline" : "You Know, for Search"}

Damit auch PDF, XML und weitere Dateien indexiert werden können, muss noch ein Plugin für Elasticsearch installiert werden:

/usr/share/elasticsearch/bin/elasticsearch-plugin install ingest-attachment

Öffnet nun die Konfiguration von Elasticsearch unter /etc/elasticsearch/elasticsearch.yml und setzt die Variable network.host auf 127.0.0.1

Anschließend Elasticsearch einmal neustarten und mittels netstat prüfen, ob Elasticsearch und Java auf den Ports 9200 und 9300 lauschen.

Nextcloud konfigurieren

Widmen wir uns nun der Nextcloud. Wir benötigen drei Erweiterungen aus dem Appstore.

alt

Installiert werden müssen die folgenden drei:

Nach Aktivierung, wechselt in den Einstellungen in den Bereich der Volltextsuche.
Als Search Plattform wählt ihr Elasticsearch aus, die Address of the Servlet lautet http://localhost:9200/ und den Index könnt ihr frei benennen. Bei mehreren Nextcloud-Instanzen macht ein eindeutiger Index natürlich deutlich Sinn, bei mir lautet dieser beispielsweise nc_cloud1.

Abschließend muss die Indexierung einmalig mittels occ gestartet werden:

./occ fulltextsearch:index

Zudem ist es erforderlich, dass nach einer Aktualisierung der Erweiterung der Index einmal zurückgesetzt und neu indexiert wird:

./occ fulltextsearch:reset./occ fulltextsearch:index
Elasticsearch in Nextcloud 13 einbinden

Suchfunktionen im Allgemeinen sind manchmal mehr Schmerz als Hilfe (siehe Microsofts Bing 🤷‍♂️). Oft findet man Dinge die man sucht nicht, oder aber Dinge, die man gar nicht gesucht hat.
Wer viele Dateien in seiner Nextcloud nutzt, kann natürlich auch schnell den Überblick verlieren.

Mit Elasticsearch gibt es eine mächtige und trotzdem sehr schnelle auf Java basierende Suche, die sich mittels Erweiterungen auch in Nextcloud integrieren lässt.

Elasticsearch installieren

Elasticsearch benötigt zum ausführen eine Java-Umgebung. Folgende Anleitung beschreibt wie die Installation unter Debian aussieht.
Dort lässt sich ohne weiteres hinzufügen von Repositorys das OpenJDK installieren.

apt-get install openjdk-8-jre

Ein ausführen von java -version sollte anschließend wie folgt aussehen:

root@hive:/# java -version
openjdk version "1.8.0_171"
OpenJDK Runtime Environment (build 1.8.0_171-8u171-b11-1~deb9u1-b11)
OpenJDK 64-Bit Server VM (build 25.171-b11, mixed mode)

Anschließend richten wir das Repository für Elasticsearch ein und installieren die Suche. Dies geschieht mittels folgenden Befehlen.

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -
apt-get install apt-transport-https
echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-6.x.list
apt-get update && sudo apt-get install elasticsearch

systemctl enable elasticsearch
systemctl start elasticsearch

Sofern die Installation von Elasticsearch erfolgreich war, sollte ein curl -X GET "localhost:9200/" nun folgendes ausgeben:

root@hive:/# curl -X GET "localhost:9200/"
{
  "name" : "fhCp22D",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "LVEyx6SIREq5FPX1ee5TgA",
  "version" : {
    "number" : "6.3.0",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "424e937",
    "build_date" : "2018-06-11T23:38:03.357887Z",
    "build_snapshot" : false,
    "lucene_version" : "7.3.1",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}

Damit auch PDF, XML und weitere Dateien indexiert werden können, muss noch ein Plugin für Elasticsearch installiert werden:

/usr/share/elasticsearch/bin/elasticsearch-plugin install ingest-attachment

Öffnet nun die Konfiguration von Elasticsearch unter /etc/elasticsearch/elasticsearch.yml und setzt die Variable network.host auf 127.0.0.1

Anschließend Elasticsearch einmal neustarten und mittels netstat prüfen, ob Elasticsearch und Java auf den Ports 9200 und 9300 lauschen.

Nextcloud konfigurieren

Widmen wir uns nun der Nextcloud. Wir benötigen drei Erweiterungen aus dem Appstore.

Elasticsearch in Nextcloud 13 einbinden

Installiert werden müssen die folgenden drei:

Nach Aktivierung, wechselt in den Einstellungen in den Bereich der Volltextsuche.
Als Search Plattform wählt ihr Elasticsearch aus, die Address of the Servlet lautet http://localhost:9200/ und den Index könnt ihr frei benennen. Bei mehreren Nextcloud-Instanzen macht ein eindeutiger Index natürlich deutlich Sinn, bei mir lautet dieser beispielsweise nc_cloud1.

Abschließend muss die Indexierung einmalig mittels occ gestartet werden:

./occ fulltextsearch:index

Zudem ist es erforderlich, dass nach einer Aktualisierung der Erweiterung der Index einmal zurückgesetzt und neu indexiert wird:

./occ fulltextsearch:reset
./occ fulltextsearch:index