Chemnitzer Linux-Tage 2021

Die Chemnitzer Linux-Tage werden am 13. und 14. März nur virtuell stattfinden. Das diesjährige Motto lautet: Mach es einfach! anders.

Ich habe mir Vorträge ausgewählt, die ich mir anhören werde.

Samstag, 13. März 2021

  • Ubuntu Community: Es bleibt alles anders!
  • Knoppix 9.2
  • tmux – Terminal Multiplexer

Sonntag, 14. März 2021

  • MySQL Best Practices -10 Schritte zur optimierten Datenbank!
  • Verhindern von Malware-Ausbreitung in Datennetzen
  • Raus aus dem Messenger-Chaos und ab in die Matrix
  • Zwei Faktoren für einen sicheren Server, Teil zwei

Ich hoffe das wir uns nächstes Jahr zu den CLT wieder in Chemnitz treffen können. Denn das Schönste an den Chemnitzer Linux-Tagen ist für mich, dass ich mich mit Linux Usern aus ganz Europa persönlich treffen kann.

Die Vorträge sind für mich dabei nur eine nette Ergänzung.

Raspbian: Microsoft Repository auskommentieren

Bei meinem letzten Update von Raspbian wurde ungefragt ein Microsoft Repository eingerichtet.

Ich habe die Quelle erstmal über die Datei vscode.list auskommentiert.

sudo nano /etc/apt/sources.list.d/vscode.list

#deb [arch=amd64,arm64,armhf] http://packages.microsoft.com/repos/code stable main

Friendica auf Debian 10 Buster installieren

Ich habe mir Friendica auf meinem Debian 10 Server installiert. Friendica ist Mein soziales Netzwerk. Als Power-User hoste ich mir wichtige Dinge selbst und so auch mein soziales Netzwerk.

Den Apachen installieren

Ich werwende den Apache als Webserver im Internet.

sudo apt install apache2

Ein Let’s Encrypt-Zertifikat einrichten

Das Let’s Encrypt-Paket für den Apache installieren

sudo apt install python-certbot-apache

Danach wird der Client gestartet.

sudo certbot --apache

Hierbei arbeitet man die Installationsroutine durch. Die möglichen Eingaben sind 1,2,Y oder N. Die entsprechende Domain ist anzugeben und man tippt eine valide Mail-Adresse ein und bestätigt die zukünftige Weiterleitung der Anfragen auf SSL. Das so erstellte Zertifikat liegt im Verzeichnis /etc/letsencrypt/live/domain.tld/.

Virtual Hosts konfigurieren

Ich erstelle mir in /etc/apache2/sites-available die Datei friendica-ssl.conf mit folgendem Inhalt.

 # PORT 443 SSL CONFIG
# *******************



DocumentRoot /var/www/html/friendica/
ServerName example.com
ErrorLog /var/log/apache2/error.log
LogLevel warn
CustomLog /var/log/apache2/access.log combined

<Directory "/var/www/html/friendica/">
Options +Includes
Options +FollowSymLinks -Indexes
AllowOverride All


Include      /etc/letsencrypt/options-ssl-apache.conf
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem




# PORT 80 REDIRECT CONFIG
# ***********************


        ServerName example.com
        ServerAdmin webmaster@localhost
        DocumentRoot /var/www/html/friendica/
        
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Require all granted
        
        ErrorLog /var/log/apache2/error.log
        LogLevel warn
        CustomLog /var/log/apache2/access.log combined
        ServerSignature On
RewriteEngine on
#RewriteCond %{SERVER_NAME} =example.com
#RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
    RewriteCond %{REQUEST_URI} !^/\.well-known/acme-challenge
    RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [R=301;L,NE]

 

Die Zeile AllowOverride All sorgt dafür das der Apache die .htaccess Datei auswertet.

Nun wird der neuer Virtual Host aktiviert.

 sudo a2ensite friendica-ssl.conf 

Datenbank anlegen

Ich verwende MariaDB

sudo apt install mariadb-server

Während der Installation wird das Passwort für den User root angezeigt. Dieses sollte man sich notieren und speichern.

root@server# mysql -u root
mysql> CREATE DATABASE friendica;
mysql> CREATE USER 'friend' IDENTIFIED BY 'tollespasswort';
mysql> FLUSH PRIVILEGES;
mysql> quit

Hat man Probleme die Datenbank zu nutzen, sollte man den Artikel root-Login-Problem mit MariaDB im Kofler Blog durchlesen.


Mailserver Exim

Mailserver exim4 installieren.

sudo apt install exim4-daemon-light

exim4 konfigurieren

sudo dpkg-reconfigure exim4-config

siehe für Details auf gambaru.de Nur versenden: Mailserver mit Debian und Exim.


Installation der nötigen Pakete für Friendica

Es werden PHP-Pakete und ein git Paket installiert. Mit git wird später Friendica von der Projektseite in das Verzeichniss des Webservers geklont.

sudo apt install php7.3 php7.3-curl php7.3-gd php7.3-mysql php7.3-xml php-mbstring php7.3-imagick git-core

Installieren von Friendica und den Addons

root@server# cd /var/www/html
git clone -b stable https://github.com/friendica/friendica.git
cd friendica
cp .htacces-dist .htaccess
root@server /var/www/html/friendica 
git clone https://github.com/friendica/friendica-addons.git addon

Setzen der Rechte

root@server# chown user:www-data /var/www/html/friendica/view/smarty3
root@server# chmod g+w /var/www/html/friendica/view/smarty3

Cronjob einrichten

