Technical Anshu Αρχική σελίδα › Εκπαιδευτικά προγράμματα › Εγκατάσταση του Nginx Proxy Manager
🐳 Docker Reverse Proxy

Nginx Proxy Manager Install - Οδηγός εγκατάστασης 2 λεπτών

Οι υπηρεσίες σας βρίσκονται αυτήν τη στιγμή σε άσχημες διευθύνσεις όπως 192.168.1.50:8080. Το Nginx Proxy Manager τα μετατρέπει σε καθαρά ονόματα όπως το app.yourdomain.com με δωρεάν HTTPS - εγκατεστημένο με ένα αρχείο Docker Compose και διαχείριση από έναν απλό πίνακα web αντί για χειρόγραφα αρχεία διαμόρφωσης.

✍️ Technical Anshu🐳 Docker Compose🎧 Multi-Language Audio
Nginx Proxy Manager Install - Οδηγός εγκατάστασης 2 λεπτών
🎧 Multi-Language Audio: Video player [Settings] (⚙️) ➔ [Audio Track]

📑Κεφάλαια

  1. Τι κάνει ένας αντίστροφος διακομιστής μεσολάβησης - μία πόρτα για όλες τις υπηρεσίες σας
  2. Τι χρειάζεστε πριν ξεκινήσετε - Docker, τομέας και προσβάσιμες θύρες
  3. Στείλτε το DNS του τομέα σας στον διακομιστή πριν εγκαταστήσετε οτιδήποτε
  4. Δημιουργήστε το φάκελο και το αρχείο docker-compose.yml
  5. Ξεκινήστε το Nginx Proxy Manager με μία εντολή
  6. Πρώτη σύνδεση - το βήμα του λογαριασμού διαχειριστή που όλοι κάνουν λάθος
  7. Δημιουργήστε τον πρώτο σας κεντρικό υπολογιστή μεσολάβησης, πεδίο προς πεδίο
  8. Αποκτήστε το δωρεάν πιστοποιητικό Lets Encrypt HTTPS και ενεργοποιήστε το Force SSL

📋 Επισκόπηση και οδηγός βήμα προς βήμα

1

Τι χρειάζεστε πριν ξεκινήσετε

Τρία πράγματα πρέπει να υπάρχουν για να μπορέσει να λειτουργήσει ο Nginx Proxy Manager (NPM). Πρώτον, ένας διακομιστής Linux ή υπολογιστής με Docker και Docker Compose που είναι ήδη εγκατεστημένα και λειτουργούν - το NPM εκτελείται ως κοντέινερ, όχι ως κανονικό πρόγραμμα. Δεύτερον, ένα όνομα τομέα του οποίου το DNS μπορείτε να επεξεργαστείτε, επειδή κάθε υπηρεσία έχει τον δικό της υποτομέα. Τρίτον, ο δρομολογητής ή το τείχος προστασίας cloud πρέπει να μπορούν να προωθήσουν τις θύρες 80 και 443 σε αυτό το μηχάνημα.

📌 Σχετικά με τα "2 λεπτά" στον τίτλο: η ίδια η εκκίνηση του κοντέινερ είναι πραγματικά γρήγορη - αλλά μόνο όταν έχει ήδη εγκατασταθεί το Docker και έχει ολοκληρωθεί η προετοιμασία σε αυτόν τον οδηγό. Σε ένα νέο μηχάνημα, αφήστε τον κατάλληλο χρόνο για τα βήματα εγκατάστασης, DNS και πιστοποιητικού. το τίμιο σύνολο είναι μεγαλύτερο από δύο λεπτά.
⚠️ Σε μια οικιακή σύνδεση πίσω από το CGNAT, η προώθηση θύρας δεν μπορεί να λειτουργήσει καθόλου - καμία ρύθμιση στο NPM δεν το διορθώνει. Οι ειλικρινείς επιλογές είναι τότε μια δημόσια/στατική IP από τον ISP σας, ένα μικρό νοικιασμένο VPS ή ένα εργαλείο σήραγγας. Μην παραλείψετε αυτόν τον έλεγχο: οι μισές ιστορίες "NPM δεν λειτουργεί" είναι πραγματικά ιστορίες "οι θύρες δεν έφτασαν ποτέ στον διακομιστή".
2

Τοποθετήστε πρώτα το DNS του τομέα σας στον διακομιστή

