Pag-install ng Nginx Proxy Manager - 2-Minutong Gabay sa Pag-setup
Ang iyong mga serbisyo ay kasalukuyang nakatira sa mga pangit na address tulad ng 192.168.1.50:8080. Ginagawa ng Nginx Proxy Manager ang mga ito sa malinis na pangalan tulad ng app.yourdomain.com na may libreng HTTPS - naka-install sa isang Docker Compose file at pinamamahalaan mula sa isang simpleng web panel sa halip na mga config file na nakasulat sa kamay.
📑Mga Kabanata
- Ano ang nagagawa ng reverse proxy - isang pinto para sa lahat ng iyong serbisyo
- Ang kailangan mo bago magsimula - Docker, isang domain, at mga naaabot na port
- Ituro ang iyong domain DNS sa server bago mag-install ng anuman
- Gumawa ng folder at ang docker-compose.yml file
- Simulan ang Nginx Proxy Manager gamit ang isang command
- Unang pag-log in - ang hakbang ng admin account na nagkakamali ang lahat
- Gumawa ng iyong unang proxy host, field ayon sa field
- Kunin ang libreng Lets Encrypt HTTPS certificate at i-on ang Force SSL
📋 Pangkalahatang-ideya at Step-by-Step na Gabay
Ano ang Kailangan Mo Bago Magsimula
Tatlong bagay ang dapat umiral bago gumana ang Nginx Proxy Manager (NPM). Una, isang Linux server o PC na may Docker at Docker Compose na naka-install at gumagana na - Ang NPM ay tumatakbo bilang isang lalagyan, hindi bilang isang normal na programa. Pangalawa, isang domain name na ang DNS ay maaari mong i-edit, dahil ang bawat serbisyo ay nakakakuha ng sarili nitong subdomain. Pangatlo, dapat na maipasa ng iyong router o cloud firewall ang mga port 80 at 443 sa makinang ito.
Ituro ang Iyong Domain DNS sa Server Una
Niruruta ng NPM ang trapiko ayon sa pangalan, at ang Lets Encrypt ay nag-isyu ng mga certificate para lang sa mga pangalang mapapatunayang tumuturo sa iyong makina - kaya kailangang malutas ang pangalan bago ka bumuo ng anuman dito. Sa iyong registrar o DNS host, magdagdag ng A record: ang Pangalan ay ang subdomain na salita lamang (halimbawa app) at ang Value ay ang pampublikong IP address ng iyong server. Ang bawat serbisyo ay nakakakuha ng sarili nitong record, at lahat sila ay maaaring tumuro sa parehong IP - pinaghihiwalay ng NPM ang mga serbisyo sa ibang pagkakataon, ayon sa pangalan. Magtakda ng maikling TTL gaya ng 300 segundo habang sumusubok, kaya ang mga pagkakamali ay nawawala sa ilang minuto sa halip na mga oras.
Patunayan ito bago ka magpatuloy: tingnan kung ang pangalan ay lumalabas sa iyong pampublikong IP mula sa isang network sa labas (halimbawa mula sa iyong telepono na naka-off ang Wi-Fi). Ang paghiling ng sertipiko laban sa mga sirang DNS waste ay Hinahayaan ang mga pagsubok na I-encrypt, at ang mga paulit-ulit na pagkabigo ay maaaring mag-rate-limit sa iyo ng ilang oras. Mahalaga ang order: DNS muna, proxy host pangalawa, certificate pangatlo.
Gumawa ng Folder at ang Compose File
Gumawa ng folder para sa NPM sa server at i-save ang file sa ibaba sa loob nito bilang docker-compose.yml. Ang nag-iisang file na ito ay ang kumpletong pag-install. Ang pangalan ng larawan ay ang opisyal na larawan ng komunidad. Ang mga port 80 at 443 ay ang mga pampublikong pinto, ang port 81 ay ang admin panel, at ang dalawang volume ay kung saan nakatira ang iyong buong setup: ./data ang may hawak ng database kasama ang lahat ng iyong proxy host, at ang ./letsencrypt ang may hawak ng iyong mga certificate. Mawala ang dalawang folder na iyon at mawawala ang buong setup - i-back up ang mga ito kapag tumatakbo na ang mga bagay.
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
- '80:80'
- '443:443'
- '81:81'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
Awtomatikong ibabalik ng linyang restart: unless-stop ang NPM pagkatapos ng reboot.
Simulan ang Nginx Proxy Manager
Mula sa loob ng folder na iyon, patakbuhin ang start command. Dina-download ng Docker ang larawan at sinimulan ang lalagyan sa background.
docker compose up -d
Suriin na ito ay tumatakbo:
docker ps
Dapat mong makita ang lalagyan na nakalista na may mga port 80, 443 at 81. Sa isang maliit na server ang unang pagsisimula ay tumatagal ng isa o dalawang minuto habang ginagawa ang database. Kung patuloy na nagre-restart ang container, ipinapakita ng mga log ang dahilan sa simpleng wika:
docker compose logs
Siyam na beses sa sampu ang isang restart loop ay isang port na ginagamit na ng ibang bagay sa host - kadalasan ay tumatakbo pa rin ang isang lumang web server.
Unang Pag-login - I-secure kaagad ang Admin Account
Buksan ang admin panel sa isang browser sa iyong sariling network:
http://your-server-ip:81
Gawin ito sa unang minuto. Depende sa build, hinihiling sa iyo ng NPM na palitan ang kilalang mga detalye ng administrator ng unang pag-login gamit ang sarili mong email at isang malakas na password, o - sa mga mas bagong build na walang default na account - ang unang taong magbukas ng admin page ay gagawa ng administrator. Sa alinmang paraan, pareho ang panuntunan: i-set up ang iyong sariling admin account sa sandaling magsimula ang container, bago gumawa ng anupaman, at gumamit ng totoong mailbox - mga NPM na email na tumutugon sa mga problema sa certificate.
Gawin ang Iyong Unang Proxy Host
Sa NPM buksan ang Mga Host → Mga Proxy Host → Magdagdag ng Proxy Host at punan ang form bilang isang pangungusap - "napupunta ang pangalang ito sa panloob na serbisyong iyon":
Mga Pangalan ng Domain: app.yourdomain.com - ang eksaktong pampublikong pangalan mula sa Hakbang 2, na dapat na malutas na sa iyong server.
Skema: http para sa karamihan ng mga app sa bahay at opisina. Inilalarawan ng Scheme ang koneksyon sa pagitan ng NPM at ng panloob na serbisyo, hindi kung ano ang ginagamit ng mga bisita - pinangangasiwaan ng NPM ang pampublikong pag-encrypt sa pintuan. Piliin lang ang https dito kapag ang internal na app mismo ay naghahatid ng HTTPS.
Ipasa ang Hostname / IP: ang panloob na address ng serbisyo, halimbawa 192.168.1.50.
Forward Port: ang port na talagang pinakikinggan ng serbisyo, halimbawa 8080 - hindi 80 o 443; iyon ay mga pintuan ng NPM, hindi ang serbisyo.
I-on ang Block Common Exploits, pagkatapos ay I-save. Subukan kaagad sa pamamagitan ng pagbubukas ng pangalan sa isang browser - perpektong mula sa iyong telepono nang naka-off ang Wi-Fi, para subukan mo ang tunay na pampublikong landas.
localhost (sa loob ng container ng NPM, ibig sabihin ng localhost ay NPM mismo) - gamitin ang LAN IP ng server kasama ang naka-publish na port, o ilagay ang parehong container sa parehong Docker network at gamitin ang pangalan ng container.Kunin ang Free Lets Encrypt HTTPS Certificate
Gawin lamang ito pagkatapos na gumana ang plain host mula sa Hakbang 6 - Ang HTTPS sa isang sirang host ay nagbibigay sa iyo ng sirang host na may certificate, at dalawang beses ang mga lugar upang hanapin ang kasalanan. Buksan ang parehong proxy host, pumunta sa tab na SSL, itakda ang SSL Certificate sa Humiling ng bagong SSL Certificate, paganahin ang Puwersahin ang SSL at Suporta sa HTTP/2, sumang-ayon sa Mga Tuntunin ng Serbisyo ng Lets Encrypt, at I-save. I-reload ang site - dapat na ipakita ng browser ang padlock sa https.
Paano ito gumagana: Pinapatunayan ng Lets Encrypt na kontrolin mo ang pangalan sa pamamagitan ng pagtatanong sa iyong server, sa pampublikong internet sa port 80, na magpakita ng isang beses na token (ang HTTP-01 na hamon). Iyon ang dahilan kung bakit ang DNS na tumuturo sa iyo at ang isang maaabot na port 80 ay hindi mapag-usapan - nabigo ang alinman sa isa at nabigo ang kahilingan, at ang error ay nasa setup, hindi kailanman sa Lets Encrypt. Awtomatikong nire-redirect ng Force SSL ang bawat bisita ng http sa https; kung wala ito ang hindi naka-encrypt na pinto ay mananatiling bukas sa tabi ng naka-encrypt.
🏷️Mga Variable at Keyword sa Paghahanap ng Paksa
🎙️ Buong Transcript — i-tap para palawakin
__TOK_34__
__TOK_35__
__TOK_36__
❓ Mga Madalas Itanong
Ang tutorial na ito ba ay 100% libre upang sundin?
__TOK_37__
Maaari bang sundin ng mga nagsisimula ang gabay na ito?
__TOK_38__
Saan ako maaaring magtanong kung ako ay natigil?
__TOK_39__