Skip to content

NodeBB - Auf Debian Buster 10 umziehen

NodeBB
2 1 390
  • Da ich ja meine Server am Umstellen bin , hier mal meine Schritte um eine vorhandene NodeBB Installation umzuziehen.

    Grundlage

    Redis Installation

    apt install redis-server
    

    In /etc/redis/redis.conf die Konfiguration einstellen. Wichtig Passwort einstellen!!

    Unter /var/libs/redis die Datenbank dump.rdb aus der Sicherung hin kopieren.

    Kopieren der DB

    service redis stop
    scp -r root@8.8.8.8:/home/frank/dump.rdb /home/frank
    mv /home/frank/dump.rdb /var/lib/redis
    chown redis:redis /var/lib/redis/dump.rdb
    service redis start
    

    Benutzerrechte auf redis anpassen! Wichtig!!!

    Pakete installieren

    apt install curl
    apt install sudo
    

    node.js installieren

    curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
    sudo apt-get install -y nodejs
    
    sudo apt-get install -y git
    

    User für NodeBB anlegen

    adduser user
    

    NodeBB muss mit einem eigenen User laufen. Auch wichtig, alle Befehle die ihr ausführt, müssen mit diesem User ausgeführt werden. Sonst gibt das ordentlich durcheinander 😉

    Solche Befehle meine ich

    ./nodebb start
    ./nodebb build
    

    NodeBB installieren

    cd /home/user
    git clone -b v1.12.x https://github.com/NodeBB/NodeBB.git nodebb
    
    ./nodebb setup
    

    Den Public Ordner nicht vergessen umzuziehen. Dort liegen alle Bilder usw.

    Nginx installieren

    apt install nginx
    

    Ich habe nach dieser Anleitung installiert.
    http://nginx.org/en/linux_packages.html#Debian

    Die Konfig liegt unter /etc/nginx/conf.d/
    Der Webordner wäre /usr/share/nginx/

    Certbot installieren

    Für https brauchen wir auch ein vernünftiges Zertifikat. Dafür installieren wir den Certbot von LetsEncrypt.

    apt install certbot
    

    Für SSL brauchen wir noch folgendes

    openssl dhparam -out /etc/ssl/nginx/dhparam-2048.pem 2048
    

    Nachdem man den DNS-Eintrag umgestellt hat, dauert es unterschiedlich lang, bis das erledigt ist. Man kann mit dem Certbot folgendes machen.

    certbot certonly --dry-run -d forum.frank-mankel.org
    

    So probiert er nur "trocken". Also ein Testlauf. Wenn das klappt dann richtig.

    certbot certonly -d forum.frank-mankel.org
    

    Evt. Fehler bekommt man angezeigt.

    Das sollte es gewesen sein, Daumen drücken und hoffen das es startet 🙂

    Die Zertifikate müssen auch regelmäßig erneuert werden, dazu legt man einen Cronjob an. Schöne Anleitung
    https://goneuland.de/certbot-lets-encrypt-zertifikate-automatisch-erneuern-unter-debian-9-stretch/

    Wenn alles läuft, unbedingt nachsehen ob alle Dienste mit dem entsprechenden User läuft.

    • Redis- Server User:redis
    • NodeBB User:"den ihr angelegt habt"
    • Nginx user:nginx

    Server Ports

    frank@debian:~$ nmap 148.251.198.219
    Starting Nmap 7.70 ( https://nmap.org ) at 2019-08-25 14:01 CEST
    Nmap scan report for webserver2.frank-mankel.org (148.251.198.219)
    Host is up (0.027s latency).
    Not shown: 996 filtered ports
    PORT     STATE  SERVICE
    80/tcp   open   http
    111/tcp  closed rpcbind
    443/tcp  open   https
    4567/tcp open   tram
    
    Nmap done: 1 IP address (1 host up) scanned in 7.85 seconds
    
  • Durch meinen Umzug zu einem neuen Proxmox, habe ich die Gelegenheit genutzt und meine Server alle auf Debian 11 Bullseye neu installiert. So konnte ich das alles noch mal testen und meine Doku anpassen.

    Zu dem obigen Beitrag gibt es nur folgendes zu ergänzen. Ja, wir wollen ja auch was Aktuelles haben 😉

    NodeJS

    curl -fsSL https://deb.nodesource.com/setup_14.x | bash -
    

    NodeBB

    git clone -b v1.18.x https://github.com/NodeBB/NodeBB.git nodebb
    

  • 0 Stimmen
    1 Beiträge
    6 Aufrufe
    Niemand hat geantwortet
  • The backlog was bigger than I expected...

    ActivityPub Test Kategorie lemmy nodebb
    13
    0 Stimmen
    13 Beiträge
    308 Aufrufe
    julian@community.nodebb.orgJ
    Depends on the project, and I imagine a lot of the smaller ones are your standard FOSS BDFL leadership. In my case I'll likely make a rough milestone list based off our NLNet memorandum and go from there.
  • Debian - php8.2 security update

    Linux debian linux php
    1
    0 Stimmen
    1 Beiträge
    144 Aufrufe
    Niemand hat geantwortet
  • NodeBB - 2.8.13 & 3.1.3 Security Release

    NodeBB nodebb linux
    1
    0 Stimmen
    1 Beiträge
    118 Aufrufe
    Niemand hat geantwortet
  • NodeBB - v2.6.1 Security Update

    NodeBB nodebb security
    1
    0 Stimmen
    1 Beiträge
    119 Aufrufe
    Niemand hat geantwortet
  • Let's Encrypt - acme.sh

    Verschoben Let's Encrypt letsencrypt
    6
    0 Stimmen
    6 Beiträge
    503 Aufrufe
    FrankMF
    Der Monat ist um, es war Zertifikatsmonat. Und nichts lief mehr..... Was war passiert? Sonntags mache ich von meinem Haupt-PC ein Backup (per Hand) mittels Restic auf meinen Rest-Server. Doch ich bekam eine Fehlermeldung, blabla Zertifikat usw. Ok, ab auf den Server und mit der Fehlersuche gestartet. Das Zertifikat war erneuert worden, aber der Restart Command versuchte immer eine server.service zu starten, die es gar nicht gab!? Da musste ich doch beim @Nico mal kurz nachfragen. Und das kam dann dabei raus. Fehlerursache Der ReloadCmd versuchte einen server.service zu restarten, den es gar nicht gibt. Suche Im acme Pfad liegen die Ordner für die Domains. In diesem Ordner liegt eine Datei DOMAIN.conf In dieser Datei werden bei der Installation des Zertfikiates eine Reihe von Dingen eingetragen. Le_Domain='DOMAIN' Le_Alt='no' Le_Webroot='no' Le_PreHook='' Le_PostHook='' Le_RenewHook='' Le_API='https://acme-v02.api.letsencrypt.org/directory' Le_Keylength='2048' Le_OrderFinalize='https://acme-v02.api.letsencrypt.org/acme/finalize/<ID>' Le_LinkOrder='https://acme-v02.api.letsencrypt.org/acme/order/<ID>' Le_LinkCert='https://acme-v02.api.letsencrypt.org/acme/cert/>ID>' Le_CertCreateTime='1680440374' Le_CertCreateTimeStr='2023-04-02T12:59:34Z' Le_NextRenewTimeStr='2023-05-31T12:59:34Z' Le_NextRenewTime='1685537974' Le_RealCertPath='/mnt/rest-server/DOMAIN/cert.pem' Le_RealCACertPath='' Le_RealKeyPath='/mnt/rest-server/DOMAIN/key.pem' Le_ReloadCmd='__ACME_BASE64__START_c3lzdGVtY3RsIHJlc3RhcnQgc2VydmVyLnNlcnZpY2U=__ACME_BASE64__END_' Le_RealFullChainPath='/mnt/rest-server/DOMAIN/fullchain.pem' Ok, da ist der ReloadCmd, aber der ist base64 kodiert!? Was machen. # echo c3lzdGVtY3RsIHJlc3RhcnQgc2VydmVyLnNlcnZpY2U= | base64 -d systemctl restart server.service Ok, hier sehen wir die fehlerhafte Eintragung, die genau meinem Beispiel oben entspricht (unter Installation Zertifikat) Man könnte jetzt die Installation des Zertifikates mit dem korrigierten EIntrag durchführen, oder diese Base64 Zeile korrigieren. Ok, wie geht das? # echo systemctl restart rest-server.service | base64 c3lzdGVtY3RsIHJlc3RhcnQgcmVzdC1zZXJ2ZXIuc2VydmljZQo= Diese Ausgabe kopieren wir dann in die Konfigurationsdatei. Kurze Kontrolle # echo c3lzdGVtY3RsIHJlc3RhcnQgcmVzdC1zZXJ2ZXIuc2VydmljZQo= | base64 -d systemctl restart rest-server.service Passt Und wieder jede Menge gelernt. Danke @Nico
  • NodeBB - v1.15.0

    NodeBB nodebb
    1
    0 Stimmen
    1 Beiträge
    203 Aufrufe
    Niemand hat geantwortet
  • Debian Buster 10.1 released

    Linux debian linux
    1
    0 Stimmen
    1 Beiträge
    311 Aufrufe
    Niemand hat geantwortet