Opsæt Cacti på Debian Jessie
Introduktion Cacti er et open source overvågnings- og grafværktøj, som er fuldt baseret på RRD-data. Gennem Cacti kan du overvåge næsten enhver type enhed
NodeBB er et Node.js-baseret forum. Den bruger web-sockets til øjeblikkelige interaktioner og meddelelser i realtid. NodeBB-kildekoden er offentligt hostet på Github . Denne guide vil lede dig gennem NodeBB-installationsprocessen på en ny Debian 9 Vultr-instans, der bruger Node.js, MongoDB som database, Nginx som omvendt proxy og Acme.sh til SSL-certifikater.
NodeBB kræver, at følgende software er installeret:
A
/ AAAA
records opsatTjek Debian-versionen.
lsb_release -ds
# Debian GNU/Linux 9.4 (stretch)
Sørg for, at dit system er opdateret.
apt update && apt upgrade -y
Installer nødvendige pakker.
apt install -y sudo dirmngr git build-essential apt-transport-https
Opret en ny non-root
brugerkonto med sudo
adgang og skift til den.
adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe
BEMÆRK : Erstat johndoe
med dit brugernavn.
Indstil tidszonen.
sudo dpkg-reconfigure tzdata
NodeBB er drevet af Node.js, og det skal derfor installeres. Installation af den aktuelle LTS-version af Node.js anbefales.
Installer Node.js fra NodeSource-lageret.
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt install -y nodejs
Bekræft installationen af Node.js og npm.
node -v && npm -v
# v10.15.0
# 5.6.0
MongoDB er standarddatabasen for NodeBB.
Installer MongoDB fra det officielle MongoDB-lager.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4
echo "deb https://repo.mongodb.org/apt/debian stretch/mongodb-org/4.0 main" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.0.list
sudo apt update
sudo apt install -y mongodb-org
Tjek versionen.
mongo --version | head -n 1 && mongod --version | head -n 1
# MongoDB shell version v4.00
# db version v4.0.0
Start og aktiver MongoDB.
sudo systemctl start mongod.service
sudo systemctl enable mongod.service
Opret en MongoDB-database og bruger til NodeBB.
Opret forbindelse til MongoDB.
mongo
Skift til den indbyggede admin
database.
> use admin
Opret en administrativ bruger.
> db.createUser( { user: "admin", pwd: "<Enter a secure password>", roles: [ { role: "readWriteAnyDatabase", db: "admin" }, { role: "userAdminAnyDatabase", db: "admin" } ] } )
BEMÆRK: Udskift pladsholderen <Enter a secure password>
med din egen valgte adgangskode.
Tilføj en ny database kaldet nodebb
.
> use nodebb
Databasen vil blive oprettet og kontekst skiftet til nodebb
. Opret derefter nodebb
brugeren med de relevante rettigheder.
> db.createUser( { user: "nodebb", pwd: "<Enter a secure password>", roles: [ { role: "readWrite", db: "nodebb" }, { role: "clusterMonitor", db: "admin" } ] } )
BEMÆRK: Igen, udskift pladsholderen <Enter a secure password>
med din egen valgte adgangskode.
Forlad Mongo-skallen.
> quit()
Genstart MongoDB og bekræft, at den tidligere oprettede administrative bruger kan oprette forbindelse.
sudo systemctl restart mongod.service
mongo -u admin -p your_password --authenticationDatabase=admin
Installer den seneste mainline-version af Nginx fra det officielle Nginx-lager.
wget https://nginx.org/keys/nginx_signing.key
sudo apt-key add nginx_signing.key
rm nginx_signing.key
sudo -s
printf "deb https://nginx.org/packages/mainline/debian/ $(lsb_release -sc) nginx\ndeb-src https://nginx.org/packages/mainline/debian/ $(lsb_release -sc) nginx\n" >> /etc/apt/sources.list.d/nginx_mainline.list
exit
sudo apt update
sudo apt install -y nginx
Tjek versionen.
sudo nginx -v
# nginx version: nginx/1.15.0
Aktiver og start Nginx.
sudo systemctl enable nginx.service
sudo systemctl start nginx.service
NodeBB kører som standard på port 4567
. For at undgå at skrive http://example.com:4567
, vil vi konfigurere Nginx som en omvendt proxy for NodeBB-applikationen. Hver anmodning på port 80
eller 443
(hvis SSL bruges) vil blive videresendt til port 4567
.
Kør sudo vim /etc/nginx/conf.d/nodebb.conf
og udfyld den med den grundlæggende reverse proxy-konfiguration vist nedenfor.
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";
}
}
I konfigurationen ovenfor skal du opdatere server_name
direktivet med dit domæne/værtsnavn.
Tjek konfigurationen.
sudo nginx -t
Genindlæs Nginx.
sudo systemctl reload nginx.service
Det er ikke nødvendigt at sikre dit forum med HTTPS, men det vil sikre dit websteds trafik. Acme.sh er en ren Unix-shell-software til at opnå SSL-certifikater fra Let's Encrypt med nul afhængigheder.
Download og installer 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 ~
source ~/.bashrc
Tjek versionen.
acme.sh --version
# v2.7.9
Få RSA- og ECDSA-certifikater 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 systemctl reload nginx.service" --accountemail [email protected] --ocsp-must-staple --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 systemctl reload nginx.service" --accountemail [email protected] --ocsp-must-staple --keylength ec-256
Efter at have kørt ovenstående kommandoer, vil dine certifikater og nøgler være i følgende mapper:
/etc/letsencrypt/forum.example.com
/etc/letsencrypt/forum.example.com_ecc
Efter at have fået certifikater fra Let's Encrypt, skal vi konfigurere Nginx til at bruge dem.
Kør sudo vim /etc/nginx/conf.d/nodebb.conf
igen og konfigurer Nginx som en HTTPS omvendt proxy.
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";
}
}
Tjek konfigurationen.
sudo nginx -t
Genindlæs Nginx.
sudo systemctl reload nginx.service
Opret en dokumentrodmappe.
sudo mkdir -p /var/www/nodebb
Skift ejerskab af /var/www/nodebb
biblioteket til johndoe
.
sudo chown -R johndoe:johndoe /var/www/nodebb
Naviger til dokumentets rodmapp.
cd /var/www/nodebb
Klon den seneste NodeBB i dokumentets rodmappe.
git clone -b v1.10.x https://github.com/NodeBB/NodeBB.git .
Kør kommandoen NodeBB setup og besvar hvert spørgsmål, når du bliver bedt om det.
./nodebb setup
Når NodeBB-opsætningen er fuldført, skal du køre for ./nodebb start
at starte din NodeBB-server manuelt.
./nodebb start
Efter denne kommando vil du være i stand til at få adgang til dit forum i din webbrowser.
Når det startes via ./nodebb start
, vil NodeBB ikke automatisk starte op igen, når systemet genstarter. For at undgå det, bliver vi nødt til at konfigurere NodeBB som en systemtjeneste.
Hvis du kører, stop NodeBB.
./nodebb stop
Opret en ny nodebb
bruger:
sudo adduser nodebb
Skift ejerskabet af /var/www/nodebb
biblioteket til nodebb
.
sudo chown -R nodebb:nodebb /var/www/nodebb
Opret en nodebb.service
systemd unit config fil. Denne enhedsfil vil håndtere opstart af NodeBB-deamon. Kør sudo vim /etc/systemd/system/nodebb.service
og udfyld filen med følgende indhold:
[Unit]
Description=NodeBB
Documentation=https://docs.nodebb.org
After=system.slice multi-user.target mongod.service
[Service]
Type=forking
User=nodebb
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=nodebb
Environment=NODE_ENV=production
WorkingDirectory=/var/www/nodebb
PIDFile=/var/www/nodebb/pidfile
ExecStart=/usr/bin/env node loader.js
Restart=always
[Install]
WantedBy=multi-user.target
BEMÆRK: Indstil brugernavn og mappestier i henhold til dine valgte navne.
Aktiver nodebb.service
ved genstart og start med det samme nodebb.service
.
sudo systemctl enable nodebb.service
sudo systemctl start nodebb.service
Tjek nodebb.service
status.
sudo systemctl status nodebb.service
sudo systemctl is-enabled nodebb.service
Det er det. Din NodeBB-instans er nu oppe og køre.
Introduktion Cacti er et open source overvågnings- og grafværktøj, som er fuldt baseret på RRD-data. Gennem Cacti kan du overvåge næsten enhver type enhed
Bruger du et andet system? Denne vejledning viser dig, hvordan du installerer groupware iRedMail på en ny installation af Debian Wheezy. Du bør bruge en serve
Bruger du et andet system? Hvis du køber en Debian-server, bør du altid have de nyeste sikkerhedsrettelser og opdateringer, uanset om du sover eller ej
Denne vejledning forklarer, hvordan man opsætter en DNS-server ved hjælp af Bind9 på Debian eller Ubuntu. Gennem hele artiklen skal du erstatte dit-domænenavn.com i overensstemmelse hermed. Ved th
I denne artikel vil vi se, hvordan du kompilerer og installerer Nginx mainline fra de officielle kilder til Nginx med PageSpeed-modulet, som giver dig mulighed for at
Bruger du et andet system? Introduktion Kanboard er et gratis og open source projektstyringssoftwareprogram, som er designet til at lette og visualisere
Bruger du et andet system? Gitea er et alternativt open source, selvhostet versionskontrolsystem drevet af Git. Gitea er skrevet på Golang og er
Introduktion Lynis er et gratis, open source-systemrevisionsværktøj, der bruges af mange systemadministratorer til at verificere integriteten og hærde deres systemer. jeg
Bruger du et andet system? Thelia er et open source-værktøj til at skabe e-business-websteder og administrere onlineindhold skrevet i PHP. Thelia kildekode i
Hvad skal du bruge En Vultr VPS med mindst 1 GB RAM. SSH-adgang (med root/administrative rettigheder). Trin 1: Installation af BungeeCord Første ting først
Golang er et programmeringssprog udviklet af Google. Takket være sin alsidighed, enkelhed og pålidelighed er Golang blevet en af de mest populære
Hvis du har glemt din MySQL root-adgangskode, kan du nulstille den ved at følge trinene i denne artikel. Processen er ret enkel og fungerer på disse
Der er tidspunkter, hvor vi skal dele filer, der skal kunne ses af Windows-klienter. Da Fuse-baserede systemer kun virker på Linux, må du godt introducere
I denne vejledning vil vi opsætte en Counter Strike: Source-spilserver på Debian 7. Disse kommandoer blev testet på Debian 7, men de burde også virke o
I denne vejledning lærer du, hvordan du opsætter en Unturned 2.2.5-server på en Vultr VPS, der kører Debian 8. Bemærk: Dette er en redigeret version af Unturned, der ikke
I denne vejledning lærer du, hvordan du installerer Cachet på Debian 8. Cachet er et kraftfuldt open source-statussidesystem. Installation Denne vejledning er i gang
Introduktion I denne skrive-up, gå godt igennem, hvordan du sikkerhedskopierer flere MySQL- eller MariaDB-databaser, der sidder på den samme maskine ved hjælp af et brugerdefineret bash-script
Denne artikel vil lære dig, hvordan du opsætter et chroot-fængsel på Debian. Jeg går ud fra, at du bruger Debian 7.x. Hvis du kører Debian 6 eller 8, kan dette virke, men
Bruger du et andet system? Reader Self 3.5 er en enkel og fleksibel, gratis og open source, selvhostet RSS-læser og Google Reader-alternativ. Læser Sel
Bruger du et andet system? Backdrop CMS 1.8.0 er et enkelt og fleksibelt, mobilvenligt, gratis og open source Content Management System (CMS), der giver os mulighed for
Kunstig intelligens er ikke i fremtiden, det er her lige i nuet I denne blog Læs, hvordan kunstig intelligens-applikationer har påvirket forskellige sektorer.
Er du også et offer for DDOS-angreb og forvirret over forebyggelsesmetoderne? Læs denne artikel for at løse dine spørgsmål.
Du har måske hørt, at hackere tjener mange penge, men har du nogensinde spekuleret på, hvordan tjener de den slags penge? lad os diskutere.
Vil du se revolutionerende opfindelser fra Google, og hvordan disse opfindelser ændrede livet for ethvert menneske i dag? Læs derefter til bloggen for at se opfindelser fra Google.
Konceptet med selvkørende biler til at køre på vejene ved hjælp af kunstig intelligens er en drøm, vi har haft i et stykke tid nu. Men på trods af flere løfter er de ingen steder at se. Læs denne blog for at lære mere...
Efterhånden som videnskaben udvikler sig i et hurtigt tempo og overtager en stor del af vores indsats, stiger risikoen for at udsætte os selv for en uforklarlig Singularitet. Læs, hvad singularitet kunne betyde for os.
Opbevaringsmetoderne for dataene har været under udvikling, kan være siden fødslen af dataene. Denne blog dækker udviklingen af datalagring på basis af en infografik.
Læs bloggen for at kende forskellige lag i Big Data-arkitekturen og deres funktionaliteter på den enkleste måde.
I denne digitalt drevne verden er smarte hjemmeenheder blevet en afgørende del af livet. Her er et par fantastiske fordele ved smarte hjemmeenheder om, hvordan de gør vores liv værd at leve og enklere.
For nylig udgav Apple macOS Catalina 10.15.4 en supplerende opdatering for at løse problemer, men det ser ud til, at opdateringen forårsager flere problemer, hvilket fører til mursten af mac-maskiner. Læs denne artikel for at lære mere