Skip to content

ROCKPro64 - Projekt Wireguard Server

Verschoben ROCKPro64
2 1 595
  • Der Plan

    Ich wollte über die Ostertage mal eben einen Wireguard Server hinter meiner Fritzbox aufsetzen um zu schauen, ob der Kernel 5.6 ordentlich funktioniert. Ok, das Ganze sollte etwas ausarten, viel Zeit fressen, viel Frust erzeugen und mir mal wieder vor Augen führen, das ich von IPv6 keine Ahnung habe.

    Hintergrund

    Technischer Hintergrund, man hat am Kabelanschluss einen DS-Lite-Tunnel. Man hat also keine richtige IPv4 Adresse, die man von extern erreichen könnte. Man hat aber eine vollwertige IPv6 Adrese, womit man die Fritzbox von außen erreichen kann. Dazu später mehr.

    Um einen Wireguard Server permanent erreichen zu können, könnte man ja in der Fritzbox einen DynDNS Service benutzen, der dafür sorgt das man immer unter einem Domainnamen erreichbar ist. Da die meisten Geld kosten, habe ich davon Abstand genommen. Mein Gedanke war, warum hat man denn IPv6, das muss auch damit gehen.

    Ich weiß jetzt, das das was ich einen Satz vorher geschrieben habe, nicht richtig ist. Weil auch diese Adresse kann sich ändern, aber ich habe einen Workaround womit ich persönlich leben kann. Auch dazu, später mehr.

    Fritzbox

    Ich nutze eine Fritzbox 6591C am Anschluss von Vodafone NRW. Diese Fritzbox ist dank des netten Beitrages vom Nico auf der FrOSCon 2019 voll IPv6 fähig.

    Hinter dieser Fritzbox befindet sich eine pfSense die mein Netzwerk vom Rest abschirmt. Die pfSense ist auch voll IPv6 fähig.

    Für einen ersten Test sollte der Wireguard Server hinter die Fritzbox kommen. Damit wir diesen auch aus dem Internet erreichen können, müssen wir unter Internet/Freigaben folgendes einstellen.

    Freigabe.png

    Danach ist der ROCKPro64 aus dem Internet erreichbar.

    Hardware

    • ROCKPro64v2.1 2GB RAM
    • PCIe NVMe SSD Samsung 970 EVO 500GB (system)
    • u-boot im SPI

    Software

    Kernel

    root@rockpro64:~# uname -a
    Linux rockpro64 5.6.0-1134-ayufan-g652fb97d87eb #ayufan SMP Thu Apr 9 22:26:01 UTC 2020 aarch64 GNU/Linux
    

    Installation Wireguard

    Users with Debian releases older than Bullseye should enable backports.

    Wir öffnen /etc/apt/sources.list

    nano /etc/apt/sources.list
    

    Ans Ende fügen wir folgende Zeile ein

    deb http://deb.debian.org/debian buster-backports main
    

    Das dann bitte speichern. Danach

    apt update
    

    Und jetzt installieren wir

    apt install wireguard
    

    Test

    root@rockpro64:~# wg version
    wireguard-tools v1.0.20200319 - https://git.zx2c4.com/wireguard-tools/
    

    Konfiguration Wireguard

    Keys erzeugen

    private.key erzeugen

    root@rp64_nextcloud:/etc/wireguard# wg genkey > private.key
    Warning: writing to world accessible file.
    Consider setting the umask to 077 and trying again.
    

    public.key erzeugen

    root@rp64_nextcloud:/etc/wireguard# wg pubkey > public.key < private.key
    

    psk.key erzeugen

    root@rp64_nextcloud:/etc/wireguard# wg genpsk > psk.key
    

    Bitte die Warnung beachten!

    Warning: writing to world accessible file.
    Consider setting the umask to 077 and trying again.
    

    Inhalt des Ordners /etc/wireguard

    root@rockpro64:/etc/wireguard# ls -lha
    total 36K
    drwx------  2 root root 4.0K Apr 13 07:11 .
    drwxr-xr-x 87 root root 4.0K Apr 11 19:06 ..
    -rwxr-xr-x  1 root root 1012 Apr 12 13:12 firewall.sh
    -rw-r--r--  1 root root   45 Apr 10 16:44 private.key
    -rw-r--r--  1 root root   46 Apr 10 16:46 psk.key
    -rw-r--r--  1 root root   45 Apr 10 16:44 public.key
    -rw-r--r--  1 root root  843 Apr 12 12:55 wg0.conf
    

    Damit wären wir mit den Grundlagen durch. Es gibt nun zwei(?) Möglichkeiten die Wireguard Schnittstelle zu konfigurieren. Einmal könnte man das Interface beim Start direkt erzeugen lassen, einmal macht man das mittels wg-quick. Hier bei der Testerei hat sich schnell raus gestellt, das wg-quick zum Testen ideal ist. Man kann die Schnittstelle schnell starten und stoppen. Ich zeige trotzdem hier beide Wege.

    Dateien, die benötigt werden für beide Fälle.

    wg0.conf

    [Interface]
    Address = 10.10.1.1/24, fddb:76e8:5e07:0100::1/64
    PrivateKey = IJHK9lAjxlKxxxxxxxxxxxxxxx5NQ/zJfLicD7Vs=
    ListenPort = 51820
    PostUp = /etc/wireguard/firewall.sh
    DNS = 10.10.1.1
             
    # ThinkPad
    [Peer]
    PublicKey = qomJliKdaxxxxxxxxxxxxxxxxxxxxxxxqE5heItyHna2Q=
    PresharedKey = 5/kEBxxxxxxxxxxxxxxxxxxxxxxxxxxbSarEcqt4=
    AllowedIPs = 10.10.1.3, fddb:76e8:5e07:0100::3
    

    Ok, die erste Frage die jetzt viele haben werden ist folgende Woher kommen die IP-Adressen?
    Ich habe da nur einen privaten Adressbereich für IPv4 und einen privaten IPv6 Adressbereich festgelegt.

    Auf die IPv4 Adresse gehe ich hier nicht näher ein, das setze ich mal als allgemein bekannt voraus.

    Die IPv6 Adresse ist da um einiges interessanter. Ich habe lange rumgedocktert mit öffentlichen IPv6 Adressen, aber nichts funktionierte. Nach einem kurzen Hilferuf nach Hamburg brachte mich dann der Nico auf den rechten Weg 🙂 Man bräuchte dazu Unique Local Address Danach hatte ich mich auf die Suche im Netz gemacht und bin über folgende Anleitung gestolpert. Danach war mir einiges klarer.

    Nico hatte mir auch einen Link zur Verfügung gestellt, womit man den Adressbereich ermitteln kann. Dazu gibt man die MAC Adresse der Netzwerkkarte dort ein und erhält dann den Adressbereich angezeigt. Diese Adressen werden zufällig erzeugt, hier mal ein Beispiel.

    Your Private IPv6 network is:
    fd65:9491:8310::/48
    
    giving you access to the to the following /64s:
    fd65:9491:8310:0::/64 through fd65:9491:8310:ffff::/64
    

    Die Schnittstelle würde als nach dem Beispiel folgende IPv6 bekommen

    fd65:9491:8310:0100::1 
    
    • fd ist der Prefix
    • 65:9491:8310 ist die Global ID (random)
    • 0100 Subnet ID (hier frei gewählt)
    • 0000:0000:0000:0001 Interface ID, die man ja verkürzen kann auf ::1

    Das sollte es soweit für Euch verständlich machen. Mich hat das Ausprobieren nur ein paar Stunden gekostet 🙂

    /etc/wireguard/firewall.sh

    Die Firewall hier ist nicht optimiert und enthält auch vermutlich Fehler. Fpr einen Einsatz im internet nicht zu gebrauchen!!

    #!/bin/bash
    ### BEGIN INIT INFO
    # Provides:          firewall
    # Required-Start:
    # Required-Stop:
    # Should-Start:
    # Default-Start:
    # Default-Stop:
    # Short-Description: firewall
    # Description:       firewall
    ### END INIT INFO
    
    IP4TABLES=/sbin/iptables
    IP6TABLES=/sbin/ip6tables
    SERVERNETIPV4="192.168.178.29/32"
    SERVERNETNAT_IPV4="10.10.1.0/24"
    SERVERNETIPV6="2a02:908:1200:fbe0::/64"
    IPV6SUBNET="2a02:908:1265:fbe0:0100::"
    IPV6SUBNETMASK="/72"
    WGIF="wg0"
    OUTIF="eth0"
    
            # Enable forwarding
            sysctl -q -w net.ipv4.ip_forward=1
            sysctl -q -w net.ipv6.conf.all.forwarding=1
            sysctl -q -w net.ipv6.conf.all.proxy_ndp=1
    
            # Add Proxy NDP entries
            for i in {1..1000}
            do
                    ip neigh add proxy ${IPV6SUBNET}${i} dev $OUTIF
            done
    
            # NAT for IPv4 connections
            iptables -t nat -A POSTROUTING -o $OUTIF -j MASQUERADE
    
            # NAT for IPv6 connections added by FM ;)
            ip6tables -t nat -A POSTROUTING -o $OUTIF -j MASQUERADE
    
            # Filter all packets that have RH0 headers
            ip6tables -A FORWARD -o $WGIF -m rt --rt-type 0 -j DROP
        
            # Allow ICMPv6
            ip6tables -A FORWARD -o $WGIF -p ipv6-icmp -j ACCEPT
        
            # Allow established connections
        
            ip6tables -A FORWARD -o $WGIF -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
        
            # Allow new connections from VPN-Clients
        
            ip6tables -A FORWARD -o $WGIF -s ${IPV6SUBNET}${IPV6SUBNETMASK} -m conntrack --ctstate NEW -j ACCEPT
        
            # Reject all other forwarding
            ip6tables -A FORWARD -o $WGIF -j REJECT
        
            #=========================
            # SSH zur Firewall erlauben (IN)
            #=========================
            $IP4TABLES -A INPUT -p tcp --dport 22 -j ACCEPT
            $IP6TABLES -A INPUT -p tcp --dport 22 -j ACCEPT
    

    Wird bei Gelegenheit optimiert!

    Schnittstelle wg0

    In /etc/network/interfaces.d erstellen wir die Datei wg0

    # Wireguard
    auto wg0
    iface wg0 inet static
            address 10.10.1.1
            netmask 255.255.255.0
            pre-up ip link add $IFACE type wireguard
            pre-up wg setconf $IFACE /etc/wireguard/$IFACE.conf
            post-up /etc/wireguard/firewall.sh
            post-down ip link del $IFACE
    
    iface wg0 inet6 static
            address fddb:76e8:5e07:0100::1
            netmask 64
    

    Nun würden beim Neustarten das Interface wg0 erstellt.

    wg-quick

    Das Ganze mit wg-quick. Um diese Schnittstelle temporär zu erzeugen benutzt man den Befehl

    wg-quick up wg0
    

    und

    wg-quick down wg0
    

    Erste Tests brachten mich an den Rande des Wahnsinns. Einen Handshake bekam ich gut hin, Gegenseite konnte ich auch pingen. Aber alles andere ging so ziemlich gar nicht. Kein DNS, kein ping www.google.de usw. Das war bevor ich das mit den ULA Adressen wusste, danach war es einfacher 😉

    Client

    Als Client benutze ich meinen Thinkpad. Dort läuft natürlich auch ein Linux 🙂

    Debian Buster 10.3 mit Cinnamon Desktop

    Installation

    Die Installation erfolgt ebenfalls aus den Backports, wie oben schon beschrieben.

    wireguard-tools v1.0.20200319 - https://git.zx2c4.com/wireguard-tools/
    

    Konfiguration

    Keys

    Genau wie oben beschrieben.

    wg0.conf

    [Interface]
    Address = 10.10.1.3, fddb:76e8:5e07:0100::3: /64
    PrivateKey = oM9jWxxxxxxxxxxxxxxxxxxxVw+3+j0tS4vW8=
    ListenPort = 51820
    DNS = 10.10.1.1
    
    
    [Peer]
    Endpoint = 2a02:xxx:xxxx:xxxx:xxxx:xxxx:xxxx:dcb3:51820
    PublicKey = dCK5wSl3xxxxxxxxxxxxxxxxh+jhWF1O4cx0=
    PresharedKey = 5/kEB4FxxxxxxxxxxxxxxxxxxxiMPbSarEcqt4=
    AllowedIPs = 0.0.0.0/0, ::/0
    

    Auch hier wieder ein paar kurze Erklärungen zu den IP-Adressen. Die Interface Adressen sollten Euch jetzt klar sein. Wenn nicht, bitte oben noch mal nachlesen. Jetzt zum Endpoint. Das ist IP-Adresse die Euch die Fritzbox unter der Freigabe anzeigt. Hier noch mal als Bild.

    IP.png

    Noch wichtig ist DNS = 10.10.1.1, das erkläre ich später.

    Gestartet wird der Wireguard Tunnel dann wieder ganz bequem per

     wg-quick up wg0
    

    Danach sollte die Verbindung stehen.

    Kontrolle der Verbindung

    Server

    root@rockpro64:/etc/wireguard# wg
    interface: wg0
      public key: dCK5wxxxxxxxxxxxxxxxxxxxxxxWF1O4cx0=
      private key: (hidden)
      listening port: 51820
    
    peer: qomJliKxxxxxxxxxxxxxxxxxxxxxxtyHna2Q=
      preshared key: (hidden)
      endpoint: [2a01:xxxxxxxxxxxxxxxxxxxxxxxx]:51820
      allowed ips: 10.10.1.3/32, fddb:76e8:5e07:100::3/128
      latest handshake: 15 seconds ago
      transfer: 41.87 KiB received, 22.52 KiB sent
    

    Hier ist ganz wichtig, der latest handshake! So lange der nicht auftaucht, stimmt irgendwas nicht an der Verbindung!
    Auf dem Client kann man sich das genauso anzeigen lassen. Dann kurzer Test auf dem Client.

    ping 10.10.1.1
    ping 8.8.8.8
    ping fddb:76e8:5e07:100::1 
    ping www.google.de
    ping 2001:4860:4860::8888
    
    • 10.10.1.1 private IPv4 der Wireguard Schnittstelle des Servers
    • 8.8.8.8 IPv4 Adresse von google
    • fddb:76e8:5e07💯:1 private IPv6 der Wireguard Schnittstelle des Servers
    • www.google.de Geht der DNS im IPv4
    • 2001:4860:4860::8888 IPv6 Adresse von google

    Wenn alle diese Pings einwandfrei funktionieren, dann steht die Wireguard Verbindung und funktioniert!!

    Ok, bei Euch fehlt noch der DNS, das machen wir jetzt.

    DNS

    Bei einer VPN Verbindung besteht immer das Problem, das man mittels der DNS Abfragen seine wahre Identität entschleiert. Nennt sich auch DNS-Leak. Es gibt auch Seiten um das zu testen.

    dnsleaktest.com

    Wir müssen beim Aufbau der Wireguard Verbindung alle DNS-Abfragen umlenken. Diese Abfragen müssen durch den Tunnel! Dazu gibt es den Eintrag

    DNS = 10.10.1.1
    

    Das heisst nun, auf dem Wireguard Server muss ein DNS Dienst laufen. Dazu nutzen wir unbound.

    Installation

    apt install unbound
    

    Konfiguration

    Unter /etc/unbound/unbound.conf.d/ erstellen wir die Datei user.conf

    Inhalt

    server:
      interface: 10.10.1.1
    # interface: ::0
      access-control: 10.0.0.0/8 allow
      access-control: 127.0.0.0/8 allow
      access-control: 192.168.0.0/16 allow
      access-control: fddb:76e8:5e07:100::/72 allow
      prefetch: yes
      hide-identity: yes
      hide-version: yes
      qname-minimisation: yes
    

    Ich bin nicht der unbound Experte, aber das was ich vom Nico gelernt habe, lauscht der jetzt auf der privaten IP 10.10.1.1 und beantwortet Anfragen. Darunter noch was Zugriffskontrolle. Danach den Dienst neustarten.

    service unbound restart
    

    Ein ganz wichtiger Test kommt jetzt! Wir testen ob der DNS von außen erreichbar ist. Stichwort DNS Resolver! Dazu nutze ich einen der vorhanden Server im Internet und setze folgenden Befehl ab.

    nmap -6 xxxxxxxxxxxxxxxxxx:8e40
    Starting Nmap 7.70 ( https://nmap.org ) at 2020-04-19 14:45 CEST
    Nmap scan report for xxxxxxxxxxxxxxxxx:8e40
    Host is up (0.031s latency).
    Not shown: 997 closed ports
    PORT    STATE    SERVICE
    9/tcp   filtered discard
    22/tcp  open     ssh
    179/tcp filtered bgp
    
    Nmap done: 1 IP address (1 host up) scanned in 5.33 seconds
    

    Als IP-Adresse wird die genommen, die die Fritzbox anzeigt. Sieh Bild oben! Dort darf nicht folgendes auftauchen!!

    53/tcp  open     domain
    

    Somit sollte der Dienst unbound ausreichend sicher konfiguriert sein.

    Wenn man mal testen möchte, von wo die DNS-Anfrage beantwortet wird, kann man das hiermit machen.

    root@rockpro64:/etc/wireguard# dig www.google.de
    
    ; <<>> DiG 9.11.5-P4-5.1-Debian <<>> www.google.de
    ;; global options: +cmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 27807
    ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
    
    ;; OPT PSEUDOSECTION:
    ; EDNS: version: 0, flags:; udp: 4096
    ;; QUESTION SECTION:
    ;www.google.de.			IN	A
    
    ;; ANSWER SECTION:
    www.google.de.		300	IN	A	172.217.21.195
    
    ;; Query time: 50 msec
    ;; SERVER: 10.10.1.1#53(10.10.1.1)
    ;; WHEN: Sun Apr 19 13:03:43 UTC 2020
    ;; MSG SIZE  rcvd: 58
    

    IP ändert sich

    Die IP-Adresse Eurer Fritzbox ist ja nicht statisch, so das sich diese ab und zu mal ändern kann. Passiert nicht mehr so oft, kann aber vorkommen. Dann würde man den Wireguard Server nicht mehr erreichen, weil die IP-Adresse ja nicht mehr stimmt. Es gibt da eine Möglichkeit, man kann die Fritzbox auch von extern erreichen. Stichwort: MyFRITZ!-Konto

    Aber, das Thema muss ich mir noch mal was durch den Kopf gehen lassen 🙂

    Schlusswort

    Ja, das war wieder eine Lernphase. Aber das ist auch genau der Grund warum ich das mache. Man muss ja im Alter die Birne am Laufen halten 🙂

    So ein Wiregaurd Server ist was extrem praktisches. Da kann man so viele Sachen mit machen. Aus dem Hotel das WLan sicher nutzen, den Anbieter seines Vertrauens nicht mitlesen lassen usw.

    Viel Spaß damit und denkt dran, hier sind nicht alle Aspekte der Sicherheit im Internet angesprochen worden. So sollte man den Server nicht ins Internet stellen! Und Danke an Nico!!

  • Hat ein wenig Nerven gekostet und der Artikel ist auch was länger geworden 🙂 Viel Spaß beim Lesen und testen!


2/2

19. Apr. 2020, 13:22


  • 0 Stimmen
    3 Beiträge
    707 Aufrufe
    Noch was Wichtiges. Die Docker Installation nutzt folgende config. In meinem Beispiel findet man sie unter /home/frank/opencloud/deployments/examples/opencloud_full Darin liegt ein .env ## Basic Settings ## # Define the docker compose log driver used. # Defaults to local LOG_DRIVER= # If you're on an internet facing server, comment out following line. # It skips certificate validation for various parts of OpenCloud and is # needed when self signed certificates are used. INSECURE=true ## Traefik Settings ## # Note: Traefik is always enabled and can't be disabled. # Serve Traefik dashboard. # Defaults to "false". TRAEFIK_DASHBOARD= # Domain of Traefik, where you can find the dashboard. # Defaults to "traefik.opencloud.test" TRAEFIK_DOMAIN= # Basic authentication for the traefik dashboard. # Defaults to user "admin" and password "admin" (written as: "admin:$2y$05$KDHu3xq92SPaO3G8Ybkc7edd51pPLJcG1nWk3lmlrIdANQ/B6r5pq"). # To create user:password pair, it's possible to use this command: # echo $(htpasswd -nB user) | sed -e s/\\$/\\$\\$/g TRAEFIK_BASIC_AUTH_USERS= # Email address for obtaining LetsEncrypt certificates. # Needs only be changed if this is a public facing server. TRAEFIK_ACME_MAIL= # Set to the following for testing to check the certificate process: # "https://acme-staging-v02.api.letsencrypt.org/directory" # With staging configured, there will be an SSL error in the browser. # When certificates are displayed and are emitted by # "Fake LE Intermediate X1", # the process went well and the envvar can be reset to empty to get valid certificates. TRAEFIK_ACME_CASERVER= [....gekürzt....] Man kann dort etwas ändern und mittels docker compose up -d alles aktualisieren. Radicale OpenCloud nutzt im Moment folgendes https://radicale.org/v3.html als Backend Server für Kalender & Kontakte. Jemand hat mir dann erklärt, wie das so funktioniert. Danach hatte es dann klick gemacht. https://fosstodon.org/@h4kamp/114562514701351170 In der config findet man zum Beispiel die Konfiguration für radicale (Kalender- und Kontakte-App) Das ist nur eine rudimentäre Ablage, wird gesteuert über Clienten, z.B. die Thunderbird Kalender Funktion. ### Radicale Setting ### # Radicale is a small open-source CalDAV (calendars, to-do lists) and CardDAV (contacts) server. # When enabled OpenCloud is configured as a reverse proxy for Radicale, providing all authenticated # OpenCloud users access to a Personal Calendar and Addressbook RADICALE=:radicale.yml # Docker image to use for the Radicale Container #RADICALE_DOCKER_IMAGE=opencloudeu/radicale # Docker tag to pull for the Radicale Container #RADICALE_DOCKER_TAG=latest # Define the storage location for the Radicale data. Set the path to a local path. # Ensure that the configuration and data directories are owned by the user and group with ID 1000:1000. # This matches the default user inside the container and avoids permission issues when accessing files. # Leaving it default stores data in docker internal volumes. #RADICALE_DATA_DIR=/your/local/radicale/data In einer Standard Installation ist das auskommentiert. RADICALE=:radicale.yml Danach ein docker compose up -d und Eure Kalendereinträge (extern auf einem Clienten verwaltet) werden in der OpenCloud gesichert.
  • 0 Stimmen
    2 Beiträge
    368 Aufrufe
    Ich habe ja im obigen Beispiel, den gesamten Ordner von der Postgres Installation gesichert. backup_pfad_postgres="/home/pguser/db-data" Ich habe dann mal ein wenig in der Dokumentation gelesen und das hier gefunden. https://www.postgresql.org/docs/current/app-pgdump.html Einfach den Ordner zu sichern, ist ja bei jeder Datenbank ein gewisses Risiko. Die Konsistenz der Daten ist nicht gesichert. Darum gibt es bei den Datenbanken auch immer Tools, mit denen man die Daten sichern kann. In der Doku steht folgendes. pg_dump — extract a PostgreSQL database into a script file or other archive file Aber wichtiger ist das hier. pg_dump is a utility for backing up a PostgreSQL database. It makes consistent backups even if the database is being used concurrently. pg_dump does not block other users accessing the database (readers or writers). Das macht also konsistente Backups. Wichtig noch zu wissen ist folgendes. pg_dump only dumps a single database. To back up an entire cluster, or to back up global objects that are common to all databases in a cluster (such as roles and tablespaces), use pg_dumpall. Ok, das scheint gut geeignet zu sein, um die Datenbank zu sichern. Aber, wie? Auf meinen Eingangsbeitrag kam es zu folgendem Dialog auf Mastodon. https://nrw.social/deck/@nebucatnetzer@social.linux.pizza/114132208440509237 Das war der Anstoß sich mit dem Thema zu beschäftigen. Und ich hatte dann folgende Lösung. podman exec -it postgres pg_dump -U postgres -f /var/lib/postgresql/data/dump.txt Ok, was mache ich hier? Wir führen einen Befehl vom Host aus gesehen, im Container aus. podman exec -it postgres Der Teil führt den folgenden Befehl im Container aus. pg_dump -U postgres -f /var/lib/postgresql/data/dump.txt pg_dump - Das Tool fürs Backup -U postgres - Der Befehl wird als User postgres ausgeführt -f /var/lib/postgresql/data/dump.txt - Das Dump File wird im Data Ordner abgelegt, den haben wir ja persistent auf dem Host. Somit kann ich das jetzt einfach in mein Backup Script einbauen und brauchen nicht mehr den ganzen Ordner zu kopieren, sondern nur noch das Dump File. Ich werde diese Änderungen in das obige Script einbauen.
  • PyWebIO vs. Flask

    Python3 pywebio flask linux python 12. Feb. 2024, 08:22
    0 Stimmen
    2 Beiträge
    284 Aufrufe
    Mist, jetzt habe ich auch noch Streamlit gefunden. Jetzt geht mir langsam die Zeit aus...
  • KDE Plasma 6 - Beta 2

    Linux kde linux 20. Dez. 2023, 20:42
    0 Stimmen
    2 Beiträge
    290 Aufrufe
    Leider hat die Realität mich etwas vom Testen neuer Software abgehalten, aber jetzt geht es langsam wieder los. Den Start macht KDE Plasma 6 - Beta 2. Auch wenn ich schon brennend auf die RC1 warte, die lässt aber noch auf sich warten... https://pointieststick.com/category/this-week-in-kde/ Ok, also die Beta 2 auf meinen Stick und ab damit in mein Testsystem. Einmal starten, kurz danach taucht der KDE Neon Desktop auf. [image: 1705002299148-20240110_201838-resized.jpg] [image: 1705002324795-20240110_201852-resized.jpg] Und klick, wird die Installation gestartet. Danach begrüßt uns dieses Fenster. Ich weiß nicht, warum diese Information nicht automatisch ermittelt wird - nervig. [image: 1705002522434-20240110_201924-resized.jpg] Der Rest der Installation lief einwandfrei, ich habe aber keine besondere Installation vorgenommen. Ganze NVMe plattgemacht und alles drauf. Nichts verschlüsselt usw. Eine Installation, die ich so für meinen Haupt-PC nicht machen würde. Eine Kleinigkeit ist mir noch aufgefallen. Der Calamares Installer der benutzt wird, hat bei mir keine Sonderzeichen akzeptiert. Ich hoffe das wird bis zum Release gefixt. Hier noch kurz das Testsystem [image: 1705003417706-screenshot_20240111_210201.png] Ich nutze ausschließlich Wayland, das läuft einfach wesentlich besser. Aber, ich weiß da draußen gibt es viele die das nicht mögen. Das schöne an Linux - ihr habt die freie Wahl. Was war mir negativ aufgefallen? Installer - keine automatische Standortbestimmung Installer - nimmt keine Sonderzeichen für das PW an Login Window - nach Eingabe PW wird die Taste RETURN nicht akzeptiert. Muss ich mit der Maus anklicken. Skalierung auf meinem Monitor nicht optimal - Schrift unscharf Was ist mir positiv aufgefallen? Ich nutze einen 4K Monitor zum Testen. Die Skalierung war automatisch auf 175%. Eine fast perfekte Wahl, wenn da nicht die unscharfe Schrift wäre. Ich habe das auf 150% gestellt, danach war es deutlich besser. Updates kann man sich über das grafische Frontend holen Standby-Modus ging Und einen nervigen FF Bug konnte ich nicht nachstellen. Auf meinem aktuellen System, KDE Plasma 5, flackert der Bildschirm gelegentlich, wenn ich in der Taskleiste durch die geöffneten FF Fenster scrolle. Bei Plasma 6 konnte ich das bis jetzt noch nicht feststellen. Fazit Sieht gut aus, der Release von KDE Plasma 6 wird gut. Ich freu mich drauf. Und diesen komischen Updatevorgang den KDE Neon da benutzt, diesen M$ Style, den könnt ihr direkt wieder in die Mülltonne kloppen. Das möchte ich bei Linux nicht sehen. [image: 1705005840070-screenshot_20240111_214255-resized.png]
  • 0 Stimmen
    1 Beiträge
    3k Aufrufe
    Niemand hat geantwortet
  • 0 Stimmen
    1 Beiträge
    207 Aufrufe
    Niemand hat geantwortet
  • OpenWrt

    Images rockpro64 21. Apr. 2020, 15:51
    0 Stimmen
    1 Beiträge
    226 Aufrufe
    Niemand hat geantwortet
  • Mainline Kernel 4.18.0-rc3

    Linux rockpro64 3. Juli 2018, 19:46
    0 Stimmen
    1 Beiträge
    1k Aufrufe
    Niemand hat geantwortet