Nginx

Kaip naudotis „Nginx Proxy Manager“

Kaip naudotis „Nginx Proxy Manager“
„Nginx“ yra populiarus interneto serveris ir atvirkštinis tarpinis serveris, naudojamas srautui nukreipti ir peradresuoti į kitą serverį. Nginx nustatymas kaip atvirkštinis tarpinis serveris gali užtrukti daug laiko ir gali būti klaidų bei netinkamos konfigūracijos. Šis vadovas parodys, kaip nustatyti ir naudoti „Nginx“ tarpinio serverio tvarkyklę, kad būtų lengviau valdyti ir konfigūruoti. Prieš neriant į pamoką, yra kelios sąlygos. Jums reikės:

  1. „Linux“ serveris
  2. „Docker“ ir „Docker“ kūrimas įdiegtas serveryje
  3. Šaknis arba vartotojas, turintis sudo teises

Jei visa tai turite, leiskite mums pasinerti.

Kas yra „Nginx“ tarpinio serverio tvarkyklė?

„Nginx“ tarpinio serverio tvarkyklė (NPM) yra atvirkštinė tarpinio serverio valdymo sistema, veikianti „Docker“. NPM yra pagrįstas „Nginx“ serveriu ir suteikia vartotojams švarią, efektyvią ir gražią interneto sąsają, kad būtų lengviau valdyti. Įrankį lengva nustatyti ir nereikia, kad vartotojai žinotų, kaip dirbti su „Nginx“ serveriais ar SSL sertifikatais. NPM yra atviro kodo įrankis, kurį palaiko kūrėjai iš viso pasaulio. Tai gerai tinka mažoms serverių aplinkoms ir privačių laboratorijų aplinkoms. Šioje pamokoje daugiausia dėmesio bus skirta parodyti, kaip įdiegti „Nginx“ tarpinio serverio tvarkyklę:

Diegimas „Docker“ ir „SQLite“

„Nginx Proxy“ valdytojas veikia kaip dokavimo talpykla; todėl serveryje reikia įdiegti „Docker“ ir „docker-compose“. Paprastumo dėlei aš tik iliustruosiu, kaip įdiegti „Docker“ į „Ubuntu“. Norėdami sužinoti, kaip jį nustatyti kitose sistemose, žr. „Docker“ dokumentaciją. Norėdami įdiegti „Docker“ į „Ubuntu“, pirmiausia pašalinkite senus „Docker“ įrenginius. Praleiskite tai, jei nėra.

sudo apt-get remove docker docker-engine docker.io containerd runc

Tada įdiekite saugyklą ir visas priklausomybes naudodami komandas:

sudo apt-get atnaujinimas
sudo apt-get install apt-transport-https ca-sertifikatai susisuka gnupg lsb-release -y

Pridėkite „Docker“ saugyklos GPG raktą:

garbanos -fsSL https: // atsisiųsti.dokininkas.com / linux / ubuntu / gpg | sudo gpg --dearmor -o / usr / share / raktų pakabukai / docker-archive-raktų pakabukai.gpg

Tada pridėkite stabilią saugyklą naudodami komandą echo kaip:

echo "deb [arch = amd64, kurį pasirašė = / usr / share / raktų pakabukai / docker-archive-raktų pakabukai.gpg] https: // atsisiųsti.dokininkas.com / linux / ubuntu \
$ (lsb_release -cs) stabilus | | sudo tee / etc / apt / sources.sąrašą.d / dokas.sąrašas> / dev / null

Galiausiai atnaujinkite saugyklas ir įdiekite doką naudodami komandas:

sudo apt-get update && sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose -y

Dabar paleiskite doką ir įjunkite paleidimo metu:

sudo systemctl įgalinti doką.paslaugą
sudo systemctl paleisti doką.paslaugą
sudo systemctl įgalinti containerd.paslaugą

Įdiekite „SQLite“

