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
NGINX gali būti naudojamas kaip HTTP/HTTPS serveris, atvirkštinis tarpinis serveris, pašto tarpinis serveris, apkrovos balansavimo priemonė, TLS terminatorius arba talpyklos serveris. Pagal dizainą jis yra gana modulinis. Jame yra vietinių modulių ir trečiųjų šalių modulių, kuriuos sukūrė bendruomenė. Parašyta C programavimo kalba, tai labai greita ir lengva programinė įranga.
NOTE: NGINX has two version streams that run in parallel - stable and mainline. Both versions can be used on a production server. It is recommended to use the mainline version in production.
Įdiegti NGINX iš šaltinio kodo yra gana „lengva“ – atsisiųskite naujausią NGINX šaltinio kodo versiją, sukonfigūruokite, sukurkite ir įdiekite.
Šioje pamokoje naudosiu pagrindinę versiją, kuri rašymo metu yra 1.13.1. Atitinkamai atnaujinkite versijų numerius, kai pasirodys naujesnės versijos.
Privalomi reikalavimai:
Neprivalomi reikalavimai:
Sukurkite įprastą vartotoją su sudo
prieiga .
Perjungti į naują vartotoją:
su - <username>
Atnaujinti sistemą:
sudo apt update && sudo apt upgrade -y
NGINX yra programa, parašyta C, todėl turime įdiegti C kompiliatorių (GCC).
sudo apt install build-essential -y
Atsisiųskite naujausią NGINX šaltinio kodo versiją ir ištraukite ją:
wget https://nginx.org/download/nginx-1.13.1.tar.gz && tar zxvf nginx-1.13.1.tar.gz
Atsisiųskite NGINX priklausomybių šaltinio kodą ir ištraukite juos:
# PCRE version 4.4 - 8.40
wget https://ftp.pcre.org/pub/pcre/pcre-8.40.tar.gz && tar xzvf pcre-8.40.tar.gz
# zlib version 1.1.3 - 1.2.11
wget http://www.zlib.net/zlib-1.2.11.tar.gz && tar xzvf zlib-1.2.11.tar.gz
# OpenSSL version 1.0.2 - 1.1.0
wget https://www.openssl.org/source/openssl-1.1.0f.tar.gz && tar xzvf openssl-1.1.0f.tar.gz
Pašalinti visus .tar.gz
failus. Mums jų nebereikia:
rm -rf *.tar.gz
Eikite į NGINX šaltinio katalogą:
cd ~/nginx-1.13.1
Jei reikia pagalbos, galite pateikti galimų konfigūracijos jungiklių sąrašą paleisdami:
./configure --help
Konfigūruokite, sukompiliuokite ir įdiekite NGINX:
./configure --prefix=/usr/share/nginx \
--sbin-path=/usr/sbin/nginx \
--modules-path=/usr/lib/nginx/modules \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--pid-path=/run/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--user=www-data \
--group=www-data \
--build=Ubuntu \
--http-client-body-temp-path=/var/lib/nginx/body \
--http-fastcgi-temp-path=/var/lib/nginx/fastcgi \
--http-proxy-temp-path=/var/lib/nginx/proxy \
--http-scgi-temp-path=/var/lib/nginx/scgi \
--http-uwsgi-temp-path=/var/lib/nginx/uwsgi \
--with-openssl=../openssl-1.1.0f \
--with-openssl-opt=enable-ec_nistp_64_gcc_128 \
--with-openssl-opt=no-nextprotoneg \
--with-openssl-opt=no-weak-ssl-ciphers \
--with-openssl-opt=no-ssl3 \
--with-pcre=../pcre-8.40 \
--with-pcre-jit \
--with-zlib=../zlib-1.2.11 \
--with-compat \
--with-file-aio \
--with-threads \
--with-http_addition_module \
--with-http_auth_request_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_gunzip_module \
--with-http_gzip_static_module \
--with-http_mp4_module \
--with-http_random_index_module \
--with-http_realip_module \
--with-http_slice_module \
--with-http_ssl_module \
--with-http_sub_module \
--with-http_stub_status_module \
--with-http_v2_module \
--with-http_secure_link_module \
--with-mail \
--with-mail_ssl_module \
--with-stream \
--with-stream_realip_module \
--with-stream_ssl_module \
--with-stream_ssl_preread_module \
--with-debug \
--with-cc-opt='-g -O2 -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2' \
--with-ld-opt='-Wl,-Bsymbolic-functions -fPIE -pie -Wl,-z,relro -Wl,-z,now'
make
sudo make install
Pašalinkite visus atsisiųstus failus iš namų katalogo, šiuo atveju /home/username
:
cd ~
rm -r nginx-1.13.1/ openssl-1.1.0f/ pcre-8.40/ zlib-1.2.11/
Patikrinkite NGINX versiją ir kompiliavimo laiko parinktis:
sudo nginx -v && sudo nginx -V
# nginx version: nginx/1.13.0 (Ubuntu)
# built by gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.4)
# built with OpenSSL 1.1.0f 25 May 2017
# TLS SNI support enabled
# configure arguments: --prefix=/etc/nginx . . .
# . . .
# . . .
Patikrinkite sintaksę ir galimas klaidas:
sudo nginx -t
# Will throw this error nginx: [emerg] mkdir() "/var/lib/nginx/body" failed (2: No such file or directory)
# Just create directory
mkdir -p /var/lib/nginx && sudo nginx -t
Sukurkite NGINX sistemos vieneto failą:
sudo vim /etc/systemd/system/nginx.service
Nukopijuokite / įklijuokite šį turinį:
NOTE: The location of the PID file and the NGINX binary may be different depending on how NGINX was compiled.
[Unit]
Description=A high performance web server and a reverse proxy server
After=network.target
[Service]
Type=forking
PIDFile=/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t -q -g 'daemon on; master_process on;'
ExecStart=/usr/sbin/nginx -g 'daemon on; master_process on;'
ExecReload=/usr/sbin/nginx -g 'daemon on; master_process on;' -s reload
ExecStop=-/sbin/start-stop-daemon --quiet --stop --retry QUIT/5 --pidfile /run/nginx.pid
TimeoutStopSec=5
KillMode=mixed
[Install]
WantedBy=multi-user.target
Paleiskite ir įjunkite NGINX paslaugą:
sudo systemctl start nginx.service && sudo systemctl enable nginx.service
Patikrinkite, ar NGINX bus paleistas po perkrovimo:
sudo systemctl is-enabled nginx.service
# enabled
Patikrinkite, ar veikia NGINX:
sudo systemctl status nginx.service
ps aux | grep nginx
curl -I 127.0.0.1
Iš naujo paleiskite Ubuntu VPS, kad patikrintumėte, ar NGINX paleidžiamas automatiškai:
sudo shutdown -r now
Sukurkite UFW NGINX programos profilį:
sudo vim /etc/ufw/applications.d/nginx
Nukopijuokite / įklijuokite šį turinį:
[Nginx HTTP]
title=Web Server (Nginx, HTTP)
description=Small, but very powerful and efficient web server
ports=80/tcp
[Nginx HTTPS]
title=Web Server (Nginx, HTTPS)
description=Small, but very powerful and efficient web server
ports=443/tcp
[Nginx Full]
title=Web Server (Nginx, HTTP + HTTPS)
description=Small, but very powerful and efficient web server
ports=80,443/tcp
Dabar patikrinkite, ar sukurti ir atpažinti UFW programų profiliai:
sudo ufw app list
# Available applications:
# Nginx Full
# Nginx HTTP
# Nginx HTTPS
# OpenSSH
Viskas. Dabar įdiegta naujausia NGINX versija. Jis statiškai kompiliuojamas su kai kuriomis svarbiomis bibliotekomis, tokiomis kaip OpenSSL. Dažnai sistemos OpenSSL versija yra pasenusi. Naudodami šį diegimo metodą su naujesne OpenSSL versija, galite pasinaudoti naujais šifrais, CHACHA20_POLY1305
pvz., TLS 1.3 , ir protokolais , kurie bus pasiekiami OpenSSL 1.1.1
(kuri dar nebuvo išleista).
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į