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
„Wekan“ yra „kanban“ plokštė, sukurta naudojant „Meteor JavaScript“ sistemą. Tai laikoma atvirojo kodo ir savarankiškai priglobta „Trello“ alternatyva, teikianti beveik tas pačias funkcijas. Tai leidžia kurti kortele pagrįstus „užduočių“ valdymo sąrašus. Wekan labai padeda padidinti produktyvumą dirbant bendradarbiavimo aplinkoje. „Wekan“ turi visiškai reaguojančią žiniatinklio sąsają ir aktyviai verčiama į daugelį kalbų.
Šioje pamokoje naudosime wekan.example.com
kaip domeno pavadinimą, nukreiptą į Vultr egzempliorių. Būtinai pakeiskite visus pavyzdinio domeno pavadinimo atvejus tikruoju.
Atnaujinkite bazinę sistemą naudodami vadovą Kaip atnaujinti Ubuntu 16.04 . Kai sistema bus atnaujinta, toliau diegkite priklausomybes.
Wekan palaiko tik Node.js LTS version 4.8
. Norėdami įdiegti Node.js, naudosime mazgo versijos tvarkyklę. Įdiekite nvm
paleisdami diegimo programos scenarijų.
wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.4/install.sh | bash
Norėdami iš karto pradėti naudoti nvm
, paleiskite tai.
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
Jei nvm
įdiegta sėkmingai, turėtumėte turėti galimybę patikrinti jo versiją.
user@vultr:~$ nvm --version
0.33.4
Įdiekite Node.js.
nvm install v4.8
Nustatykite numatytąją Node.js versiją.
nvm use node
Jei Node.js sėkmingai įdiegtas, turėtumėte turėti galimybę patikrinti jo versiją.
node -v
Pamatysite šią išvestį.
user@vultr:~$ node -v
v4.8.4
NVM įdiegia Node.js tik dabartiniam vartotojui. Kad Node.js būtų pasiekiamas visame pasaulyje, paleiskite tai.
n=$(which node);n=${n%/bin/node}; chmod -R 755 $n/bin/*; sudo cp -r $n/{bin,lib,share} /usr
Node.js dabar galima kaip /usr/bin/node
.
user@vultr:~$ sudo which node
/usr/bin/node
MongoDB yra nemokamas atvirojo kodo NoSQL duomenų bazės serveris. Skirtingai nuo tradicinių duomenų bazių, kuriose duomenims tvarkyti naudojamos lentelės, MongoDB yra orientuota į dokumentus ir naudoja į JSON panašius dokumentus be schemų. „Wekan“ savo duomenims saugoti naudoja „MongoDB“.
Wekan suderinamas tik su MongoDB version 3.2
. Sukurkite naują saugyklos failą.
echo "deb http://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.2 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.2.list
Importuokite MongoDB viešąjį GPG raktą ir atnaujinkite paketų sąrašą.
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
sudo apt update
Įdiekite MongoDB.
sudo apt install -y mongodb-org
Paleiskite MongoDB ir įjunkite jį automatiškai.
sudo systemctl start mongod
sudo systemctl enable mongod
Pagal numatytuosius nustatymus MongoDB serveryje autentifikavimas neįjungtas. Bet kuris vartotojas, turintis prieigą prie serverio terminalo, turės visas MongoDB diegimo teises. Norėdami apsaugoti duomenų bazės serverį ir apriboti neprivilegijuoto vartotojo prieigą, serveryje turėsime nustatyti autentifikavimą.
MongoDB suteikia mongo
apvalkalą, kuris naudojamas užklausoms vykdyti MongoDB. Perjungti į mongo
apvalkalą.
mongo
Sukurkite naują MongoDB vartotoją su root teisėmis. Galite naudoti bet kurį pasirinktą vartotojo vardą. Būtinai pakeiskite slaptažodį .
db.createUser(
{
user: "admin",
pwd: "StrongAdminPassword",
roles: [ { role: "root", db: "admin" } ]
}
)
Turėtumėte pamatyti šią išvestį.
user@vultr:~$ mongo
MongoDB shell version: 3.2.17
connecting to: test
Welcome to the MongoDB shell.
...
2017-09-30T18:11:40.274+0000 I CONTROL [initandlisten]
> db.createUser(
... {
... user: "admin",
... pwd: "StrongAdminPassword",
... roles: [ { role: "root", db: "admin" } ]
... }
... )
Successfully added user: {
"user" : "admin",
"roles" : [
{
"role" : "root",
"db" : "admin"
}
]
}
Išeikite iš MongoDB komandų sąsajos su Linux terminalu paspausdami " Ctrl+C
".
Redaguokite MongoDB konfigūracijos failą.
sudo nano /etc/mongod.conf
Failo pabaigoje pridėkite šią eilutę.
security:
authorization: enabled
Iš naujo paleiskite MongoDB, kad konfigūracijos pakeitimas įsigaliotų.
sudo systemctl restart mongod
Dabar, kai įjungta sauga, galite patikrinti, ar ji veikia, vėl perjungdami į mongo apvalkalą naudodami mongo
komandą. Šį kartą, jei vykdysite užklausą, pvz., show dbs
norėdami parodyti duomenų bazių sąrašą, pamatysite pranešimą, kuriame pranešama apie nepavykusią autorizaciją. Išbandę sudo
prisijungimą kaip naują ką tik sukurtą vartotoją, vėl išeikite į vartotoją.
Prisijunkite kaip administrator
ką tik sukurtas vartotojas.
mongo -u admin -p
Pateikite vartotojo slaptažodį sėkmingam prisijungimui. Sukurkite naują wekan
duomenų bazės vartotoją, kuris bus naudojamas Wekan duomenims saugoti.
use wekan
db.createUser(
{
user: "wekan",
pwd: "StrongPassword",
roles: ["readWrite"]
}
)
Būtinai pakeiskite StrongPassword
stipriu slaptažodžiu. Pamatysite tokią išvestį.
user@vultr:~$ mongo -u admin -p
MongoDB shell version: 3.2.17
Enter password:
connecting to: test
...
2017-09-30T18:13:26.007+0000 I CONTROL [initandlisten]
>
> use wekan
switched to db wekan
> db.createUser(
... {
... user: "wekan",
... pwd: "StrongPassword",
... roles: ["readWrite"]
... }
... )
Successfully added user: { "user" : "wekan", "roles" : [ "readWrite" ] }
Patikrinkite naujausią nuorodą į „ Wekan“ leidimą „Github“, nes nauji leidimai pasirodo labai dažnai. Atsisiųskite naujausią „Wekan“ versiją iš „Github“, pakeisdami nuorodą į diegimo programos paketą.
cd ~
wget https://github.com/wekan/wekan/releases/download/v0.44/wekan-0.44.tar.gz
Ištraukite atsisiųstą archyvą į naują katalogą pavadinimu wekan
.
mkdir wekan
tar xzvf wekan-*.tar.gz -C wekan
Įdiekite Node.js priklausomybes.
cd wekan/bundle/programs/server && npm install
„Wekan“ serveris nuskaito konfigūracijas iš aplinkos kintamųjų. Vykdykite šias komandas, kad nustatytumėte konfigūracijas kaip aplinkos kintamuosius.
export MONGO_URL='mongodb://wekan:[email protected]:27017/wekan?authSource=wekan'
export ROOT_URL='http://wekan.example.com'
export MAIL_URL='smtp://user:[email protected]:25/'
export MAIL_FROM='[email protected]'
export PORT=4000
Būtinai pakeiskite wekan
sukurto vartotojo MongoDB slaptažodį . Be to, atnaujinkite pašto URL pagal SMTP serverio nustatymus. Jei neturite paruošto el. pašto serverio, šią konfigūraciją visada galėsite pakeisti vėliau.
Norėdami nedelsiant pradėti taikyti programą.
cd ~/wekan/bundle
node main.js
Dabar galite pasiekti programą apsilankę adresu http://wekan.example.com:4000
. Pamatysite sąsają, skirtą prisijungti prie Wekan kanban lentos.
Gamybiniam naudojimui rekomenduojama nustatyti atvirkštinį tarpinį serverį, kuris aptarnautų programą standartiniame HTTP
prievade, ir systemd
paslaugą, skirtą taikymo procesui valdyti. Šiame vadove naudosime „Nginx“ žiniatinklio serverį kaip atvirkštinį tarpinį serverį, apsaugotą „Let's Encrypt“ nemokamu SSL.
Pridėkite Certbot PPA
saugyklą prie sistemos.
sudo add-apt-repository ppa:certbot/certbot
sudo apt update
Įdiekite „Nginx“ ir „Certbot“, kuri yra „Let's Encrypt CA“ kliento programa.
sudo apt -y install certbot nginx
Pastaba: domeno pavadinimas, kurį naudojate norėdami gauti sertifikatus iš Let's Encrypt CA, turi būti nukreiptas į serverį. Prieš išduodamas sertifikatus klientas patikrina domeno autoritetą .
Sukurkite SSL sertifikatus.
sudo certbot certonly --standalone -d wekan.example.com
Sugeneruoti sertifikatai greičiausiai bus saugomi /etc/letsencrypt/live/wekan.example.com/
kataloge. SSL sertifikatas bus saugomas kaip fullchain.pem
, o privatus raktas bus saugomas kaip privkey.pem
.
„Encrypt“ sertifikatai baigiasi po 90 dienų, todėl rekomenduojama nustatyti automatinį sertifikatų atnaujinimą naudojant „Cronjob“. Cron yra sistemos paslauga, naudojama periodinėms užduotims vykdyti.
Atidarykite cron darbo failą.
sudo crontab -e
Failo pabaigoje pridėkite šią eilutę.
30 5 * * * /usr/bin/certbot renew --quiet
Pirmiau nurodytas cron darbas bus vykdomas kiekvieną dieną 5:30 val. Jei baigiasi sertifikatų galiojimo laikas, jis automatiškai juos atnaujins.
Sukurkite naują virtualų pagrindinį kompiuterį.
sudo nano /etc/nginx/sites-available/wekan.example.com.conf
Užpildykite failą taip.
upstream wekan {
server 127.0.0.1:4000;
}
server {
listen 80;
listen [::]:80;
server_name wekan.example.com;
location / {
if ($ssl_protocol = "") {
rewrite ^ https://$server_name$request_uri? permanent;
}
}
}
server {
listen 443 ssl;
listen [::]:443 ssl;
server_name wekan.example.com;
add_header Strict-Transport-Security "max-age=15768000";
ssl_certificate /etc/letsencrypt/live/wekan.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/wekan.example.com/privkey.pem;
ssl_session_timeout 1d;
ssl_session_cache shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS';
ssl_prefer_server_ciphers on;
ssl_stapling on;
ssl_stapling_verify on;
error_page 497 https://$host:$server_port$request_uri;
location / {
proxy_pass http://wekan;
proxy_http_version 1.1;
proxy_set_header Host $host:$server_port;
proxy_set_header Referer $http_referer;
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 https;
proxy_set_header X-Forwarded-Ssl on;
proxy_set_header X-Nginx-Proxy true;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_redirect off;
proxy_send_timeout 86400;
proxy_read_timeout 86400;
}
}
wekan.example.com
Aukščiau pateiktoje konfigūracijoje pakeiskite tikruoju domeno pavadinimu.
Įgalinti naujai pridėtą svetainę.
sudo ln -s /etc/nginx/sites-available/wekan.example.com.conf /etc/nginx/sites-enabled/wekan.example.com.conf
Iš naujo paleiskite „Nginx“, kad pakeitimai įsigaliotų.
sudo systemctl restart nginx
Įgalinkite „Nginx“ automatiškai paleisti įkrovos metu.
sudo systemctl enable nginx
Sukurkite naują vartotoją, kad procesas vyktų.
sudo adduser wekan --shell /usr/sbin/nologin --home /opt/wekan
Dabar perkelkite visus failus į /opt/wekan
katalogą.
sudo mv ~/wekan/* /opt/wekan/
Suteikti failų nuosavybės teisę naujai sukurtam vartotojui.
sudo chown -R wekan:wekan /opt/wekan
Wekan neima duomenų iš jokio konfigūracijos failo. Vietoj to, jis pasiekia jį iš aplinkos kintamųjų. Sukursime naują failą aplinkos kintamiesiems saugoti. Failas, kuriame yra aplinkos kintamieji, bus perduotas per Systemd
paslaugą.
Sukurkite naują failą aplinkos kintamiesiems saugoti.
sudo nano /opt/wekan/config.env
Užpildykite failą tokiu turiniu.
MONGO_URL='mongodb://wekan:[email protected]:27017/wekan?authSource=wekan'
ROOT_URL='http://wekan.example.com'
MAIL_URL='smtp://user:[email protected]:25/'
MAIL_FROM='[email protected]'
PORT=4000
HTTP_FORWARDED_COUNT=1
Būtinai pakeiskite username
ir password
.
Suteikite wekan
vartotojui nuosavybės teisę paleisdami.
sudo chown -R wekan:wekan /opt/wekan/config.env
Sukurkite naują paslaugos failą Wekan systemd paslaugai.
sudo nano /etc/systemd/system/wekan.service
Užpildykite failą taip.
[Unit]
Description=Wekan Server
After=syslog.target
After=network.target
[Service]
Type=simple
Restart=on-failure
StartLimitInterval=86400
StartLimitBurst=5
RestartSec=10
ExecStart=/usr/bin/node /opt/wekan/bundle/main.js
EnvironmentFile=/opt/wekan/config.env
ExecReload=/bin/kill -USR1 $MAINPID
RestartSec=10
User=wekan
Group=wekan
WorkingDirectory=/opt/wekan
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=Wekan
[Install]
WantedBy=multi-user.target
Išsaugokite failą ir išeikite iš redaktoriaus. Dabar galite lengvai paleisti Wekan.
sudo systemctl start wekan
Įgalinti Wekan automatiškai paleisti įkrovos metu.
sudo systemctl enable wekan
Norėdami patikrinti Wekan paslaugos būseną.
sudo systemctl status wekan
Dabar galite pasiekti Wekan egzempliorių https://wekan.example.com
. Pradėkite kurdami naują paskyrą. Sukūrę paskyrą, naujai sukurtam vartotojui galite įgalinti administravimo prieigą. Prisijunkite prie MongoDB apvalkalo kaip administracinis vartotojas.
mongo -u wekan -p --authenticationDatabase "wekan"
Dabar pasirinkite wekan
duomenų bazę ir atnaujinkite objektą, kad vartotojas būtų paskelbtas administratoriaus vartotoju.
use wekan
db.users.update({username:'admin_user'},{$set:{isAdmin:true}})
Būtinai pakeiskite admin_user
tikruoju naudotojo vardu, kurį sukūrėte. Administratoriaus sąsajoje galėsite išjungti savarankišką registraciją ir atnaujinti SMTP nustatymus.
Sveikiname, sėkmingai įdiegėte „Wekan Kanban“ plokštę savo „Vultr Ubuntu“ egzemplioriuje.
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į