Kitas žingsnis - įdiegti SQLite duomenų bazę, kurią naudosime vykdydami NPM. Gerai pažymėti, kad galite naudoti ir „MySQL“ duomenų bazę.

Įdiekite NPM „Docker“

Norėdami įdiegti „Nginx“ tarpinio serverio tvarkyklę, turime sukurti „Docker-Compose“ failą, kad galėtume paleisti „Docker“ ir inicijuoti konteinerį. Norėdami sužinoti daugiau apie „Docker“ kūrimo failą ir jo veikimą, apsvarstykite čia susietus išteklius. Aš labai rekomenduoju jums sukurti „docker-compose“ failą kataloge, kuriame turite visas teises.

nano dokininkas-kurkite.yaml

Tada pridėkite šias eilutes prie kūrimo failo, išsaugokite ir uždarykite.

versija: „3“
paslaugos:
programa:
vaizdas: 'jc21 / nginx-proxy-manager: naujausias'
paleisti iš naujo: visada
uostai:
# HTTP prievadas
- '80: 80 '
# HTTPS prievadas:
- „443: 443“
# Administratoriaus vartotojo sąsaja
- '81: 81 '
aplinka:
DB_SQLITE_FILE: "/ duomenys / npm.sqlite "
tomai:
- ./ duomenys: / duomenys
- ./ letsencrypt: / etc / letsencrypt

Galiausiai vykdykite komandą „docker-compose“ kaip:

dokininkas-komponuok -d

Tai sukurs rietuvę iš NPM atvaizdo, nurodyto „Docker-Compose“ faile. Kūrybos išvestis:

Tinklo „debian_default“ kūrimas naudojant numatytąją tvarkyklę
Traukiama programa („jc21“ / „nginx-proxy-manager“: naujausia)…
vėliausia: traukiama iš „jc21 / nginx-proxy-manager“
801bfaa63ef2: ištraukite
7927cd3bbe4c: ištraukite
f53b85628da5: ištraukite
e834c30791f9: ištraukite
6b68b3708dd5: ištraukite
963fe519b5fd: ištraukite
37e54d057f10: ištraukite
-------------------------------------
Santrauka: sha256: b33aab798a6150ba7dd238d36936d0882a312c983a0b3eb261a6dcbd5e6a3425
Būsena: atsisiųstas naujesnis jc21 / nginx-proxy-manager vaizdas: naujausias
Kuriamas debian_app_1 ... atlikta

Prieiga prie NPM vartotojo sąsajos

Sukūrę ir paleisdami, galite prisijungti prie sąsajos naudodami IP adresą ir prievadą, nurodytą doko kūrimo faile. Šiuo atveju 81 uostas.

http: // IP: 81

Geriausia, jei patektumėte į NPM prisijungimo sąsają. Įveskite vartotojo vardą ir slaptažodį kaip:

[email protected] ir „changeme“.

Pirmą kartą prisijungdami turėsite atnaujinti administratoriaus duomenis.

Atnaujinę visą vartotojo informaciją, pateksite į pagrindinę informacijos suvestinę, kurioje galėsite sukonfigūruoti tarpinio serverio pagrindinius kompiuterius:

Darbas su NPM

Įdiegę ir įsitikinę, kad veikia tarpinio serverio tvarkyklė, galime pridėti tarpinį serverį, kad atskleistumėte serveryje veikiančią paslaugą. Eikite į „Hosts - Proxy Hosts“ ir spustelėkite „Add Proxy Host“.

Pasirinkite schemą, pvz., HTTP arba HTTPS. Jei paslauga, kurią norite pateikti, nepalaiko HTTPS srauto, laikykitės HTTP. Tada pridėkite domenų vardus, Persiųsti pagrindinio kompiuterio pavadinimą ir IP. Norėdami padidinti saugumą, taip pat galite pasirinkti Blokuoti įprastus išnaudojimus.

