Skip to content

Rest-Server v0.13.0 released

Restic
  • Release v0.13.0 des Rest-Servers ist da.

    Changelog

    • Chg #267: Update dependencies and require Go 1.18 or newer
    • Chg #273: Shut down cleanly on TERM and INT signals
    • Enh #271: Print listening address after start-up
    • Enh #272: Support listening on a unix socket

  • Download Rest-Server und installieren

    Im Github Repository den aktuellen Release suchen. Hier am Beispiel der aktuellen Version 0.13.0 (27.07.2024) Datei herunterladen

    wget https://github.com/restic/rest-server/releases/download/v0.13.0/rest-server_0.13.0_linux_amd64.tar.gz
    

    Die Datei entpacken

    tar -xf rest-server_0.13.0_linux_amd64.tar.gz
    

    Ins Verzeichnis wechseln

    cd rest-server_0.13.0_linux_amd64
    

    Wenn der Rest-Server läuft, dann muss man diesen erst mal stoppen.

    systemctl stop rest-server
    

    Danach kopiert man das File nach bin. Wer mag sichert vorher das alte File.

    cp rest-server /usr/local/bin
    

    Danach kann man den Rest-Server wieder starten.

    systemctl start rest-server
    

    Versionskontrolle

        root@rest-server:~# rest-server -v
        rest-server version rest-server 0.13.0 compiled with go1.22.5 on linux/amd64
    

    Die Hilfe vom Rest-Server

    root@rest-server:~# rest-server -h
    Run a REST server for use with restic
    
    Usage:
      rest-server [flags]
    
    Flags:
          --append-only            enable append only mode
          --cpu-profile string     write CPU profile to file
          --debug                  output debug messages
      -h, --help                   help for rest-server
          --htpasswd-file string   location of .htpasswd file (default: "<data directory>/.htpasswd)"
          --listen string          listen address (default ":8000")
          --log filename           write HTTP requests in the combined log format to the specified filename (use "-" for logging to stdout)
          --max-size int           the maximum size of the repository in bytes
          --no-auth                disable .htpasswd authentication
          --no-verify-upload       do not verify the integrity of uploaded data. DO NOT enable unless the rest-server runs on a very low-power device
          --path string            data directory (default "/tmp/restic")
          --private-repos          users can only access their private repo
          --prometheus             enable Prometheus metrics
          --prometheus-no-auth     disable auth for Prometheus /metrics endpoint
          --tls                    turn on TLS support
          --tls-cert string        TLS certificate path
          --tls-key string         TLS key path
      -v, --version                version for rest-server
    

    Systemd

    Wer noch ein passendes systemd File benötigt.

    [Unit]
    Description=Rest Server
    After=syslog.target
    After=network.target
    
    [Service]
    Type=simple
    User=rest-server
    Group=rest-server
    ExecStart=/usr/local/bin/rest-server --private-repos --tls --tls-cert /mnt/rest-server/<DOMAIN>/fullchain.pem --tls-key /mnt/rest-server/<DOMAIN>/key.pem --path /mnt/rest-server
    Restart=always
    RestartSec=5
    
    # Optional security enhancements
    NoNewPrivileges=yes
    PrivateTmp=yes
    ProtectSystem=strict
    ProtectHome=yes
    ReadWritePaths=/mnt/rest-server
    
    [Install]
    WantedBy=multi-user.target
    

  • Home Assistant - Anwendungsbeispiele

    Linux
    1
    0 Stimmen
    1 Beiträge
    298 Aufrufe
    Niemand hat geantwortet
  • Crowdsec - Ein fail2ban Ersatz?

    Linux
    2
    0 Stimmen
    2 Beiträge
    811 Aufrufe
    FrankMF

    Ich kann jetzt hier von meiner ersten Erfahrung berichten und wie CrowdSec mich gebannt hat 🙂

    Was war passiert? Ich war gestern sehr intensiv mit der Konfiguration von Nextcloud <-> Collabora Online beschäftigt. Nachdem ich irgendwie nicht weiterkam habe ich mich der Erstellung eines Dokumentes gewidmet. Nach einiger Zeit war die Nextcloud nicht mehr erreichbar.

    Ok, hatte ich bei der Konfiguration auch schon mal, den Server einmal neugestartet und fertig. Doch jetzt kam es, Server neugestartet - hilft nicht. Gut, schauen wir mal nach, Der SSH Login ging auch nicht 😞

    Jetzt war guter Rat gefragt. Zu diesem Zeitpunkt ging ich noch davon aus, das auf diesem Server kein CrowdSec installiert war, sondern fail2ban. Und fail2ban hatte eine sehr kurze Bantime vom 10M.

    Also blieb wohl nur noch das Rescue System von Hetzner.

    488866bc-3dcf-4abc-9e98-6107d65aa4c7-grafik.png

    Da hatte ich ja so gut wie gar keine Erfahrung mit. Also mal kurz den Nico angetriggert und es kam folgender Link.

    Link Preview Image Hetzner Rescue-System - Hetzner Docs

    favicon

    (docs.hetzner.com)

    Das Laufwerk war schnell bestimmt und schnell nach /tmp gemountet. Danach musste man sich noch mit chroot in diese Umgebung anmelden.

    chroot-prepare /mnt chroot /mnt

    Nachdem das klappte, habe ich eben fail2ban disabled.

    sysmctl disable fail2ban

    Danach das Rescue beendet. Der Server startete wieder und ich kam wieder per SSH drauf. Puuh.
    Bei meiner ersten Kontrolle fiel mir was auf

    root@:~# pstree systemd─┬─2*[agetty] ├─atd ├─cron ├─crowdsec─┬─journalctl │ └─8*[{crowdsec}] ├─crowdsec-firewa───9*[{crowdsec-firewa}]

    Wie? Da läuft CrowdSec? Da ich dabei bin die Server auf CrowdSec umzustellen, war das wohl hier schon gemacht, aber leider nicht vernünftig. fail2ban hätte mindestens disabled werden müssen und in meiner Dokumentation war das auch nicht enthalten. 6 setzen!

    CrowdSec besteht ja aus zwei Diensten, CrowdSec und dem Firewall-Bouncer. Der CrowdSec Dienst lief aber nicht, der war irgendwie failed. Ok, starten wir ihn und schauen was passiert. Nachdem er gestarte war mal die Banliste angeschaut.

    cscli decisions list

    ergab diesen Eintrag.

    2551501 │ crowdsec │ Ip:5.146.xxx.xxx │ crowdsecurity/http-crawl-non_statics │ ban │ │ │ 53 │ 1h5m55.391864693s │ 1671

    Meine IP war gebannt. Dann wissen wir ja , woher die Probleme kamen.

    cscli decisions delete --id 2551501

    Nach Eingabe war der Ban entfernt. Na gut, aber da ich aktuell immer noch an der richtigen Konfiguration von NC <-> CODE bastel, könnte das ja wieder passieren. Was machen? Kurz gegoogelt. Es gibt eine Whitelist. Aha!

    /etc/crowdsec/parsers/s02-enrich/whitelists.yaml

    name: crowdsecurity/whitelists description: "Whitelist events from private ipv4 addresses" whitelist: reason: "private ipv4/ipv6 ip/ranges" ip: - "127.0.0.1" - "::1" - "5.146.XXX.XXX" cidr: - "192.168.0.0/16" - "10.0.0.0/8" - "172.16.0.0/12" # expression: # - "'foo.com' in evt.Meta.source_ip.reverse"

    Danach den Dienst neustarten. Jetzt hoffen wir mal, das es hilft.

    Zum Schluss noch was, was mir aufgefallen war und was mich auch sehr verwirrt hatte. CrowdSec hatte wegen einem crowdsecurity/http-crawl-non_statics gebannt. Dadurch konnte ich meine
    subdomain.<DOMAIN> nicht erreichen. Ok, logisch, wenn der Ban von da ausgeht. Ich konnte aber gleichzeitig eine andere subdomain mit derselben <DOMAIN> auch nicht erreichen. Komplett verwirrte es mich dann, als ich eine andere <DOMAIN> auf dem selben Server erreichen konnte. Und zum Schluss ging auch der SSH nicht.

    Also, wieder viel gelernt.. 🤓

  • Portainer - Python3.10

    Linux
    1
    0 Stimmen
    1 Beiträge
    75 Aufrufe
    Niemand hat geantwortet
  • Manjaro KDE Plasma 21.2.6

    Linux
    16
    0 Stimmen
    16 Beiträge
    541 Aufrufe
    FrankMF

    @FrankM sagte in Manjaro KDE Plasma 21.2.6:

    Eines betrifft die Anordnung der Icons auf dem Desktop. Die Anordnung, die ich wähle, werden immer wieder geändert. Unschön, aber den Desktop nutze ich so gut wie gar nicht. Also kann ich auch auf den Fix warten.

    Kann noch was dauern
    https://pointieststick.com/2023/03/03/this-week-in-kde-plasma-6-begins/

    Desktop icons on the active activity should no longer inappropriately re-arrange themselves when the set of connected screens changes. However during the process of investigation, we discovered that the code for storing desktop file position is inherently problematic and in need of a fundamental rewrite just like we did for multi-screen arrangement in Plasma 5.27. This will be done for Plasma 6.0, and hopefully make Plasma’s long history of being bad about remembering desktop icon positions just that–history (Marco Martin, Plasma 5.27.3. Link)

  • Redis - Zweite Instanz

    Redis
    1
    0 Stimmen
    1 Beiträge
    239 Aufrufe
    Niemand hat geantwortet
  • Debian 11.1 released

    Linux
    1
    0 Stimmen
    1 Beiträge
    166 Aufrufe
    Niemand hat geantwortet
  • Nextcloud Talk

    Nextcloud
    5
    0 Stimmen
    5 Beiträge
    833 Aufrufe
    FrankMF

    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....

  • ROCKPro64 - Zwei LAN Schnittstellen / VLAN einrichten

    ROCKPro64
    4
    0 Stimmen
    4 Beiträge
    588 Aufrufe
    FrankMF

    Das Setup heute mal getestet um zu sehen, ob das auch so funktioniert.

    LAN an meine Fritzbox (DHCP) an eth1.100 mein Notebook an eth1.200 meine PS4

    Und dann mal gemütlich eine Runde MW gezockt. Läuft alles einwandfrei 🙂