Το NPM δρομολογεί την κυκλοφορία με βάση το όνομα και το Lets Encrypt εκδίδει πιστοποιητικά μόνο για ονόματα που αποδεδειγμένα δείχνουν προς τον υπολογιστή σας - επομένως το όνομα πρέπει να επιλυθεί πριν δημιουργήσετε οτιδήποτε σε αυτό. Στον καταχωρητή ή στον κεντρικό υπολογιστή DNS, προσθέστε μια Μια εγγραφή: το Όνομα είναι μόνο η λέξη υποτομέα (για παράδειγμα app) και η Τιμή είναι η δημόσια διεύθυνση IP του διακομιστή σας. Κάθε υπηρεσία έχει το δικό της αρχείο, και μπορούν όλες να δείχνουν στην ίδια IP - Το NPM διαχωρίζει τις υπηρεσίες αργότερα, με το όνομα. Ορίστε ένα σύντομο TTL, όπως 300 δευτερόλεπτα κατά τη δοκιμή, έτσι ώστε τα λάθη να εξαφανίζονται σε λεπτά αντί για ώρες.

Αποδείξτε το προτού συνεχίσετε: ελέγξτε ότι το όνομα αναλύεται στη δημόσια IP σας από εξωτερικό δίκτυο (για παράδειγμα από το τηλέφωνό σας με απενεργοποιημένο το Wi-Fi). Αίτημα πιστοποιητικού για σπασμένα απόβλητα DNS Επιτρέπει την κρυπτογράφηση των προσπαθειών και οι επαναλαμβανόμενες αποτυχίες μπορούν να σας περιορίσουν για ώρες. Η σειρά έχει σημασία: πρώτο DNS, δεύτερος κεντρικός διακομιστής μεσολάβησης, τρίτος πιστοποιητικό.

3

Δημιουργήστε το Φάκελο και το Αρχείο Σύνθεσης

Δημιουργήστε έναν φάκελο για το NPM στον διακομιστή και αποθηκεύστε το αρχείο παρακάτω μέσα σε αυτόν ως docker-compose.yml. Αυτό το μεμονωμένο αρχείο είναι η πλήρης εγκατάσταση. Το όνομα της εικόνας είναι η επίσημη εικόνα της κοινότητας. Οι θύρες 80 και 443 είναι οι δημόσιες πόρτες, η θύρα 81 είναι ο πίνακας διαχείρισης και οι δύο τόμοι είναι όπου ζει ολόκληρη η εγκατάσταση σας: το ./data διατηρεί τη βάση δεδομένων με όλους τους κεντρικούς υπολογιστές μεσολάβησης και το ./letsencrypt κρατά τα πιστοποιητικά σας. Χάνετε αυτούς τους δύο φακέλους και χάνετε ολόκληρη τη ρύθμιση - δημιουργήστε αντίγραφα ασφαλείας μόλις εκτελούνται τα πράγματα.

docker-compose.yml
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      - '80:80'
      - '443:443'
      - '81:81'
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt

Η γραμμή restart: unless-stopped επαναφέρει αυτόματα το NPM μετά από επανεκκίνηση.

4

Εκκινήστε το Nginx Proxy Manager

Μέσα από αυτόν τον φάκελο, εκτελέστε την εντολή έναρξης. Το Docker κατεβάζει την εικόνα και ξεκινά το κοντέινερ στο παρασκήνιο.

Terminal
docker compose up -d

Ελέγξτε ότι λειτουργεί:

Terminal
docker ps

Θα πρέπει να δείτε το κοντέινερ με τις θύρες 80, 443 και 81. Σε έναν μικρό διακομιστή, η πρώτη εκκίνηση διαρκεί ένα ή δύο λεπτά κατά τη δημιουργία της βάσης δεδομένων. Εάν το κοντέινερ συνεχίσει να επανεκκινείται, τα αρχεία καταγραφής δείχνουν τον λόγο σε απλή γλώσσα:

Terminal
docker compose logs

Εννέα στις δέκα φορές ένας βρόχος επανεκκίνησης είναι μια θύρα που χρησιμοποιείται ήδη από κάτι άλλο στον κεντρικό υπολογιστή - συνήθως ένας παλιός διακομιστής ιστού εξακολουθεί να λειτουργεί.

5

Πρώτη σύνδεση - Ασφαλίστε αμέσως τον λογαριασμό διαχειριστή