Atskleidę paslaugą, pabandykite ją pasiekti naudodami nurodytą pagrindinio kompiuterio pavadinimą arba IP ir prievadą. Ši paslauga turėtų būti prieinama. Tarpinį serverį taip pat galite tvarkyti tarpinių serverių sąraše.

NPM prieigos sąrašas

Kai kuriais atvejais mums gali tekti atskleisti NPM tarpinio serverio sąraše esančią programą ar paslaugą konkrečiais IP adresais. Norėdami tai sukonfigūruoti, galite naudoti NPM prieigos sąrašą.

Eikite į „Access List“ ir spustelėkite „Add Proxy List“. Čia suteikite prieigos sąrašui vardą; taip pat galite pasirinkti Patenkinti bet kurį.

Skirtuke „Leidimas“ nustatykite naudotojo vardus ir slaptažodžius, kuriuos naudosite prisijungdami prie paslaugos.

Eikite į skirtuką „Prieiga“ ir pridėkite IP adresus, iš kurių norite leisti prisijungti, ir atmeskite visus kitus.

Norėdami prieigos sąrašą pridėti prie konkrečios žiniatinklio programos, eikite į „Šeimininkai - tarpinio serverio pagrindinį kompiuterį“ ir pasirinkite savo pagrindinį kompiuterį. Spustelėkite Redaguoti ir nustatykite prieigos sąrašą, kaip apibrėžta aukščiau.

SSL sertifikatų teikimas

NPM taip pat leidžia pateikti SSL sertifikatus įvairiems domenų vardams. Prieš įtraukdami domeno vardą į SSL nuostatą, įsitikinkite, kad domenas nukreipia į NPM tarpinį serverį.

Eikite į SSL sertifikatus ir spustelėkite Pridėti SSL sertifikatą. Pateikite domeno vardus ir el. Pašto adresą šifravimui. Galiausiai sutikite su paslaugų teikimo sąlygomis ir išsaugokite. Taip pat galite pridėti DNS iššūkį, tačiau šioje instrukcijoje to nenagrinėsiu.

Tai sukurs naują patikimą SSL sertifikatą.

Tinkinti pagrindinį puslapį

Taip pat galite tinkinti numatytąjį NPM serverio tinklalapį. Spustelėkite Parametrai - Numatytoji svetainė ir pasirinkite Redaguoti. Galite pasirinkti rodyti 404 KLAIDĄ, peradresuoti į naują adresą arba sukurti pasirinktinį puslapį.

Pavyzdžiui, žemiau yra HTML kodas, rodantis 403 Uždraustas.







403 Uždrausta


ŠALTINIS: CodePen https: // codepen.„io / blecaf / pen“ / „NLoEPY“

Išvada

Šioje pamokoje buvo nagrinėjamas „Nginx Proxy“ tvarkyklės diegimas ir diegimas Ubuntu serveryje, kuriame veikia „Docker“. Tada mes aptarėme, kaip sukonfigūruoti NPM ir pridėti kompiuterius prie tarpinio serverio tvarkyklės.

Atminkite: nuoseklus eksperimentavimas yra raktas į meistriškumą, todėl eksperimentuokite!

„OpenTTD“ pamoka
„OpenTTD“ yra vienas iš populiariausių verslo modeliavimo žaidimų. Šiame žaidime turite sukurti nuostabų transporto verslą. Tačiau pradėsite nuo mažda...
„SuperTuxKart“, skirta „Linux“
„SuperTuxKart“ yra puikus pavadinimas, sukurtas nemokamai suteikti „Mario Kart“ patirtį jūsų „Linux“ sistemoje. Tai gana sudėtinga ir smagu žaisti, yr...
„Battle for Wesnoth“ pamoka
„Battle for Wesnoth“ yra vienas populiariausių atvirojo kodo strateginių žaidimų, kurį šiuo metu galite žaisti. Šis žaidimas ne tik buvo kuriamas laba...