Kaip nustatyti neprižiūrimus atnaujinimus Debian 9 (Stretch)
Naudojate kitą sistemą? Jei perkate Debian serverį, visada turėtumėte turėti naujausius saugos pataisymus ir naujinimus, nesvarbu, ar miegate, ar ne
NodeBB yra Node.js pagrįstas forumas. 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 Ubuntu 18.04 LTS 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 Ubuntu versiją.
lsb_release -ds
# Ubuntu 18.04 LTS
Sukurkite naują non-root
vartotojo paskyrą su sudo
prieiga ir perjunkite į ją.
adduser johndoe --gecos "John Doe"
usermod -aG sudo johndoe
su - johndoe
PASTABA : pakeiskite johndoe
savo vartotojo vardu.
Nustatykite laiko juostą.
sudo dpkg-reconfigure tzdata
Įsitikinkite, kad jūsų sistema yra atnaujinta.
sudo apt update && sudo apt upgrade -y
Įdiekite reikiamus paketus.
sudo apt install -y git build-essential apt-transport-https
„NodeBB“ valdo Node.js, todėl jį reikia įdiegti. Rekomenduojama įdiegti dabartinę LTS versiją Node.js.
Įdiekite Node.js iš NodeSource saugyklos.
curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash -
sudo apt install -y nodejs
Patikrinkite Node.js ir npm įdiegimą.
node -v && npm -v
# v10.15.0
# 5.6.0
MongoDB yra numatytoji NodeBB duomenų bazė.
Įdiekite MongoDB.
sudo apt install -y mongodb
Patikrinkite versiją.
mongo --version | head -n 1 && mongod --version | head -n 1
# MongoDB shell version v3.6.3
# db version v3.6.3
Sukurkite „MongoDB“ duomenų bazę ir „NodeBB“ vartotoją.
Pirmiausia prisijunkite prie MongoDB serverio.
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 patikrinkite, ar anksčiau sukurtas administracinis vartotojas gali prisijungti.
sudo systemctl restart mongodb.service
mongo -u admin -p your_password --authenticationDatabase=admin
Įdiekite naujausią pagrindinės „Nginx“ versiją iš oficialios „Nginx“ saugyklos.
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/ubuntu/ $(lsb_release -sc) nginx\ndeb-src https://nginx.org/packages/mainline/ubuntu/ $(lsb_release -sc) nginx\n" >> /etc/apt/sources.list.d/nginx_mainline.list
exit
sudo apt update
sudo apt install -y nginx
Patikrinkite versiją.
sudo nginx -v
# nginx version: nginx/1.15.0
Įgalinkite ir paleiskite „Nginx“.
sudo systemctl enable nginx.service
sudo systemctl start nginx.service
Pagal numatytuosius nustatymus NodeBB veikia prievade 4567
. Kad nereikėtų įvesti 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 /etc/nginx/conf.d/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";
}
}
Pastaba: atnaujinkite server_name
direktyvą savo domenu / pagrindinio kompiuterio pavadinimu.
Patikrinkite konfigūraciją.
sudo nginx -t
Iš naujo įkelti Nginx.
sudo systemctl reload nginx.service
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 ~
source ~/.bashrc
Patikrinkite versiją.
acme.sh --version
# v2.7.9
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 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
Paleidus aukščiau nurodytas komandas, jūsų sertifikatai ir raktai bus šiuose kataloguose:
/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 /etc/nginx/conf.d/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 systemctl reload nginx.service
Sukurkite dokumento šakninį katalogą.
sudo mkdir -p /var/www/nodebb
Pakeiskite /var/www/nodebb
katalogo nuosavybės teisę į johndoe
.
sudo chown -R johndoe:johndoe /var/www/nodebb
Eikite į dokumento šakninį aplanką.
cd /var/www/nodebb
Klonuokite naujausią NodeBB versiją į dokumento šakninį aplanką.
git clone -b v1.10.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 forumą savo ž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
Sukurkite naują neprivilegijuotą nodebb
vartotoją.
sudo adduser nodebb
Pakeiskite /var/www/nodebb
katalogo nuosavybės teisę į nodebb
vartotoją.
sudo chown -R nodebb:nodebb /var/www/nodebb
Sukurkite sistemos nodebb.service
įrenginio konfigūracijos failą. Šis vieneto failas tvarkys NodeBB demono paleidimą. Paleiskite sudo vim /etc/systemd/system/nodebb.service
ir užpildykite failą tokiu turiniu:
[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
PASTABA: nustatykite vartotojo vardą ir katalogo kelius pagal pasirinktus vardus.
Įgalinkite nodebb.service
perkraunant ir nedelsdami paleiskite nodebb.service
.
sudo systemctl enable nodebb.service
sudo systemctl start nodebb.service
Patikrinkite nodebb.service
būseną.
sudo systemctl status nodebb.service
sudo systemctl is-enabled nodebb.service
Viskas. Jūsų „NodeBB“ egzempliorius dabar parengtas ir veikia.
Naudojate kitą sistemą? Jei perkate Debian serverį, visada turėtumėte turėti naujausius saugos pataisymus ir naujinimus, nesvarbu, ar miegate, ar ne
PHP ir susiję paketai yra dažniausiai naudojami komponentai diegiant žiniatinklio serverį. Šiame straipsnyje sužinosime, kaip nustatyti PHP 7.0 arba PHP 7.1 o
Šiame vadove paaiškinama, kaip nustatyti DNS serverį naudojant Bind9 sistemoje Debian arba Ubuntu. Visame straipsnyje atitinkamai pakeiskite savo-domeno-vardas.com. Prie th
Naudojate kitą sistemą? „Red5“ yra atvirojo kodo medijos serveris, įdiegtas „Java“, leidžiantis paleisti „Flash“ kelių vartotojų programas, tokias kaip tiesioginis srautas.
Šiame straipsnyje pamatysime, kaip sukompiliuoti ir įdiegti pagrindinę Nginx liniją iš oficialių Nginx šaltinių naudojant PageSpeed modulį, kuris leidžia
Naudojate kitą sistemą? Vanilla forumas yra atvirojo kodo forumo programa, parašyta PHP. Tai visiškai pritaikoma, paprasta naudoti ir palaiko išorinę
Naudojate kitą sistemą? Įvadas Kanboard yra nemokama atvirojo kodo projektų valdymo programinė įranga, skirta palengvinti ir vizualizuoti
Naudojate kitą sistemą? Įvadas Kanboard yra nemokama atvirojo kodo projektų valdymo programinė įranga, skirta palengvinti ir vizualizuoti
Naudojate kitą sistemą? Gitea yra alternatyvi atvirojo kodo, savarankiškai priglobta versijų valdymo sistema, kurią maitina Git. Gitea parašyta golangu ir yra
Naudojate kitą sistemą? Gitea yra alternatyvi atvirojo kodo, savarankiškai priglobta versijų valdymo sistema, kurią maitina git. Gitea parašyta golangu ir yra
Įvadas Lynis yra nemokama atvirojo kodo sistemos audito priemonė, kurią naudoja daugelis sistemų administratorių, kad patikrintų vientisumą ir sustiprintų savo sistemas. aš
Naudojate kitą sistemą? Thelia yra atvirojo kodo įrankis, skirtas kurti el. verslo svetaines ir valdyti PHP parašytą internetinį turinį. Thelia šaltinio kodas i
Naudojate kitą sistemą? „Microweber“ yra atvirojo kodo „drag and drop“ TVS ir internetinė parduotuvė. „Microweber“ šaltinio kodas yra „GitHub“. Šis vadovas jums parodys
Naudojate kitą sistemą? „Microweber“ yra atvirojo kodo „drag and drop“ TVS ir internetinė parduotuvė. „Microweber“ šaltinio kodas yra „GitHub“. Šis vadovas jums parodys
Naudojate kitą sistemą? DotCMS yra atvirojo kodo, įmonės lygio turinio valdymo sistema, parašyta Java. Jame yra beveik visos reikalingos funkcijos t
Naudojate kitą sistemą? BigTree CMS 4.2 yra greita ir lengva, nemokama ir atviro kodo, įmonės lygio turinio valdymo sistema (TVS), turinti platų
Ko jums reikia Vultr VPS su mažiausiai 1 GB RAM. SSH prieiga (su root / administratoriaus teisėmis). 1 veiksmas: „BungeeCord“ diegimas Pirmiausia
Naudojate kitą sistemą? Docker yra programa, leidžianti diegti programas, kurios vykdomos kaip konteineriai. Tai buvo parašyta populiarioje Go programoje
Golang yra programavimo kalba, kurią sukūrė Google. Dėl savo universalumo, paprastumo ir patikimumo Golangas tapo vienu populiariausių
Kas yra purvina karvė (CVE-2016-5195)? „Dirty Cow“ pažeidžiamumas išnaudojamas „Linux“ apdorojant kodą. Tai leidžia neprivilegijuotam vartotojui gai
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į