- Server Linux
- Docker a Docker compose nainštalované na serveri
- Root alebo užívateľ s oprávneniami sudo
Ak máte toto všetko, ponorme sa do toho.
Čo je to Nginx Proxy Manager?
Správca proxy Nginx (NPM) je reverzný systém správy proxy, ktorý beží na Docker. NPM je založený na serveri Nginx a poskytuje používateľom čisté, efektívne a nádherné webové rozhranie pre ľahšiu správu. Tento nástroj sa ľahko nastavuje a nevyžaduje, aby používatelia vedeli, ako pracovať so servermi Nginx alebo s certifikátmi SSL. NPM je open-source nástroj udržiavaný vývojármi z celého sveta. Je vhodný pre malé serverové prostredia a prostredia súkromných laboratórií. Tento výukový program sa zameriava na to, ako vám predstaviť, ako nasadiť správcu proxy Nginx:
Inštalácia Docker a SQLite
Správca servera Nginx beží ako kontajner dokovacej stanice; vyžaduje teda nainštalovaný Docker a docker-compose na serveri. Kvôli jednoduchosti len ilustrujem, ako nainštalovať Docker na Ubuntu. Informácie o nastavení v iných systémoch nájdete v dokumentácii k Dockeru. Ak chcete nainštalovať Docker na Ubuntu, začnite odstránením starých inštalácií Docker. Ak žiadny nie je k dispozícii, preskočte ho.
sudo apt-get remove docker docker-engine docker.io containerd runcĎalej pomocou príkazov nainštalujte úložisko a všetky závislosti:
sudo apt-get aktualizáciasudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release -y
Pridajte kľúč GPG úložiska Docker:
curl -fsSL https: // stiahnuť.docker.com / linux / ubuntu / gpg | sudo gpg --dearmor -o / usr / share / keyrings / docker-archive-keyring.gpgĎalej pridajte stabilné úložisko pomocou príkazu echo ako:
echo "deb [arch = amd64 podpísaný = / usr / share / keyrings / docker-archive-keyring.gpg] https: // stiahnuť.docker.com / linux / ubuntu \$ (lsb_release -cs) stable "| sudo tee / etc / apt / sources.zoznam.d / docker.zoznam> / dev / null
Nakoniec aktualizujte úložiská a nainštalujte ukotviteľný panel pomocou príkazov:
sudo apt-get update && sudo apt-get nainštalovať docker-ce docker-ce-cli containerd.io docker-compose -yTeraz spustite ukotviteľný panel a povoľte pri štarte:
sudo systemctl povoliť ukotviteľný panel.službysudo systemctl start docker.služby
sudo systemctl povoliť containerd.služby
Nainštalujte SQLite
Ďalším krokom je inštalácia databázy SQLite, ktorú použijeme na spustenie NPM. Je dobré si uvedomiť, že môžete tiež použiť databázu MySQL.
Nasadiť NPM na Docker
Aby sme nasadili Nginx Proxy Manager, musíme vytvoriť súbor docker-compose, aby sme spustili Docker a inicializovali kontajner. Ak sa chcete dozvedieť viac o komponovanom súbore Docker a o tom, ako funguje, zvážte zdroje, ktoré sú tu prepojené. Dôrazne vám odporúčam vytvoriť súbor docker-compose v adresári, ktorý máte plné povolenie.
nano docker-compose.yamlĎalej pridajte do riadiaceho súboru nasledujúce riadky, uložte ich a zatvorte.
verzia: "3"služby:
aplikácia:
obrázok: „jc21 / nginx-proxy-manager: latest“
reštart: vždy
prístavy:
# HTTP port
- 80:80
# Port HTTPS:
- „443: 443“
# Používateľské rozhranie správcu
- '81: 81 '
prostredie:
DB_SQLITE_FILE: "/ data / npm.sqlite "
objemy:
- ./ data: / data
- ./ letsencrypt: / etc / letsencrypt
Nakoniec spustite príkaz docker-compose ako:
ukotviť-zložiť hore -dTýmto sa nasadí zásobník z obrazu NPM uvedeného v súbore docker-compose. Výstup tvorby:
Vytvára sa sieť „debian_default“ s predvoleným ovládačomVytiahnutie aplikácie (jc21 / nginx-proxy-manager: najnovšie) ..
najnovšie: sťahovanie z jc21 / nginx-proxy-manager
801bfaa63ef2: Potiahnutie dokončené
7927cd3bbe4c: Potiahnutie dokončené
f53b85628da5: Potiahnutie dokončené
e834c30791f9: Potiahnutie dokončené
6b68b3708dd5: Potiahnutie dokončené
963fe519b5fd: Potiahnutie dokončené
37e54d057f10: Potiahnutie dokončené
-------------------------------------
Digest: sha256: b33aab798a6150ba7dd238d36936d0882a312c983a0b3eb261a6dcbd5e6a3425
Stav: Stiahnutý novší obrázok pre jc21 / nginx-proxy-manager: najnovší
Vytváranie debian_app_1 ... hotovo
Prístup k používateľskému rozhraniu NPM
Po vytvorení a spustení sa môžete prihlásiť do rozhrania pomocou adresy IP a portu uvedeného v súbore docker-compose. V takom prípade port 81.
http: // IP: 81
Najlepšie by bolo, keby ste pristáli na prihlasovacom používateľskom rozhraní NPM. Zadajte používateľské meno a heslo ako:
[chránené e-mailom] a changeme.
Pri prvom prihlásení budete musieť aktualizovať podrobnosti správcu.
Po aktualizácii všetkých podrobností používateľa sa dostanete na hlavný informačný panel, kde môžete nakonfigurovať svojich hostiteľov proxy:
Práca s NPM
Po nainštalovaní a zaistení toho, že je spustený správca proxy, môžeme pridať hostiteľa proxy, aby sme odhalili službu bežiacu na serveri. Prejdite na Hostitelia - Proxy Hosts a kliknite na Pridať Proxy Hostiteľa.
Vyberte schému, napríklad HTTP alebo HTTPS. Ak služba, ktorú chcete vystaviť, nepodporuje prenos HTTPS, držte sa protokolu HTTP. Ďalej pridajte názvy domén, Preposlať názov hostiteľa a IP. Môžete tiež zvoliť možnosť Blokovať bežné zneužitia pre zvýšenie bezpečnosti.
Keď ste službu odhalili, pokúste sa k nej získať prístup pomocou zadaného názvu hostiteľa alebo adresy IP a portu. Táto služba by mala byť prístupná. Proxy môžete tiež spravovať v zozname hostiteľov proxy.
Zoznam prístupových práv NPM
V niektorých prípadoch možno budeme musieť vystaviť aplikáciu alebo službu v zozname proxy NPM na konkrétne adresy IP. Ak to chcete nakonfigurovať, môžete použiť NPM Access List.
Prejdite do Zoznamu prístupových práv a kliknite na Pridať zoznam proxy serverov. Tu im pomenujte prístupový zoznam; môžete tiež zvoliť Uspokojiť ľubovoľné.
Na karte autorizácie nastavte používateľské mená a heslá, ktoré budete používať na prihlásenie do služby.
Prejdite na kartu Prístup a pridajte adresy IP, z ktorých chcete povoliť pripojenie, a odmietnite všetky ostatné.
Ak chcete pripojiť zoznam prístupových práv ku konkrétnej webovej aplikácii, prejdite na položku Hostitelia - Proxy Host a vyberte svojho hostiteľa. Kliknite na Upraviť a nastavte prístupový zoznam tak, ako je definované vyššie.
Poskytovanie certifikátov SSL
NPM vám tiež umožňuje poskytovať certifikáty SSL na rôzne názvy domén. Pred pridaním názvu domény do ustanovenia SSL sa uistite, že doména smeruje na proxy server NPM.
Prejdite na SSL certifikáty a kliknite na Pridať certifikát SSL. Zadajte názvy domén a e-mailovú adresu nástroja Let's Encrypt. Nakoniec vyjadrite súhlas s podmienkami služby a ušetrite. Môžete tiež pridať výzvu DNS, ale tejto príručke sa nebudem venovať.
Týmto sa vytvorí nový dôveryhodný certifikát SSL.
Prispôsobte si domovskú stránku
Môžete tiež prispôsobiť predvolenú webovú stránku pre server NPM. Kliknite na Nastavenia - Predvolená stránka a vyberte Upraviť. Môžete si vybrať, či chcete zobraziť CHYBU 404, presmerovať na novú adresu alebo vytvoriť vlastnú stránku.
Napríklad nižšie je uvedený HTML kód, ktorý zobrazuje 403 Zakázané.
ZDROJ: CodePen https: // codepen.io / blecaf / pen / NLoEPY
Záver
Tento výukový program sa zameral na inštaláciu a nasadenie správcu servera Nginx Proxy na serveri Ubuntu so systémom Docker. Potom sme sa venovali tomu, ako nakonfigurovať NPM a pridať hostiteľa do správcu proxy.
Pamätajte: Dôsledné experimentovanie je kľúčom k ovládnutiu, takže experimentujte ďalej!