Skip to content

Nextcloud Talk

Nextcloud
  • In Zeiten von Corona gibt es ja zur Zeit ein Thema was wichtig ist - HomeOffice oder auch die Kommunikation mit Freunden, Verwandten und Kollegen.

    Jeder benutzt was anderes, viele kommerzielle Anbieter denen ich nicht traue usw. Was machen? Da fiel mir ein, das Nextcloud ja Nextcloud Talk enthält.

    bf501e55-c6d6-4e22-9cb8-e647bd2d2818-image.png

    Eigentlich gibt es da keine so großen Hürden. Telefonate funktionierten sofort aber Videotelefonate!?!? Ok, ab jetzt wird es schwieriger 🙂

    Eine sehr schöne Anleitung habe ich hier gefunden. Doch wie so oft, manchmal helfen solche Anleitungen nicht wirklich weiter. Ich hatte alles so eingestellt wie darin beschrieben, aber beim Test im Backend von Nextcloud tauchte immer ein Ausrufezeichen auf.

    nc.png

    Wenn der TURN-Server richtig eingerichtet ist, erscheint beim Testen ein Haken an der Position vor dem Mülleimer. Lange Zeit hatte ich dort immer ein Ausrufezeichen. Bei mir hatte das den Grund, das die TLS Verbindung nicht richtig funktionierte, weil das Zusammenspiel zwichen coturn und Letsencrypt bugbehaftet ist. Dazu morgen etwas ausführlichere Erläuterungen, für heute genug HomeOffice 🙂

  • coturn

    Was das?

    The TURN Server is a VoIP media traffic NAT traversal server and gateway. It can be used as a general-purpose network traffic TURN server and gateway, too.
    Quelle: https://github.com/coturn/coturn

    Ich bin kein Netzwerktechniker und muss mich da leider an die Erklärung vom Nextcloud Backend orientieren.

    Ein TURN-Server dient als Proxy für die Verbindungen von Teilnehmern hinter einer Firewall.

    Damit kann ich mir das dann ein wenig besser erklären. Aber, bevor ich hier Stuss schreibe, lasse ich es lieber. Machen wir weiter mit praktischen Dingen. Was ich ja vorher schon raus gefunden hatte, ohne diesen Server hat man kein Video. Ok, dann wollen wir mal einen aufsetzen. Da ich meine vorhandene Installation nicht gefährden wollte, habe ich schnell eine neue VM aufgesetzt. Dank Hetzner Cloud ein Kinderspiel. Ja, das war ein Werbeblock 🙂

    Also hatte ich jetzt ein jungfräuliches Debian 10 Buster. Dann mal coturn installieren.

    apt install coturn
    

    Nachdem ich ihn nach der Anleitung s.o. den coturn konfiguriert hatte, bekam ich nach dem Start folgendes.

    root@debian-2gb-nbg1-1-webserver:~# systemctl status coturn.service
    ● coturn.service - coTURN STUN/TURN Server
       Loaded: loaded (/lib/systemd/system/coturn.service; enabled; vendor preset: enabled)
       Active: failed (Result: exit-code) since Thu 2020-03-26 10:51:25 CET; 9s ago
         Docs: man:coturn(1)
               man:turnadmin(1)
               man:turnserver(1)
      Process: 671 ExecStart=/usr/bin/turnserver --daemon -c /etc/turnserver.conf --pidfile /run/turnserver/turnserver.pid (code=exited, s
    
    Mar 26 10:51:25 debian-2gb-nbg1-1-webserver systemd[1]: coturn.service: Control process exited, code=exited, status=255/EXCEPTION
    Mar 26 10:51:25 debian-2gb-nbg1-1-webserver systemd[1]: coturn.service: Failed with result 'exit-code'.
    Mar 26 10:51:25 debian-2gb-nbg1-1-webserver systemd[1]: Failed to start coTURN STUN/TURN Server.
    Mar 26 10:51:25 debian-2gb-nbg1-1-webserver systemd[1]: coturn.service: Service RestartSec=100ms expired, scheduling restart.
    Mar 26 10:51:25 debian-2gb-nbg1-1-webserver systemd[1]: coturn.service: Scheduled restart job, restart counter is at 5.
    Mar 26 10:51:25 debian-2gb-nbg1-1-webserver systemd[1]: Stopped coTURN STUN/TURN Server.
    Mar 26 10:51:25 debian-2gb-nbg1-1-webserver systemd[1]: coturn.service: Start request repeated too quickly.
    Mar 26 10:51:25 debian-2gb-nbg1-1-webserver systemd[1]: coturn.service: Failed with result 'exit-code'.
    Mar 26 10:51:25 debian-2gb-nbg1-1-webserver systemd[1]: Failed to start coTURN STUN/TURN Server.
    

    Ich habe lange dran getüftelt, bis ich verstanden hatte wo das Problem lag.

    Ausschnitt /etc/turnserver.conf

    # TURN listener port for UDP and TCP (Default: 3478).
    # Note: actually, TLS & DTLS sessions can connect to the 
    # "plain" TCP & UDP port(s), too - if allowed by configuration.
    #
    listening-port=3478
    
    # TURN listener port for TLS (Default: 5349).
    # Note: actually, "plain" TCP & UDP sessions can connect to the TLS & DTLS
    # port(s), too - if allowed by configuration. The TURN server 
    # "automatically" recognizes the type of traffic. Actually, two listening
    # endpoints (the "plain" one and the "tls" one) are equivalent in terms of
    # functionality; but we keep both endpoints to satisfy the RFC 5766 specs.
    # For secure TCP connections, we currently support SSL version 3 and 
    # TLS version 1.0, 1.1 and 1.2.
    # For secure UDP connections, we support DTLS version 1.
    #
    tls-listening-port=5349
    

    Der listening-port 3478 entspricht einer HTTP Verbindung, der tls-listening-port 5349 einer HTTPS Verbindung. So als Erklärung 😉 Nachdem ich dann raus gefunden hatte, das der Port 3478 funktionierte, ich hatte mich am Anfang nur auf TLS konzentriert, wusste ich das an der TLS Verbindung / Zertifikaten was nicht stimmte.

    Also, Tipp Nr.1

    Als erstes mit listening-port=3478 testen!

    Danach wenden wir uns der TLS Verbindung zu. Ich gehe davon aus, das die meisten mittlerweile wissen, wie man Letsencrypt Zertifikate auf einem Rootserver installiert? Wenn nicht, dann gibt es hier Lesestoff.

    Config coturn

    listening-port=3478
    tls-listening-port=5349
    fingerprint
    use-auth-secret
    static-auth-secret=PASSWORD
    server-name=xxxx.frank-mankel.org
    realm=xxxx.frank-mankel.org
    total-quota=100
    stale-nonce=600
    cert=/etc/letsencrypt/live/xxxx.frank-mankel.org/cert.pem
    pkey=/etc/letsencrypt/live/xxxx.frank-mankel.org/privkey.pem
    cipher-list=“ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384″
    dh-file=/etc/ssl/dhparam.pem
    no-stdout-log
    syslog
    simple-log
    no-multicast-peers
    cli-password=PASSWORD
    no-tlsv1
    no-tlsv1_1
    

    Die TLS Verbindung wollte aber nie starten. Das kam im /var/log/user.log

    Mar 26 10:29:21 debian-2gb-nbg1-1-webserver turnserver: 0: WARNING: cannot find certificate file: turn_server_cert.pem (1)
    Mar 26 10:29:21 debian-2gb-nbg1-1-webserver turnserver: 0: WARNING: cannot start TLS and DTLS listeners because certificate file is not set properly
    Mar 26 10:29:21 debian-2gb-nbg1-1-webserver turnserver: 0: WARNING: cannot find private key file: turn_server_pkey.pem (1)
    Mar 26 10:29:21 debian-2gb-nbg1-1-webserver turnserver: 0: WARNING: cannot start TLS and DTLS listeners because private key file is not set properly
    

    Dazu zwei Links

    Hier sieht man das coturn ein Problem damit hat die symbolischen Links zu verarbeiten. Ich hatte dann die richtigen Files reinkopiert und die symbolischen Links gelöscht. Ging dann aber immer noch nicht. Erst als auch der User turnserver die Rechte für den Ordner hatte, ging es.

    Das hat jetzt eine Menge von Nachteile. Die Zertifikate erneuern sich ja alle paar Monate von alleine, so das es jetzt knallt. Dann geht das wieder nicht.

    Mein Denkansatz ist jetzt, Letsencrypt wieder so installieren, das alles korrekt ist, dann klappt das auch mit der automatischen Aktualisierung. Dazu wird sowieso ein Cronjob benutzt. Nach Ausführung des Cronjobs werden die Zertifikate an einen anderen Ort kopiert, bekommen die richtigen Namen und die richtigen Rechte so das der Turnserver damit was anfangen kann.

    Wäre schön, wenn das jemand mit dem nötigen KnowHow fixen könnte!?

    Ob das so funktioniert, wie von mir ausgedacht, muss ich die Tage noch testen. Dank HomeOffice ist ja dafür nächste Woche ausreichend Zeit für vorhanden 😉

    Danach trägt man den Turnserver in Nextcloud ein und die Verbindung funktioniert einwandfrei. Was mir beim Testen aufgefallen ist, das die Signalisierung eines Anrufes auf einem Android Handy nicht durchkam. Aber das kennt man ja auch von vielen anderen Dingen. Kurz vorher dem Gesprächspartner eine Nachricht zukommen lassen, so das man die App schon mal startet, sollte da Abhilfe schaffen.

    Bitte denkt an ausreichende Absicherung des Servers!

  • Noch eine kleine Ergänzung, für Eure Firewall muss auf dem TURN-Server lediglich der Port 5349 offen sein. Wie ihr ja wisst, kann man das schön aus dem Nextcloud Backend testen!

  • Noch was, das Letsencrypt Problem konnte ich etwas vereinfachen. Ganz normale Installation von Letsencrypt.
    Danach einfach folgendes.

    chown -R turnserver:root /etc/letsencrypt/
    

    Dann sieht das so aus.

    root@debian-2gb-nbg1-1-webserver:/etc/letsencrypt# ls -lha live/xxxx.frank-mankel.org/
    total 12K
    drwxr-xr-x 2 turnserver root 4.0K Mar 29 14:02 .
    drwx------ 3 turnserver root 4.0K Mar 29 14:02 ..
    lrwxrwxrwx 1 turnserver root   45 Mar 29 14:02 cert.pem -> ../../archive/xxxx.frank-mankel.org/cert1.pem
    lrwxrwxrwx 1 turnserver root   46 Mar 29 14:02 chain.pem -> ../../archive/xxxx.frank-mankel.org/chain1.pem
    lrwxrwxrwx 1 turnserver root   50 Mar 29 14:02 fullchain.pem -> ../../archive/xxxx.frank-mankel.org/fullchain1.pem
    lrwxrwxrwx 1 turnserver root   48 Mar 29 14:02 privkey.pem -> ../../archive/xxxx.frank-mankel.org/privkey1.pem
    -rw-r--r-- 1 turnserver root  692 Mar 29 14:02 README
    

    Im coturn Logfile steht das drin.

    Mar 29 14:09:18 debian-2gb-nbg1-1-webserver turnserver: 0: SSL23: Certificate file found: /etc/letsencrypt/live/xxxx.frank-mankel.org/cert.pem
    Mar 29 14:09:18 debian-2gb-nbg1-1-webserver turnserver: 0: SSL23: Private key file found: /etc/letsencrypt/live/xxxx.frank-mankel.org/privkey.pem
    Mar 29 14:09:18 debian-2gb-nbg1-1-webserver turnserver: 0: TLS1.2: Certificate file found: /etc/letsencrypt/live/xxxx.frank-mankel.org/cert.pem
    Mar 29 14:09:18 debian-2gb-nbg1-1-webserver turnserver: 0: TLS1.2: Private key file found: /etc/letsencrypt/live/xxxx.frank-mankel.org/privkey.pem
    

    So sollte das jetzt schon was einfacher sein. Schnell noch einen Crontab angelegt.

    # m h  dom mon dow   command
    PATH=/usr/sbin:/usr/bin:/sbin:/bin
    0 4 1 * * /usr/bin/certbot renew --pre-hook "service coturn stop" --post-hook "service coturn start"
    

    Das bekannte Vorgehen. Jeden 1. im Monat coturn stoppen, Zertifikate erneuern, coturn wieder starten. Fertig!

    Jetzt sollte die ganze Sache aber rund sein. Hoffe ich .)

  • All I needed to do was setting the permissions to 744 for the archive directory and the symlinks resolved correctly after a reboot of coturn

    My turnserver installation on Debian runs as the user turnserver and not as root, nor is the user turnserver in any group owning the letsencrypt directory.
    If your turnserver does run as root, it should be fine just adding execute permissions.

    I hope this helps some of you.
    Quelle: https://help.nextcloud.com/t/lets-encrypt-symlink-breaks-coturn-configuration/70166

    Was zum Testen die Tage....

  • Vaultwarden - SystemD

    Linux
    1
    0 Stimmen
    1 Beiträge
    166 Aufrufe
    Niemand hat geantwortet
  • Ubiquiti ER-X - Firewall

    Verschoben OpenWRT & Ubiquiti ER-X
    1
    0 Stimmen
    1 Beiträge
    257 Aufrufe
    Niemand hat geantwortet
  • ROCKPro64 - Debian Bullseye Teil 1

    ROCKPro64
    17
    0 Stimmen
    17 Beiträge
    2k Aufrufe
    FrankMF

    Durch diesen Beitrag ist mir mal wieder eingefallen, das wir das erneut testen könnten 😉

    Also die aktuellen Daten von Debian gezogen. Das Image gebaut, könnt ihr alles hier im ersten Beitrag nachlesen. Da die eingebaute Netzwerkschnittstelle nicht erkannt wurde, habe ich mal wieder den USB-to-LAN Adapter eingesetzt.

    Bus 005 Device 002: ID 0b95:1790 ASIX Electronics Corp. AX88179 Gigabit Ethernet

    Die Installation wollte ich auf einem NVMe Riegel installieren.

    Die Debian Installation durchgezogen und nach erfolgreicher Installation neugestartet. Und siehe da, ohne das man alles möglich ändern musste, bootete die NVMe SSD 🤓

    Eingesetzter uboot -> 2020.01-ayufan-2013......

    Die nicht erkannte LAN-Schnittstelle müsste an nicht freien Treibern liegen, hatte ich da irgendwo kurz gelesen. Beim Schreiben dieses Satzes kam die Nacht und ich konnte noch mal drüber schlafen. Heute Morgen, beim ersten Kaffee, dann noch mal logischer an die Sache ran gegangen.

    Wir schauen uns mal die wichtigsten Dinge an.

    root@debian:~# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether 62:03:b0:d6:dc:b3 brd ff:ff:ff:ff:ff:ff 3: enx000acd26e2c8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0a:cd:26:e2:c8 brd ff:ff:ff:ff:ff:ff inet 192.168.3.208/24 brd 192.168.3.255 scope global dynamic enx000acd26e2c8 valid_lft 42567sec preferred_lft 42567sec inet6 fd8a:6ff:2880:0:20a:cdff:fe26:e2c8/64 scope global dynamic mngtmpaddr valid_lft forever preferred_lft forever inet6 2a02:908:1260:13bc:20a:xxxx:xxxx:xxxx/64 scope global dynamic mngtmpaddr valid_lft 5426sec preferred_lft 1826sec inet6 fe80::20a:cdff:fe26:e2c8/64 scope link valid_lft forever preferred_lft forever

    Ok, er zeigt mir die Schnittstelle eth0 ja an, dann kann es an fehlenden Treibern ja nicht liegen. Lässt dann auf eine fehlerhafte Konfiguration schließen. Nächster Halt wäre dann /etc/network/interfaces

    Das trägt Debian ein

    # This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). source /etc/network/interfaces.d/* # The loopback network interface auto lo iface lo inet loopback # The primary network interface allow-hotplug enx000acd26e2c8 iface enx000acd26e2c8 inet dhcp # This is an autoconfigured IPv6 interface iface enx000acd26e2c8 inet6 auto

    Gut, bei der Installation hat Debian ja nur die zusätzliche Netzwerkschnittstelle erkannt, folgerichtig ist die auch als primäre Schnittstelle eingetragen. Dann ändern wir das mal...

    # This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). source /etc/network/interfaces.d/* # The loopback network interface auto lo iface lo inet loopback # The primary network interface #allow-hotplug enx000acd26e2c8 allow-hotplug eth0 #iface enx000acd26e2c8 inet dhcp iface eth0 inet dhcp # This is an autoconfigured IPv6 interface #iface enx000acd26e2c8 inet6 auto iface eth0 inet6 auto

    Danach einmal alles neu starten bitte 😉

    systemctl status networking

    Da fehlte mir aber jetzt die IPv4 Adresse, so das ich einmal komplett neugestartet habe. Der Ordnung halber, so hätte man die IPv4 Adresse bekommen.

    dhclient eth0

    Nachdem Neustart kam dann das

    root@debian:/etc/network# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000 link/ether 62:03:b0:d6:dc:b3 brd ff:ff:ff:ff:ff:ff inet 192.168.3.172/24 brd 192.168.3.255 scope global dynamic eth0 valid_lft 42452sec preferred_lft 42452sec inet6 fd8a:6ff:2880:0:6003:b0ff:fed6:dcb3/64 scope global dynamic mngtmpaddr valid_lft forever preferred_lft forever inet6 2a02:908:1260:13bc:6003:xxxx:xxxx:xxxx/64 scope global dynamic mngtmpaddr valid_lft 5667sec preferred_lft 2067sec inet6 fe80::6003:b0ff:fed6:dcb3/64 scope link valid_lft forever preferred_lft forever 3: enx000acd26e2c8: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether 00:0a:cd:26:e2:c8 brd ff:ff:ff:ff:ff:ff

    Fertig, eth0 läuft. Nun kann man den zusätzlichen Adapter entfernen oder halt konfigurieren, wenn man ihn braucht.

    Warum der Debian Installer die eth0 nicht erkennt verstehe ich nicht, aber vielleicht wird das irgendwann auch noch gefixt. Jetzt habe ich erst mal einen Workaround um eine Installation auf den ROCKPro64 zu bekommen.

  • LUKS verschlüsselte Platte mounten

    Linux
    2
    0 Stimmen
    2 Beiträge
    863 Aufrufe
    FrankMF

    So, jetzt das ganze noch einen Ticken komplizierter 🙂

    Ich habe ja heute, für eine Neuinstallation von Ubuntu 20.04 Focal eine zweite NVMe SSD eingebaut. Meinen Bericht zu dem Thema findet ihr hier. Aber, darum soll es jetzt hier nicht gehen.

    Wir haben jetzt zwei verschlüsselte Ubuntu NVMe SSD Riegel im System. Jetzt klappt die ganze Sache da oben nicht mehr. Es kommt immer einen Fehlermeldung.

    unbekannter Dateisystemtyp „LVM2_member“.

    Ok, kurz googlen und dann findet man heraus, das es nicht klappen kann, weil beide LVM Gruppen, den selben Namen benutzen.

    root@frank-MS-7C37:/mnt/crypthome/root# vgdisplay --- Volume group --- VG Name vgubuntu2 System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 4 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 1 Max PV 0 Cur PV 1 Act PV 1 VG Size <464,53 GiB PE Size 4,00 MiB Total PE 118919 Alloc PE / Size 118919 / <464,53 GiB Free PE / Size 0 / 0 VG UUID lpZxyv-cNOS-ld2L-XgvG-QILa-caHS-AaIC3A --- Volume group --- VG Name vgubuntu System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 3 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 2 Max PV 0 Cur PV 1 Act PV 1 VG Size <475,71 GiB PE Size 4,00 MiB Total PE 121781 Alloc PE / Size 121781 / <475,71 GiB Free PE / Size 0 / 0 VG UUID jRYTXL-zjpY-lYr6-KODT-u0LJ-9fYf-YVDna7

    Hier oben sieht man das schon mit geändertem Namen. Der VG Name muss unterschiedlich sein. Auch dafür gibt es ein Tool.

    root@frank-MS-7C37:/mnt/crypthome/root# vgrename --help vgrename - Rename a volume group Rename a VG. vgrename VG VG_new [ COMMON_OPTIONS ] Rename a VG by specifying the VG UUID. vgrename String VG_new [ COMMON_OPTIONS ] Common options for command: [ -A|--autobackup y|n ] [ -f|--force ] [ --reportformat basic|json ] Common options for lvm: [ -d|--debug ] [ -h|--help ] [ -q|--quiet ] [ -v|--verbose ] [ -y|--yes ] [ -t|--test ] [ --commandprofile String ] [ --config String ] [ --driverloaded y|n ] [ --nolocking ] [ --lockopt String ] [ --longhelp ] [ --profile String ] [ --version ] Use --longhelp to show all options and advanced commands.

    Das muss dann so aussehen!

    vgrename lpZxyv-cNOS-ld2L-XgvG-QILa-caHS-AaIC3A vgubuntu2 ACHTUNG Es kann zu Datenverlust kommen, also wie immer, Hirn einschalten!

    Ich weiß, das die erste eingebaute Platte mit der Nummer /dev/nvme0n1 geführt wird. Die zweite, heute verbaute, hört dann auf den Namen /dev/nvme1n1. Die darf ich nicht anpacken, weil sonst das System nicht mehr startet.

    /etc/fstab

    # /etc/fstab: static file system information. # # Use 'blkid' to print the universally unique identifier for a # device; this may be used with UUID= as a more robust way to name devices # that works even if disks are added and removed. See fstab(5). # # <file system> <mount point> <type> <options> <dump> <pass> /dev/mapper/vgubuntu-root / ext4 errors=remount-ro 0 1 # /boot was on /dev/nvme1n1p2 during installation UUID=178c7e51-a1d7-4ead-bbdf-a956eb7b754f /boot ext4 defaults 0 2 # /boot/efi was on /dev/nvme0n1p1 during installation UUID=7416-4553 /boot/efi vfat umask=0077 0 1 /dev/mapper/vgubuntu-swap_1 none swap sw 0 0

    Jo, wenn jetzt die Partition /dev/mapper/vgubuntu2-root / anstatt /dev/mapper/vgubuntu-root / heißt läuft nichts mehr. Nur um das zu verdeutlichen, auch das könnte man problemlos reparieren. Aber, ich möchte nur warnen!!

    Nachdem die Änderung durchgeführt wurde, habe ich den Rechner neugestartet. Puuh, Glück gehabt, richtige NVMe SSD erwischt 🙂

    Festplatte /dev/mapper/vgubuntu2-root: 463,58 GiB, 497754832896 Bytes, 972177408 Sektoren Einheiten: Sektoren von 1 * 512 = 512 Bytes Sektorgröße (logisch/physikalisch): 512 Bytes / 512 Bytes E/A-Größe (minimal/optimal): 512 Bytes / 512 Bytes

    Nun können wir die Platte ganz normal, wie oben beschrieben, mounten. Nun kann ich noch ein paar Dinge kopieren 😉

  • Node.js Paketmanager npm Sicherheitsproblem!

    Linux
    1
    0 Stimmen
    1 Beiträge
    230 Aufrufe
    Niemand hat geantwortet
  • Node.js installieren

    Linux
    1
    0 Stimmen
    1 Beiträge
    297 Aufrufe
    Niemand hat geantwortet
  • nginx konfigurieren

    NodeBB
    1
    0 Stimmen
    1 Beiträge
    629 Aufrufe
    Niemand hat geantwortet
  • Vorstellung von Joplin

    Linux
    3
    0 Stimmen
    3 Beiträge
    1k Aufrufe
    FrankMF

    Heute das Ganze nochmal ausprobiert. 🙂

    Unter "Werkzeuge/Allgemeine Einstellungen"

    0_1539095579387_2541359f-78f0-4b14-b540-beddb80e7f45-grafik.png

    Danach auf "Synchronisieren" klicken. Nach kurzer Zeit fragt er nach dem fehlenden Passwort. Passwort eingeben und kurze Zeit später waren alle Daten wieder da. Diesmal ging das ruckzuck.

    Joplin 1.0.111 (prod, linux)