Skip to content

NodeBB - Auf Debian Buster 10 umziehen

NodeBB
  • 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
    

    https://github.com/NodeBB/NodeBB/branches

  • NodeBB - v3.7.0

    NodeBB
    1
    0 Stimmen
    1 Beiträge
    34 Aufrufe
    Niemand hat geantwortet
  • NodeBB - v3.0.0 released

    NodeBB
    1
    0 Stimmen
    1 Beiträge
    46 Aufrufe
    Niemand hat geantwortet
  • Nodebb - Forum Crash

    NodeBB
    2
    0 Stimmen
    2 Beiträge
    1k Aufrufe
    FrankMF

    NodeBB hat Version 2.8.9 released. Wollen wir hoffen, das der Bug weg ist 😉

  • NodeBB - Upgrade v1.19.4

    NodeBB
    1
    0 Stimmen
    1 Beiträge
    75 Aufrufe
    Niemand hat geantwortet
  • NodeBB - Update auf v1.18.5 - sharp problem

    NodeBB
    2
    0 Stimmen
    2 Beiträge
    134 Aufrufe
    FrankMF

    Heute Morgen beim Kaffee dann dieses Forum hier gemacht. Dazu habe ich aber die Vorgehensweise, nach einem Tipp aus dem NodeBB-Forum, ein wenig geändert.

    Ich habe jetzt festgestellt, das es sehr sinnvoll sein kann, nur mit einer Kopie zu arbeiten. Also, kopieren wir uns den ganzen Ordner.

    cp -r nodebb/ nodebb_test/

    In diesen Ordner dann wechseln.

    cd nodebb_test/

    Der Versuch von

    ./nodebb upgrade

    ist wieder gescheitert.

    In file included from ../src/common.cc:24: /usr/include/vips/vips8:35:10: fatal error: glib-object.h: Datei oder Verzeichnis nicht gefunden 35 | #include <glib-object.h> | ^~~~~~~~~~~~~~~ compilation terminated. make: *** [sharp-linux-x64.target.mk:139: Release/obj.target/sharp-linux-x64/src/common.o] Fehler 1 make: Verzeichnis „/home/user_nodebb/nodebb_test/node_modules/sharp/build“ wird verlassen gyp ERR! build error gyp ERR! stack Error: `make` failed with exit code: 2

    Nun der Tipp aus dem NodeBB-Forum. Ich soll den node_modules/ Ordner neu installieren lassen. Ok, dazu sichern wir uns den erstmal.

    mv node_modules/ node_modules_BAK/

    Danach ein

    npm install

    Da ich kein nodejs Nerd bin, vermute ich mal, das npm (der Paketmanager) jetzt alle Pakete aus der package.json neu runterlädt und installiert!? Die Aussage ist mit Vorsicht zu genießen, da ich mir nicht 100% sicher bin. Sollte aber passen 😉 Jedenfalls habe ich danach wieder einen node_modules/ Ordner.

    Dann hatte ich ja gestern gelernt, wie ich mir die Version der Pakete anzeigen lassen kann.

    user@webserver2:~/nodebb_test$ npm list sharp nodebb@1.18.5 /home/user/nodebb_test └── sharp@0.29.2

    Jetzt hat der Paketmanager npm in der richtigen Version installiert. 🤔 Schon ein wenig verrückt, oder?

    Danach ein

    ./nodebb upgrade

    Das lief durch

    NodeBB Upgrade Complete!

    Um das jetzt nicht nochmal machen zu müssen, habe ich die Original NodeBB Installation gesichert und den Testordner an dessen Stelle kopiert. Einmal neugestartet und ausprobiert. Bei dieser Version muss ich leider immer zweimal

    ./nodebb upgrade

    machen, bis es ordentlich läuft. Seltsam, aber kann ich mit leben. Diese Paket sharp macht jedesmal auf eine andere Art und Weise Probleme - ziemlich nervig. Eigentlich ist dieser Upgrade Vorgang nämlich stressfrei und problemlos. In seltenen Fällen meckert er mal über ein FIle was schon da ist. Das sieht man aber in der Ausgabe und löscht das dann einfach, Vorgang erneut starten und gut.

    Merksatz

    Original Ordner kopieren und darin den Upgrade Prozess erst testen!!

  • NodeBB - v1.17.0

    NodeBB
    1
    0 Stimmen
    1 Beiträge
    151 Aufrufe
    Niemand hat geantwortet
  • Debian Buster 10.7 released

    Linux
    1
    0 Stimmen
    1 Beiträge
    201 Aufrufe
    Niemand hat geantwortet
  • NGINX & Webmin

    NGINX
    3
    0 Stimmen
    3 Beiträge
    829 Aufrufe
    FrankMF

    Das was da oben steht über Firewalld, ganz schnell vergessen. Das brauchen wir nicht, hat auch nur Probleme gemacht....

    21edf29c-ec9a-4cb5-a8ba-8bc534e4f4ec-grafik.png

    Man kann ganz normal mit iptables arbeiten, man sollte schon mal eine Firewall konfiguriert haben, das macht es etwas einfacher.

    Kurzer Test, ob das so klappt wie erwartet.

    frank@debian:~$ nmap 192.168.3.6 Starting Nmap 7.70 ( https://nmap.org ) at 2019-10-13 19:57 CEST Nmap scan report for 192.168.3.6 Host is up (0.0011s latency). Not shown: 996 filtered ports PORT STATE SERVICE 22/tcp open ssh 80/tcp open http 443/tcp closed https 10000/tcp open snet-sensor-mgmt

    Das hier sind aktuell die Regeln.

    root@rockpro64:~# iptables-legacy -L Chain INPUT (policy DROP) target prot opt source destination ACCEPT tcp -- anywhere anywhere tcp multiport ports ssh ACCEPT tcp -- anywhere anywhere tcp multiport ports webmin ACCEPT tcp -- anywhere anywhere tcp multiport ports http ACCEPT tcp -- anywhere anywhere tcp multiport ports https Chain FORWARD (policy ACCEPT) target prot opt source destination Chain OUTPUT (policy ACCEPT) target prot opt source destination

    Wenn ich das so die ganze Zeit teste, dann zweifel ich immer daran, ob solche Tools(Webmin) irgend einen Vorteil haben!? Mir macht das mittlerweile mehr Arbeit, als wenn ich das alles schnell eben auf der Konsole erledige. Vielleicht bin ich auch nur mittlerweile zu weit weg, von grafischen UI. Ich gebe dem Webmin aber noch ein paar Tage, gibt noch ein paar Sachen zu entdecken.