Com instal·lar Tiny Tiny RSS Reader en un FreeBSD 11 FAMP VPS
Utilitzeu un sistema diferent? Tiny Tiny RSS Reader és un lector i agregador de notícies basats en web (RSS/Atom) de codi obert i gratuït, dissenyat per
NodeBB és un programari de fòrum basat en Node.js. Utilitza endolls web per a interaccions instantànies i notificacions en temps real. El codi font de NodeBB està allotjat públicament a Github . Aquesta guia us guiarà pel procés d'instal·lació de NodeBB en una nova instància de FreeBSD 12 Vultr, utilitzant Node.js, MongoDB com a base de dades, Nginx com a servidor intermediari invers i Acme.sh per a certificats SSL.
NodeBB requereix instal·lar el programari següent:
A/ AAAAregistres configuratsComproveu la versió de FreeBSD.
uname -ro
# FreeBSD 12.0-RELEASE
Assegureu-vos que el vostre sistema FreeBSD estigui actualitzat.
freebsd-update fetch install
pkg update && pkg upgrade -y
Instal·leu els paquets necessaris si no estan presents al vostre sistema.
pkg install -y sudo vim unzip wget git bash socat gcc8 pkgconf vips
Creeu un compte d'usuari nou amb el vostre nom d'usuari preferit (farem servir johndoe).
adduser
# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!
Executeu l' visudoordre i descomenteu la %wheel ALL=(ALL) ALLlínia, per permetre que els membres del wheelgrup executin qualsevol ordre.
visudo
# Uncomment by removing hash (#) sign
# %wheel ALL=(ALL) ALL
Ara, canvieu al vostre nou usuari creat amb su.
su - johndoe
NOTA: Substituïu-lo johndoepel vostre nom d'usuari.
Configura la zona horària.
sudo tzsetup
NodeBB està impulsat per Node.js i, per tant, cal instal·lar-lo. Es recomana la instal·lació de la versió LTS actual de Node.js.
Instal·leu Node.js i npm.
sudo pkg install -y node10 npm-node10
Comproveu les versions.
node -v && npm -v
# v10.15.3
# 6.9.0
MongoDB és la base de dades predeterminada per a NodeBB.
Instal·leu MongoDB.
sudo pkg install -y mongodb40
Comproveu la versió.
mongo --version | head -n 1 && mongod --version | head -n 1
# MongoDB shell version v4.0.6
# db version v4.0.6
Activeu i inicieu MongoDB.
sudo sysrc mongod_enable=yes
sudo service mongod start
Creeu una base de dades i un usuari per a NodeBB.
Connecteu-vos primer a MongoDB.
mongo
Canvia a la adminbase de dades integrada .
> use admin
Crear un usuari administratiu.
> db.createUser( { user: "admin", pwd: "<Enter a secure password>", roles: [ { role: "readWriteAnyDatabase", db: "admin" }, { role: "userAdminAnyDatabase", db: "admin" } ] } )
NOTA: Substituïu el marcador de posició <Enter a secure password>per la vostra pròpia contrasenya seleccionada.
Afegiu una nova base de dades anomenada nodebb.
> use nodebb
Es crearà la base de dades i el context es canviarà a nodebb. A continuació, creeu l' nodebbusuari amb els privilegis adequats.
> db.createUser( { user: "nodebb", pwd: "<Enter a secure password>", roles: [ { role: "readWrite", db: "nodebb" }, { role: "clusterMonitor", db: "admin" } ] } )
NOTA: de nou, substituïu el marcador de posició <Enter a secure password>per la vostra pròpia contrasenya seleccionada.
Sortiu de la closca de Mongo.
> quit()
Reinicieu MongoDB i assegureu-vos que l'usuari administratiu creat anteriorment es pugui connectar.
sudo service mongod restart
mongo -u admin -p your_password --authenticationDatabase=admin
Instal·leu Nginx.
sudo pkg install -y nginx
Comproveu la versió.
nginx -v
# nginx version: nginx/1.14.2
Activeu i inicieu Nginx.
sudo sysrc nginx_enable=yes
sudo service nginx start
NodeBB s'executa per defecte al port 4567. Per evitar escriure http://example.com:4567, configurarem Nginx com a servidor intermediari invers per a l'aplicació NodeBB. Cada sol·licitud al port 80o 443, si s'utilitza SSL, es reenviarà al port 4567.
Run sudo vim /usr/local/etc/nginx/nodebb.conf and populate it with the basic reverse proxy configuration below.
server {
listen [::]:80;
listen 80;
server_name forum.example.com;
root /usr/share/nginx/html;
client_max_body_size 50M;
location /.well-known/acme-challenge/ {
allow all;
}
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_hide_header X-Powered-By;
proxy_set_header X-Nginx-Proxy true;
proxy_pass http://127.0.0.1:4567;
proxy_redirect off;
# Socket.IO Support
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
In the above config, update the server_name directive with your domain/hostname.
Save the file and exit with :+W+Q.
Now we need to include nodebb.conf in the main nginx.conf file.
Run sudo vim /usr/local/etc/nginx/nginx.conf and add the following line to the http {} block.
include nodebb.conf;
Check the configuration.
sudo nginx -t
Reload Nginx.
sudo service nginx reload
Securing your forum with HTTPS is not necessary, but it will secure your site's traffic. Acme.sh is a pure unix shell software for obtaining SSL certificates from Let's Encrypt with zero dependencies.
Download and install Acme.sh.
sudo mkdir /etc/letsencrypt
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh
sudo ./acme.sh --install --home /etc/letsencrypt --accountemail [email protected]
cd ~
Check the version.
/etc/letsencrypt/acme.sh --version
# v2.8.1
Obtain RSA and ECDSA certificates for forum.example.com.
# RSA 2048
sudo /etc/letsencrypt/acme.sh --issue --home /etc/letsencrypt -d forum.example.com --webroot /usr/share/nginx/html --reloadcmd "sudo service nginx reload" --keylength 2048
# ECDSA/ECC P-256
sudo /etc/letsencrypt/acme.sh --issue --home /etc/letsencrypt -d forum.example.com --webroot /usr/share/nginx/html --reloadcmd "sudo service nginx reload" --keylength ec-256
Després d'executar les ordres anteriors, els vostres certificats i claus estaran a:
/etc/letsencrypt/forum.example.com./etc/letsencrypt/forum.example.com_ecc.Després d'obtenir els certificats de Let's Encrypt, hem de configurar Nginx per utilitzar-los.
sudo vim /usr/local/etc/nginx/nodebb.confTorna a executar i configura Nginx com a servidor intermediari invers HTTPS.
server {
listen [::]:443 ssl http2;
listen 443 ssl http2;
listen [::]:80;
listen 80;
server_name forum.example.com;
root /usr/share/nginx/html;
client_max_body_size 50M;
location /.well-known/acme-challenge/ {
allow all;
}
# RSA
ssl_certificate /etc/letsencrypt/forum.example.com/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/forum.example.com/forum.example.com.key;
# ECDSA
ssl_certificate /etc/letsencrypt/forum.example.com_ecc/fullchain.cer;
ssl_certificate_key /etc/letsencrypt/forum.example.com_ecc/forum.example.com.key;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://127.0.0.1:4567;
proxy_redirect off;
# Socket.IO Support
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
Comproveu la configuració.
sudo nginx -t
Torna a carregar Nginx.
sudo service nginx reload
Creeu un directori arrel del document.
sudo mkdir -p /usr/local/www/nodebb
Canvia la propietat del /usr/local/www/nodebbdirectori a johndoe.
sudo chown -R johndoe:johndoe /usr/local/www/nodebb
Navegueu a la carpeta arrel del document.
cd /usr/local/www/nodebb
Cloneu l'últim NodeBB a la carpeta arrel del document.
git clone -b v1.11.x https://github.com/NodeBB/NodeBB.git .
Executeu l'ordre de configuració de NodeBB i responeu a cada pregunta quan se us demani.
./nodebb setup
Un cop finalitzada la configuració de NodeBB, executeu-lo ./nodebb startper iniciar manualment el vostre servidor NodeBB.
./nodebb start
Després d'aquesta ordre, podreu accedir a la vostra instància del fòrum NodeBB en un navegador web.
Quan s'inicia mitjançant ./nodebb start, NodeBB no es tornarà a iniciar automàticament quan es reiniciï el sistema. Per evitar-ho, haurem de configurar NodeBB com a servei del sistema.
Si s'executa, atureu NodeBB.
./nodebb stop
Instal·leu PM2 globalment.
sudo npm install pm2 -g
Comproveu la versió.
pm2 -v
# 3.5.0
Navegueu a l'arrel del document NodeBB.
cd /usr/local/www/nodebb
Inicieu NodeBB mitjançant PM2.
pm2 start app.js
Enumereu el procés NodeBB.
pm2 ls
Detecteu el sistema d'inici disponible.
pm2 startup
Copieu i enganxeu la sortida d'aquesta ordre a la CLI per configurar el vostre ganxo d'inici.
Desa la llista de processos.
pm2 save
Això és. La vostra instància de NodeBB ja està en funcionament.
Utilitzeu un sistema diferent? Tiny Tiny RSS Reader és un lector i agregador de notícies basats en web (RSS/Atom) de codi obert i gratuït, dissenyat per
Utilitzeu un sistema diferent? Wiki.js és una aplicació wiki moderna de codi obert i gratuïta construïda a Node.js, MongoDB, Git i Markdown. El codi font de Wiki.js és públic
Utilitzeu un sistema diferent? Pagekit 1.0 CMS és un sistema de gestió de continguts (CMS) bonic, modular, extensible i lleuger, gratuït i de codi obert amb
Utilitzeu un sistema diferent? MODX Revolution és un sistema de gestió de continguts (CMS) ràpid, flexible, escalable, de codi obert i de grau empresarial escrit en PHP. És jo
Aquest article us explica la configuració d'OpenBSD 5.5 (64 bits) a KVM amb un Vultr VPS. Pas 1. Inicieu sessió al tauler de control de Vultr. Pas 2. Feu clic a DEPLOY
Utilitzeu un sistema diferent? osTicket és un sistema d'entrades d'atenció al client de codi obert. El codi font osTicket està allotjat públicament a Github. En aquest tutorial
Utilitzeu un sistema diferent? Flarum és un programari de fòrum de nova generació gratuït i de codi obert que fa que la discussió en línia sigui divertida. El codi font de Flarum està allotjat o
Utilitzeu un sistema diferent? TLS 1.3 és una versió del protocol Transport Layer Security (TLS) que es va publicar el 2018 com a estàndard proposat a RFC 8446
Introducció WordPress és el sistema de gestió de continguts dominant a Internet. Potencia tot, des de blocs fins a llocs web complexos amb contingut dinàmic
Utilitzeu un sistema diferent? Subrion 4.1 CMS és un sistema de gestió de continguts (CMS) de codi obert potent i flexible que ofereix un contingut intuïtiu i clar.
Aquest tutorial us mostrarà com configurar un servei DNS que sigui fàcil de mantenir, fàcil de configurar i que, en general, sigui més segur que el BIN clàssic.
Una pila FEMP, que és comparable a una pila LEMP a Linux, és una col·lecció de programari de codi obert que normalment s'instal·la conjuntament per habilitar un FreeBS.
MongoDB és una base de dades NoSQL de classe mundial que s'utilitza amb freqüència en aplicacions web més noves. Proporciona consultes, fragmentació i rèplica d'alt rendiment
Utilitzeu un sistema diferent? Monica és un sistema de gestió de relacions personals de codi obert. Penseu en això com un CRM (una eina popular utilitzada pels equips de vendes a th
Introducció Aquest tutorial mostra OpenBSD com a solució de comerç electrònic amb PrestaShop i Apache. Apache és necessari perquè PrestaShop té una UR complexa
Utilitzeu un sistema diferent? Fork és un CMS de codi obert escrit en PHP. El codi font de Forks està allotjat a GitHub. Aquesta guia us mostrarà com instal·lar Fork CM
Utilitzeu un sistema diferent? Directus 6.4 CMS és un sistema de gestió de contingut sense cap (CMS) potent i flexible, gratuït i de codi obert que proporciona als desenvolupadors
Els servidors VPS solen ser atacats per intrusos. Un tipus comú d'atac apareix als registres del sistema com a centenars d'intents d'inici de sessió ssh no autoritzats. Preparant
Introducció L'OpenBSD 5.6 va introduir un nou dimoni anomenat httpd, que admet CGI (mitjançant FastCGI) i TLS. No cal cap treball addicional per instal·lar el nou http
Aquest tutorial us mostrarà com instal·lar el grup iRedMail en una nova instal·lació de FreeBSD 10. Hauríeu d'utilitzar un servidor amb almenys un gigabyte o
La Intel·ligència Artificial no està en el futur, és aquí mateix en el present. En aquest bloc Llegiu com les aplicacions d'Intel·ligència Artificial han afectat diversos sectors.
També ets víctima d'atacs DDOS i estàs confós sobre els mètodes de prevenció? Llegiu aquest article per resoldre les vostres consultes.
Potser haureu sentit que els pirates informàtics guanyen molts diners, però us heu preguntat mai com guanyen aquest tipus de diners? anem a discutir.
Vols veure els invents revolucionaris de Google i com aquests invents van canviar la vida de tots els éssers humans actuals? A continuació, llegiu al bloc per veure els invents de Google.
El concepte de cotxes autònoms per sortir a les carreteres amb l'ajuda de la intel·ligència artificial és un somni que tenim des de fa temps. Però malgrat les diverses promeses, no es veuen enlloc. Llegeix aquest blog per saber-ne més...
A mesura que la ciència evoluciona a un ritme ràpid, fent-se càrrec de molts dels nostres esforços, també augmenten els riscos de sotmetre'ns a una singularitat inexplicable. Llegeix, què pot significar per a nosaltres la singularitat.
Els mètodes d'emmagatzematge de les dades que han anat evolucionant poden ser des del naixement de les dades. Aquest bloc tracta l'evolució de l'emmagatzematge de dades a partir d'una infografia.
Llegeix el blog per conèixer de la manera més senzilla les diferents capes de l'Arquitectura Big Data i les seves funcionalitats.
En aquest món digital, els dispositius domèstics intel·ligents s'han convertit en una part crucial de les vides. A continuació, es mostren alguns avantatges sorprenents dels dispositius domèstics intel·ligents sobre com fan que la nostra vida valgui la pena i sigui més senzilla.
Recentment, Apple va llançar macOS Catalina 10.15.4, una actualització de suplements per solucionar problemes, però sembla que l'actualització està causant més problemes que provoquen el bloqueig de les màquines Mac. Llegiu aquest article per obtenir més informació