Damit nun Friendica immer bei den Nachrichten auf dem neuesten Stand ist, sollte noch ein Cronjob, alle 5 Minuten, eingerichtet werden.

root@server:~# sudo -u www-data crontab -e
*/5 * * * * cd /var/www/html/friendica/; /usr/bin/php bin/worker.php

Fazit

So in etwa verlief meine Installation von Friendica. Der Artikel soll einen ungefähren Eindruck vermitteln, welche Schritte zur Installation von Friendica notwendig sind. Es ist jedoch keine copy and paste Anleitung.

Bei der Installation sollte auch der eigene Kopf benutzt werden.

Viel Spaß mit Friendica.

PinePhone: Updateproblem in Mobian

Ich betreibe mein Mobian im Dualboot zu Ubuntu Touch auf einer MicroSD-Karte im PinePhone.

Mobian auf dem PinePhone mit Posh-Oberfläche
Posh Oberfläche

Bisher hatte ich mein Mobian über die GUI bedient. Updates spielte ich über die App Software ein. Gestern erhielt ich dort folgende Fehlermeldung:

The following packages have unmet dependencies:

Das Problem löste ich, in dem ich das Update im Terminal per apt installierte. Die Terminal-App in Mobian heißt King’s Cross.

mobian@mobian:~$ sudo apt update && sudo apt upgrade && sudo apt autoremove

Nun läuft wieder alles so wie es soll.

Gopherspace

Auf der Suche nach dem verlorenen Internet.
Gopher ist ein altes Protokoll im Internet. Dieses gewinnt in letzter Zeit wieder mehr an Popularität und nicht erst, seitdem die taz.de ihre Inhalte auch per gopher verteilt.
Ich surfe mit Lynx im Gopherspace.

lynx gopher://taz.de:70/1

Gopher hat eine feste Fanbase. Wer per gopher surft, wird vielleicht spüren was gemeint ist. Es gibt keinen Schnickschnack, sondern Inhalt pur!

Es folgen einige Gopher-Links:

Die Suchmaschine Veronica-2.

gopher://gopher.floodgap.com:70/1/v2

Die Seite von Elias gefällt mir sehr gut.

gopher://gopher.tamagothi.de

Im Gopherspace wird auch gespielt.

gopher://telnetgames.de

Fazit der Gopherrunde 20.02.2020; interessierte User wollen sich später in der c-base treffen, um sich weiter mit Gopfer zu beschäftigen.

Kein YouTube mehr

Hallo YouTuber und neuer Videoersteller. Ich möchte nicht auf YouTube gehen müssen um deine Videos sehen zu können. Warum? Mich stört die Werbung und das Tracking von Google. Wenn dir das egal ist und du keine Verantwortung für dein Videomaterial übernehmen möchtest, dann sehe ich dir nicht mehr zu!

In Zeiten von HTML 5 kann man seine Videos einfach selbst hosten, ganz ohne Plattform eines großen Konzerns. Ich mache das so: Meine Videos

Wenn du sehr viele Zuschauer erwartest, könntest du deine Videos auch per PeerTube verteilen.

Über PeerTube: PeerTube ist eine föderierte Videostreamingplattform basierend auf dem ActivityPub-Protokoll, die WebTorrent P2P-Technologie direkt im Browser verwendet. Für weitere Informationen besuche https://joinpeertube.org

PeerTube durchsuchen

Die vielen verschiedenen PeerTube-Instanzen lassen sich auch durchsuchen.

https://search.joinpeertube.org/

Du musst also nicht unbedingt wissen, auf welcher Instanz dein Lieblingsvideo liegt. Suche einfach nach dem Namen, Videobeschreibung, hashtag usw.

PinePhone: SSH auf Ubuntu Touch

Ich nutze SSH auf meinem PinePhone, um administrative Aufgaben zu erledigen oder um Daten zwischen meinem Computer und dem PinePhone zu übertragen. Auf dem PC habe ich mir ebenfalls den User phablet erstellt, sowie einen Public-Key.

Zuerst starte ich den SSH-Dienst auf dem PinePhone.

sudo service ssh start

Ich übertrage auf dem PinePhone den Public-Key von meinem PC auf das Phone.

scp phablet@ip(pc):/home/phablet/.ssh/id_rsa.pub /home/phablet/.ssh/authorized_keys

Und weil das so schön ist, kopiere ich mir noch ein Lied und ein Video auf das PinePhone.

scp phablet@ip(pc):/home/phablet/Musik/tollesLied.mp3 /home/phablet/Music
scp phablet@ip(pc):/home/phablet/Videos/tollesVideo.mp4 /home/phablet/Videos

Da nun auf meinem PinePhone der Public-Key von meinem PC liegt, kann ich mich vom PC aus per ssh auf dem Smartphone einloggen.

ssh phablet@ip(pinephone)

sagt der ssh-client am PC:

ssh: connect to host ip(pinephone) port 22: No route to host

So starte ich den SSH-Dienst auf dem PinePhone über das Terminal neu.

Stop

sudo service ssh stop

Start

sudo service ssh start

oder gleich mit einem Restart

sudo service ssh restart

Der erste User am PinePhone heißt phablet und ist in der Gruppe sudo und kann Root-Rechte erlangen. Es ist aber nicht möglich die Konfiguration des SSH-Servers über die Datei /etc/ssh/sshd_config zu ändern.

Da wir den Public-Key auf das PinePhone, mit dem Befehl scp kopiert bekommen haben, sehe ich dafür auch keinen Anlass.

Viel Spaß mit SSH und dem PinePhone. 🙂