Instalare Nginx Proxy Manager - Ghid de configurare de 2 minute
Serviciile dvs. se află în prezent la adrese urâte precum 192.168.1.50:8080. Nginx Proxy Manager le transformă în nume curate precum app.yourdomain.com cu HTTPS gratuit - instalat cu un fișier Docker Compose și gestionat dintr-un panou web simplu în loc de fișiere de configurare scrise de mână.
📑Capitole
- Ce face un proxy invers - o singură ușă pentru toate serviciile dvs.
- De ce aveți nevoie înainte de a începe - Docker, un domeniu și porturi accesibile
- Îndreptați DNS-ul dvs. de domeniu către server înainte de a instala orice
- Creați folderul și fișierul docker-compose.yml
- Porniți Nginx Proxy Manager cu o singură comandă
- Prima conectare - pasul contului de administrator pe care toată lumea greșește
- Creați prima gazdă proxy, câmp cu câmp
- Obțineți certificatul gratuit Lets Encrypt HTTPS și activați Force SSL
📋 Prezentare generală și Ghid pas cu pas
De ce aveți nevoie înainte de a începe
Trei lucruri trebuie să existe înainte ca Nginx Proxy Manager (NPM) să poată funcționa. În primul rând, un server Linux sau un computer cu Docker și Docker Compose deja instalate și funcționale - NPM rulează ca un container, nu ca un program normal. În al doilea rând, un nume de domeniu al cărui DNS îl puteți edita, deoarece fiecare serviciu primește propriul său subdomeniu. În al treilea rând, routerul sau firewall-ul în cloud trebuie să poată redirecționa porturile 80 și 443 către această mașină.
Mai întâi direcționați DNS-ul dvs. de domeniu către server
NPM direcționează traficul după nume, iar Lets Encrypt emite certificate doar pentru nume care indică, probabil, mașina dvs. - așa că numele trebuie să se rezolve înainte de a construi ceva pe el. La registratorul sau gazda DNS, adăugați o înregistrare A: Numele este doar cuvântul subdomeniului (de exemplu, aplicație), iar Valoarea este adresa IP publică a serverului dvs. Fiecare serviciu are propria sa înregistrare și toți pot indica același IP - NPM separă serviciile ulterior, după nume. Setați un TTL scurt, cum ar fi 300 de secunde în timpul testării, astfel încât greșelile să dispară în câteva minute în loc de ore.
Demonstrați-o înainte de a continua: verificați dacă numele se rezolvă la IP-ul dvs. public dintr-o rețea externă (de exemplu, de pe telefonul cu Wi-Fi oprit). Solicitarea unui certificat împotriva deșeurilor DNS stricate Permite încercările de criptare, iar eșecurile repetate vă pot limita pentru ore. Ordinea contează: mai întâi DNS, al doilea gazdă proxy, al treilea certificat.
Creați dosarul și fișierul compus
Creați un folder pentru NPM pe server și salvați fișierul de mai jos în el ca docker-compose.yml. Acest singur fișier este instalarea completă. Numele imaginii este imaginea oficială a comunității. Porturile 80 și 443 sunt ușile publice, portul 81 este panoul de administrare și cele două volume sunt locul în care se află întreaga configurație: ./data deține baza de date cu toate gazdele proxy, iar ./letsencrypt deține certificatele dvs. Pierdeți acele două foldere și pierdeți întreaga configurație - faceți o copie de rezervă după ce lucrurile funcționează.
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
- '80:80'
- '443:443'
- '81:81'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
Linia repornire: unless-stop aduce NPM înapoi automat după o repornire.
Porniți Nginx Proxy Manager
Din interiorul acelui folder, executați comanda de pornire. Docker descarcă imaginea și pornește containerul în fundal.
docker compose up -d
Verificați dacă funcționează:
docker ps
Ar trebui să vedeți containerul listat cu porturile 80, 443 și 81. Pe un server mic, prima pornire durează un minut sau două în timp ce baza de date este creată. Dacă containerul continuă să repornească, jurnalele arată motivul într-un limbaj simplu:
docker compose logs
De nouă ori din zece o buclă de repornire este un port deja folosit de altceva pe gazdă - de obicei, un server web vechi încă rulează.
Prima conectare - Securizează imediat contul de administrator
Deschideți panoul de administrare într-un browser din propria rețea:
http://your-server-ip:81
Faceți acest lucru în primul minut. În funcție de versiune, NPM fie vă solicită să înlocuiți binecunoscutele detalii ale administratorului de primă conectare cu propria dvs. e-mail și o parolă puternică, fie - în versiunile mai noi fără cont implicit - prima persoană care deschide pagina de administrare creează administratorul. În orice caz, regula este aceeași: configurați-vă propriul cont de administrator în momentul în care containerul pornește, înainte de a crea orice altceva, și utilizați o cutie poștală reală - e-mailuri NPM care se adresează despre problemele legate de certificat.
Creați-vă prima gazdă proxy
În NPM deschideți Gazde → Gazde proxy → Adăugați gazdă proxy și completați formularul ca o singură propoziție - „acest nume merge la acel serviciu intern”:
Nume de domenii: app.yourdomain.com - numele public exact de la Pasul 2, care trebuie deja rezolvat pe serverul dvs.
Schemă: http pentru majoritatea aplicațiilor de acasă și de la birou. Schema descrie conexiunea dintre NPM și serviciul intern, nu ceea ce folosesc vizitatorii - NPM se ocupă de criptarea publică la ușă. Alegeți https aici numai atunci când aplicația internă în sine deservește HTTPS.
Redirecționați numele de gazdă/IP: adresa internă a serviciului, de exemplu 192.168.1.50.
Forward Port: portul pe care serviciul ascultă efectiv, de exemplu 8080 - nu 80 sau 443; acestea sunt ușile NPM, nu ale serviciului.
Activați Blocați exploatările comune, apoi Salvați. Testați imediat prin deschiderea numelui într-un browser - ideal de pe telefonul dvs. cu Wi-Fi oprit, astfel încât să testați calea publică reală.
localhost este greșit (în interiorul containerului NPM, localhost înseamnă NPM însuși) - utilizați IP-ul LAN al serverului cu portul publicat sau puneți ambele containere în aceeași rețea Docker și utilizați numele containerului.Obțineți certificatul gratuit Lets Encrypt HTTPS
Faceți acest lucru numai după ce gazda simplă de la Pasul 6 funcționează deja - HTTPS pe o gazdă defectă vă oferă o gazdă defectă cu un certificat și de două ori locurile în care să căutați defecțiunea. Deschideți aceeași gazdă proxy, accesați fila SSL, setați Certificat SSL la Solicitați un nou certificat SSL, activați Forțare SSL și Asistență HTTP/2, sunteți de acord cu Termenii și condițiile Lets Encrypt și Salvați. Reîncărcați site-ul - browserul ar trebui să arate acum lacătul pe https.
Cum funcționează: Lets Encrypt demonstrează că controlați numele, cerând serverului dvs., prin internetul public de pe portul 80, să arate un jeton unic (provocarea HTTP-01). De aceea, DNS care indică către tine și un port accesibil 80 sunt nenegociabile - eșuează oricare dintre ele și cererea eșuează, iar eroarea este în configurare, niciodată în Lets Encrypt. Force SSL redirecționează automat fiecare vizitator http către https; fără ea ușa necriptată rămâne deschisă lângă cea criptată.
🏷️Variabile și cuvinte cheie pentru căutarea subiectelor
🎙️ Transcriere completă — atingeți pentru a extinde
__TOK_34__
__TOK_35__
__TOK_36__
❓ Întrebări frecvente
Este acest tutorial 100% gratuit de urmat?
__TOK_37__
Pot începătorii să urmeze acest ghid?
__TOK_38__
Unde pot pune întrebări dacă rămân blocat?
__TOK_39__