Ανοίξτε τον πίνακα διαχειριστή σε ένα πρόγραμμα περιήγησης στο δικό σας δίκτυο:

Browser Address Bar
http://your-server-ip:81

Κάντε το στο πρώτο λεπτό. Ανάλογα με την έκδοση, το NPM είτε σας ζητά να αντικαταστήσετε τα γνωστά στοιχεία διαχειριστή πρώτης σύνδεσης με το δικό σας email και έναν ισχυρό κωδικό πρόσβασης, είτε - σε νεότερες εκδόσεις χωρίς προεπιλεγμένο λογαριασμό - το πρώτο άτομο που ανοίγει τη σελίδα διαχειριστή δημιουργεί τον διαχειριστή. Σε κάθε περίπτωση, ο κανόνας είναι ο ίδιος: δημιουργήστε τον δικό σας λογαριασμό διαχειριστή τη στιγμή που ξεκινά το κοντέινερ, πριν δημιουργήσετε οτιδήποτε άλλο και χρησιμοποιήστε ένα πραγματικό γραμματοκιβώτιο - μηνύματα ηλεκτρονικού ταχυδρομείου NPM που αναφέρονται σε προβλήματα πιστοποιητικών.

⚠️ Ποτέ μην αφήνετε τη θύρα 81 δημόσια προσβάσιμη όσο «το τελειώνετε αργότερα». Οποιοσδήποτε στο Διαδίκτυο βρίσκει τον πίνακα πρώτος κατέχει τον διακομιστή μεσολάβησής σας. Διατηρήστε τον πίνακα διαχείρισης μόνο στο δικό σας δίκτυο.
6

Δημιουργήστε τον πρώτο σας κεντρικό υπολογιστή μεσολάβησης

Στο NPM ανοίξτε Host → Proxy Host → Add Proxy Host και συμπληρώστε τη φόρμα ως μία πρόταση - "αυτό το όνομα πηγαίνει σε αυτήν την εσωτερική υπηρεσία":

Ονόματα τομέα: app.yourdomain.com - το ακριβές δημόσιο όνομα από το Βήμα 2, το οποίο πρέπει ήδη να επιλυθεί στον διακομιστή σας.
Σχέδιο: http για τις περισσότερες εφαρμογές για το σπίτι και το γραφείο. Το Σχέδιο περιγράφει τη σύνδεση μεταξύ του NPM και της εσωτερικής υπηρεσίας, όχι τι χρησιμοποιούν οι επισκέπτες - το NPM χειρίζεται τη δημόσια κρυπτογράφηση στην πόρτα. Επιλέξτε https εδώ μόνο όταν η ίδια η εσωτερική εφαρμογή εξυπηρετεί HTTPS.
Προώθηση ονόματος κεντρικού υπολογιστή / IP: η εσωτερική διεύθυνση της υπηρεσίας, για παράδειγμα 192.168.1.50.
Θύρα προώθησης: η θύρα στην οποία ακούει πραγματικά η υπηρεσία, για παράδειγμα 8080 - όχι 80 ή 443. Αυτές είναι οι πόρτες του NPM, όχι της υπηρεσίας.

Ενεργοποιήστε το Αποκλεισμός κοινών εκμεταλλεύσεων και, στη συνέχεια, Αποθήκευση. Δοκιμάστε αμέσως ανοίγοντας το όνομα σε ένα πρόγραμμα περιήγησης - ιδανικά από το τηλέφωνό σας με απενεργοποιημένο το Wi-Fi, ώστε να δοκιμάσετε την πραγματική δημόσια διαδρομή.

✅ Μια 502 Bad Gateway από το NPM είναι μια ένδειξη, όχι μια αποτυχία: σημαίνει ότι ο έξω κόσμος έφτασε στο NPM τέλεια και μόνο το τελευταίο εσωτερικό hop - όνομα κεντρικού υπολογιστή ή θύρα - είναι λάθος. Διορθώστε αυτό το πεδίο, όχι ολόκληρη τη ρύθμιση. Μια ακόμη παγίδα: εάν η υπηρεσία εκτελείται σε άλλο κοντέινερ Docker, το localhost είναι λάθος (μέσα στο κοντέινερ του NPM, το localhost σημαίνει το ίδιο το NPM) - χρησιμοποιήστε την IP LAN του διακομιστή με τη δημοσιευμένη θύρα ή τοποθετήστε και τα δύο κοντέινερ στο ίδιο δίκτυο Docker και χρησιμοποιήστε το όνομα κοντέινερ.
7

