Kaip įdiegti Tiny Tiny RSS skaitytuvą „FreeBSD 11 FAMP VPS“.
Naudojate kitą sistemą? Tiny Tiny RSS Reader yra nemokama ir atviro kodo savarankiškai priglobta žiniatinklio naujienų kanalo (RSS/Atom) skaitytuvas ir kaupiklis, skirtas
NodeBB yra Node.js pagrįsta forumo programinė įranga. Jis naudoja žiniatinklio lizdus momentinei sąveikai ir pranešimams realiuoju laiku. „NodeBB“ šaltinio kodas yra viešai priglobtas „ Github“ . Šis vadovas padės jums atlikti NodeBB diegimo procesą naujame FreeBSD 12 Vultr egzemplioriuje, naudojant Node.js, MongoDB kaip duomenų bazę, Nginx kaip atvirkštinį tarpinį serverį ir Acme.sh SSL sertifikatams.
NodeBB reikia įdiegti šią programinę įrangą:
A
/ AAAA
įrašaisPatikrinkite FreeBSD versiją.
uname -ro
# FreeBSD 12.0-RELEASE
Įsitikinkite, kad jūsų FreeBSD sistema yra atnaujinta.
freebsd-update fetch install
pkg update && pkg upgrade -y
Įdiekite reikiamus paketus, jei jų jūsų sistemoje nėra.
pkg install -y sudo vim unzip wget git bash socat gcc8 pkgconf vips
Sukurkite naują vartotojo paskyrą su pageidaujamu vartotojo vardu (naudosime 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!
Vykdykite visudo
komandą ir panaikinkite %wheel ALL=(ALL) ALL
eilutės komentarą, kad wheel
grupės nariai galėtų vykdyti bet kurią komandą.
visudo
# Uncomment by removing hash (#) sign
# %wheel ALL=(ALL) ALL
Dabar perjunkite į naujai sukurtą vartotoją naudodami su
.
su - johndoe
PASTABA: pakeiskite johndoe
savo vartotojo vardu.
Nustatykite laiko juostą.
sudo tzsetup
„NodeBB“ valdo Node.js, todėl jį reikia įdiegti. Rekomenduojama įdiegti dabartinę LTS versiją Node.js.
Įdiekite Node.js ir npm.
sudo pkg install -y node10 npm-node10
Patikrinkite versijas.
node -v && npm -v
# v10.15.3
# 6.9.0
MongoDB yra numatytoji NodeBB duomenų bazė.
Įdiekite MongoDB.
sudo pkg install -y mongodb40
Patikrinkite versiją.
mongo --version | head -n 1 && mongod --version | head -n 1
# MongoDB shell version v4.0.6
# db version v4.0.6
Įgalinkite ir paleiskite MongoDB.
sudo sysrc mongod_enable=yes
sudo service mongod start
Sukurkite NodeBB duomenų bazę ir vartotoją.
Pirmiausia prisijunkite prie MongoDB.
mongo
Perjunkite į integruotą admin
duomenų bazę.
> use admin
Sukurkite administracinį vartotoją.
> db.createUser( { user: "admin", pwd: "<Enter a secure password>", roles: [ { role: "readWriteAnyDatabase", db: "admin" }, { role: "userAdminAnyDatabase", db: "admin" } ] } )
PASTABA: pakeiskite rezervuotąją vietą <Enter a secure password>
savo pasirinktu slaptažodžiu.
Pridėkite naują duomenų bazę pavadinimu nodebb
.
> use nodebb
Bus sukurta duomenų bazė ir kontekstas perjungtas į nodebb
. Tada sukurkite nodebb
vartotoją su atitinkamomis teisėmis.
> db.createUser( { user: "nodebb", pwd: "<Enter a secure password>", roles: [ { role: "readWrite", db: "nodebb" }, { role: "clusterMonitor", db: "admin" } ] } )
PASTABA: Vėlgi, pakeiskite rezervuotąją vietą <Enter a secure password>
savo pasirinktu slaptažodžiu.
Išeikite iš Mongo apvalkalo.
> quit()
Iš naujo paleiskite MongoDB ir įsitikinkite, kad anksčiau sukurtas administracinis vartotojas gali prisijungti.
sudo service mongod restart
mongo -u admin -p your_password --authenticationDatabase=admin
Įdiekite „Nginx“.
sudo pkg install -y nginx
Patikrinkite versiją.
nginx -v
# nginx version: nginx/1.14.2
Įgalinkite ir paleiskite „Nginx“.
sudo sysrc nginx_enable=yes
sudo service nginx start
Pagal numatytuosius nustatymus NodeBB veikia prievade 4567
. Kad nereikėtų rašyti http://example.com:4567
, sukonfigūruosime Nginx kaip atvirkštinį NodeBB programos tarpinį serverį. Kiekviena prievado 80
arba 443
, jei naudojamas SSL, užklausa bus perduota į prievadą 4567
.
Paleiskite sudo vim /usr/local/etc/nginx/nodebb.conf
ir užpildykite jį naudodami toliau pateiktą pagrindinę atvirkštinio tarpinio serverio konfigūraciją.
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";
}
}
Aukščiau pateiktoje konfigūracijoje atnaujinkite server_name
direktyvą savo domenu / pagrindinio kompiuterio pavadinimu.
Išsaugokite failą ir išeikite su :+ W+ Q.
Dabar turime įtraukti nodebb.conf
į pagrindinį nginx.conf
failą.
Vykdykite sudo vim /usr/local/etc/nginx/nginx.conf
ir pridėkite šią eilutę prie http {}
bloko.
include nodebb.conf;
Patikrinkite konfigūraciją.
sudo nginx -t
Iš naujo įkelti Nginx.
sudo service nginx reload
Apsaugoti forumą naudojant HTTPS nebūtina, tačiau tai užtikrins jūsų svetainės srautą. Acme.sh yra gryna unix apvalkalo programinė įranga, skirta gauti SSL sertifikatus iš Let's Encrypt be jokių priklausomybių.
Atsisiųskite ir įdiekite 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 ~
Patikrinkite versiją.
/etc/letsencrypt/acme.sh --version
# v2.8.1
Gaukite RSA ir ECDSA sertifikatus 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
Paleidus aukščiau nurodytas komandas, jūsų sertifikatai ir raktai bus:
/etc/letsencrypt/forum.example.com
./etc/letsencrypt/forum.example.com_ecc
.Gavę sertifikatus iš Let's Encrypt, turime sukonfigūruoti Nginx, kad juos naudotų.
Paleiskite sudo vim /usr/local/etc/nginx/nodebb.conf
dar kartą ir sukonfigūruokite „Nginx“ kaip HTTPS atvirkštinį tarpinį serverį.
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";
}
}
Patikrinkite konfigūraciją.
sudo nginx -t
Iš naujo įkelti Nginx.
sudo service nginx reload
Sukurkite dokumento šakninį katalogą.
sudo mkdir -p /usr/local/www/nodebb
Pakeiskite /usr/local/www/nodebb
katalogo nuosavybės teisę į johndoe
.
sudo chown -R johndoe:johndoe /usr/local/www/nodebb
Eikite į dokumento šakninį aplanką.
cd /usr/local/www/nodebb
Klonuokite naujausią NodeBB į dokumento šakninį aplanką.
git clone -b v1.11.x https://github.com/NodeBB/NodeBB.git .
Vykdykite NodeBB sąrankos komandą ir atsakykite į kiekvieną klausimą, kai būsite paraginti.
./nodebb setup
Baigę „NodeBB“ sąranką, paleiskite, ./nodebb start
kad rankiniu būdu paleistumėte „NodeBB“ serverį.
./nodebb start
Po šios komandos galėsite pasiekti savo NodeBB forumo egzempliorių žiniatinklio naršyklėje.
Paleidus naudojant ./nodebb start
, „NodeBB“ nebus automatiškai paleistas, kai sistema paleidžiama iš naujo. Norėdami to išvengti, turėsime nustatyti NodeBB kaip sistemos paslaugą.
Jei veikia, sustabdykite NodeBB.
./nodebb stop
Įdiekite PM2 visame pasaulyje.
sudo npm install pm2 -g
Patikrinkite versiją.
pm2 -v
# 3.5.0
Eikite į NodeBB dokumento šaknį.
cd /usr/local/www/nodebb
Paleiskite NodeBB per PM2.
pm2 start app.js
Išvardykite NodeBB procesą.
pm2 ls
Aptikti turimą init sistemą.
pm2 startup
Nukopijuokite ir įklijuokite šios komandos išvestį į CLI, kad nustatytumėte paleisties kabliuką.
Išsaugokite procesų sąrašą.
pm2 save
Viskas. Jūsų „NodeBB“ egzempliorius dabar parengtas ir veikia.
Naudojate kitą sistemą? Tiny Tiny RSS Reader yra nemokama ir atviro kodo savarankiškai priglobta žiniatinklio naujienų kanalo (RSS/Atom) skaitytuvas ir kaupiklis, skirtas
Naudojate kitą sistemą? Wiki.js yra nemokama atvirojo kodo moderni wiki programa, sukurta naudojant Node.js, MongoDB, Git ir Markdown. Wiki.js šaltinio kodas yra viešas
Naudojate kitą sistemą? Pagekit 1.0 TVS yra graži, modulinė, išplečiama ir lengva, nemokama ir atviro kodo turinio valdymo sistema (TVS) su
Naudojate kitą sistemą? MODX Revolution yra greita, lanksti, keičiamo dydžio atvirojo kodo, įmonės lygio turinio valdymo sistema (TVS), parašyta PHP. Tai i
Šiame straipsnyje paaiškinama, kaip nustatyti OpenBSD 5.5 (64 bitų) KVM naudojant Vultr VPS. 1 veiksmas. Prisijunkite prie Vultr valdymo pulto. 2 veiksmas. Spustelėkite DEPLOY
Naudojate kitą sistemą? osTicket yra atvirojo kodo klientų aptarnavimo bilietų pardavimo sistema. „osTicket“ šaltinio kodas viešai priglobtas „Github“. Šioje pamokoje
Using a Different System? Flarum is a free and open-source next-generation forum software that makes online discussion fun. Flarum source code is hosted o
Naudojate kitą sistemą? TLS 1.3 yra Transport Layer Security (TLS) protokolo versija, kuri buvo paskelbta 2018 m. kaip siūlomas standartas RFC 8446.
Įvadas WordPress yra dominuojanti turinio valdymo sistema internete. Tai suteikia viską nuo tinklaraščių iki sudėtingų svetainių su dinamišku turiniu
Naudojate kitą sistemą? Subrion 4.1 TVS yra galinga ir lanksti atvirojo kodo turinio valdymo sistema (TVS), kuri suteikia intuityvų ir aiškų turinį
Ši pamoka parodys, kaip sukonfigūruoti DNS paslaugą, kurią būtų lengva prižiūrėti, lengva konfigūruoti ir kuri paprastai yra saugesnė nei klasikinis BIN.
FEMP stekas, panašus į LEMP steką Linux sistemoje, yra atvirojo kodo programinės įrangos rinkinys, kuris paprastai įdiegiamas kartu, kad įgalintų FreeBS.
MongoDB yra pasaulinės klasės NoSQL duomenų bazė, kuri dažnai naudojama naujesnėse žiniatinklio programose. Jis teikia didelio našumo užklausas, dalijimąsi ir replikaciją
Naudojate kitą sistemą? Monica yra atviro kodo asmeninių santykių valdymo sistema. Pagalvokite apie tai kaip apie CRM (populiarų įrankį, kurį naudoja pardavimų komandos th
Įvadas Ši pamoka parodo OpenBSD kaip el. prekybos sprendimą naudojant PrestaShop ir Apache. Apache reikalinga, nes PrestaShop turi sudėtingą UR
Naudojate kitą sistemą? Fork yra atvirojo kodo TVS, parašyta PHP. „Forks“ šaltinio kodas yra „GitHub“. Šis vadovas parodys, kaip įdiegti Fork CM
Naudojate kitą sistemą? „Directus 6.4 CMS“ yra galinga ir lanksti, nemokama ir atvirojo kodo turinio valdymo sistema (TVS), kuri suteikia kūrėjams
Į VPS serverius dažnai nusitaiko įsibrovėliai. Įprastas atakų tipas rodomas sistemos žurnaluose kaip šimtai neteisėtų ssh prisijungimo bandymų. Nustatyti
Įvadas OpenBSD 5.6 pristatė naują demoną pavadinimu httpd, kuris palaiko CGI (per FastCGI) ir TLS. Norint įdiegti naują http, nereikia jokių papildomų darbų
Ši pamoka parodys, kaip įdiegti grupinę programą iRedMail naujai įdiegus FreeBSD 10. Turėtumėte naudoti serverį, turintį bent vieną gigabaitą.
Dirbtinis intelektas nėra ateityje, jis čia, dabartyje Šiame tinklaraštyje Skaitykite, kaip dirbtinio intelekto programos paveikė įvairius sektorius.
Ar taip pat esate DDOS atakų auka ir esate sumišęs dėl prevencijos metodų? Perskaitykite šį straipsnį, kad išspręstumėte savo užklausas.
Galbūt girdėjote, kad įsilaužėliai uždirba daug pinigų, bet ar kada susimąstėte, kaip jie uždirba tokius pinigus? padiskutuokime.
Ar norite pamatyti revoliucinius „Google“ išradimus ir kaip šie išradimai pakeitė kiekvieno žmogaus gyvenimą šiandien? Tada skaitykite tinklaraštį, kad pamatytumėte „Google“ išradimus.
Savavaledžių automobilių koncepcija, kuri išvažiuotų į kelius su dirbtinio intelekto pagalba, yra svajonė, kurią jau kurį laiką svajojame. Tačiau nepaisant kelių pažadų, jų niekur nematyti. Skaitykite šį tinklaraštį, kad sužinotumėte daugiau…
Kadangi mokslas sparčiai vystosi, perimdamas daug mūsų pastangų, taip pat didėja rizika, kad pateksime į nepaaiškinamą singuliarumą. Skaitykite, ką mums gali reikšti išskirtinumas.
Duomenų saugojimo metodai gali būti tobulinami nuo pat Duomenų gimimo. Šiame tinklaraštyje, remiantis infografika, aprašoma duomenų saugojimo raida.
Skaitykite tinklaraštį, kad paprasčiausiai sužinotumėte apie skirtingus didžiųjų duomenų architektūros sluoksnius ir jų funkcijas.
Šiame skaitmeniniu būdu pagrįstame pasaulyje išmanieji namų įrenginiai tapo svarbia gyvenimo dalimi. Štai keletas nuostabių išmaniųjų namų įrenginių privalumų, kaip jie daro mūsų gyvenimą vertą gyventi ir paprastesnį.
Neseniai „Apple“ išleido „macOS Catalina 10.15.4“ priedą, skirtą problemoms išspręsti, tačiau atrodo, kad dėl atnaujinimo kyla daugiau problemų, dėl kurių „Mac“ įrenginiai blokuojami. Norėdami sužinoti daugiau, perskaitykite šį straipsnį