Αποκτήστε το δωρεάν πιστοποιητικό Lets Encrypt HTTPS

Κάντε αυτό μόνο αφού ο απλός κεντρικός υπολογιστής από το Βήμα 6 λειτουργεί ήδη - το HTTPS σε έναν κατεστραμμένο κεντρικό υπολογιστή σας δίνει έναν κατεστραμμένο κεντρικό υπολογιστή με πιστοποιητικό και διπλάσια σημεία για να αναζητήσετε το σφάλμα. Ανοίξτε τον ίδιο κεντρικό υπολογιστή μεσολάβησης, μεταβείτε στην καρτέλα SSL, ορίστε το Πιστοποιητικό SSL σε Αίτημα νέου πιστοποιητικού SSL, ενεργοποιήστε την Επιβολή SSL και Υποστήριξη HTTP/2, συμφωνήστε με τους Όρους Παροχής Υπηρεσιών Lets Encrypt και Αποθήκευση. Επαναλάβετε τη φόρτωση του ιστότοπου - το πρόγραμμα περιήγησης θα πρέπει τώρα να εμφανίζει το λουκέτο στο https.

Πώς λειτουργεί: Το Lets Encrypt αποδεικνύει ότι ελέγχετε το όνομα ζητώντας από τον διακομιστή σας, μέσω του δημόσιου διαδικτύου στη θύρα 80, να εμφανίσει ένα διακριτικό μίας χρήσης (η πρόκληση HTTP-01). Αυτός είναι ο λόγος για τον οποίο το DNS που δείχνει προς εσάς και μια προσβάσιμη θύρα 80 είναι αδιαπραγμάτευτα - αποτυγχάνει η μία και το αίτημα αποτυγχάνει και το σφάλμα βρίσκεται στη ρύθμιση, ποτέ στο Lets Encrypt. Το Force SSL ανακατευθύνει αυτόματα κάθε επισκέπτη http στο https. χωρίς αυτήν η μη κρυπτογραφημένη πόρτα παραμένει ανοιχτή δίπλα στην κρυπτογραφημένη.

📌 Τα πιστοποιητικά ζουν για 90 ημέρες και το NPM τα ανανεώνει αυτόματα, συνήθως περίπου ένα μήνα πριν τη λήξη τους, χρησιμοποιώντας το ίδιο port-80 proof. Εάν αποτύχει ποτέ μια ανανέωση, ελέγξτε πρώτα τις αιτίες βαρετού: άλλαξε το DNS, καταργήθηκε η προώθηση του δρομολογητή ή η θύρα 80 μπλοκαρίστηκε. Ενεργοποιήστε το HSTS μόνο αφού διευθετηθεί μια υπηρεσία και αποδειχθούν οι ανανεώσεις - είναι μια ισχυρή υπόσχεση που τα προγράμματα περιήγησης θυμούνται για μήνες.

🏷️Μεταβλητές και λέξεις-κλειδιά αναζήτησης θεμάτων

🔍 Nginx Proxy Manager 🔍 Reverse Proxy 🔍 Docker Compose 🔍 Lets Encrypt 🔍 Free HTTPS 🔍 Proxy Host 🔍 TechnicalAnshu 🔍 Self Hosting 🔍 Subdomain Setup 🔍 Port 80 443 81 🔍 Force SSL 🔍 Home Server
🎙️ Πλήρης μεταγραφή — πατήστε για ανάπτυξη

__TOK_34__

__TOK_35__

__TOK_36__

❓ Συχνές Ερωτήσεις

Είναι αυτό το σεμινάριο 100% δωρεάν για παρακολούθηση;

__TOK_37__

Μπορούν οι αρχάριοι να ακολουθήσουν αυτόν τον οδηγό;

__TOK_38__

Πού μπορώ να κάνω ερωτήσεις αν κολλήσω;

__TOK_39__

🚀 Παρακολουθήστε τον πλήρη οδηγό στο YouTube

__TOK_40__

__TOK_41__

▶️ Δείτε πλήρες βίντεο
Αυτό το σεμινάριο βασίζεται στο βίντεο εγκατάστασης του Nginx Proxy Manager του Technical Anshu • Έχετε κολλήσει σε κάποιο βήμα; Ρωτήστε στα σχόλια του βίντεο — θα λάβετε βοήθεια εκεί 🙏