Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

Nola konfiguratu OpenLiteSpeed ​​​​barne sarean Nextcloud-en proxy alderantzikatzeko?

Harrigarria bada ere, OpenLiteSpeed-en Habré-n bilaketak ez du ezer ematen! Injustizia hau zuzentzen azkartzen naiz, LSWS web zerbitzari duina delako. Maite dut bere abiadura eta web-administrazio interfaze dotoreagatik:

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

OpenLiteSpeed ​​​​WordPress "azeleragailu" gisa ospetsuena den arren, gaurko artikuluan erabilera zehatz samarra erakutsiko dut. Hots, eskaeren alderantzizko proxy-a (reverse proxy). Horretarako nginx erabiltzea ohikoagoa dela diozu? ados egongo naiz. Baina hainbeste min ematen du LSWS-rekin maitemindu ginen!

Proxya ondo dago, baina non? Zerbitzu zoragarrian - Nextcloud. Nextcloud erabiltzen dugu "fitxategiak partekatzeko hodei" pribatuak sortzeko. Bezero bakoitzari, VM bereizi bat esleitzen diogu Nextcloud-ekin, eta ez ditugu "kanpoan" agerian utzi nahi. Horren ordez, proxy eskaerak alderantzizko proxy komun baten bidez egiten ditugu. Irtenbide honek aukera ematen du:
1) Internetetik bezeroaren datuak gordetzen dituen zerbitzaria kendu eta
2) gorde ip-helbideak.

Diagramak itxura hau du:

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

Argi dago eskema sinplifikatuta dagoela, zeren web zerbitzuen azpiegituraren antolaketa ez da gaurko artikuluaren gaia.

Artikulu honetan ere hurrengo hodeiaren instalazioa eta oinarrizko konfigurazioa baztertuko ditut, batez ere Habré-k gai honi buruzko materialak dituelako. Baina behin betiko erakutsiko ditut ezarpenak, eta horiek gabe Nextcloud-ek ez du proxy baten atzean funtzionatuko.

Emana:
Nextcloud 1. ostalarian instalatuta dago eta http-ren bidez lan egiteko konfiguratuta dago (SSL gabe), sare lokaleko interfazea eta 172.16.22.110 IP helbide "grisa" baino ez ditu.
Konfigura dezagun OpenLiteSpeed ​​​​ostalariaren 2. Bi interfaze ditu, kanpokoa (Internetera begiratzen du) eta barneko IP helbide batekin sarean 172.16.22.0/24.
Host 2-ren kanpoko interfazearen IP helbidea DNS izena cloud.connect.link da

Helburua:
Sartu Internetetik ' estekaren bidezhttps://cloud.connect.link' (SSL) Nextcloud-era barne sarean.

  • OpenLiteSpeed ​​​​instalatzea Ubuntu 18.04.2-n.

Gehitu dezagun biltegi bat:

wget -O http://rpms.litespeedtech.com/debian/enable_lst_debain_repo.sh |sudo bash
sudo apt-get update

instalatu, exekutatu:

sudo apt-get install openlitespeed
sudo /usr/local/lsws/bin/lswsctrl start

  • Suebakiaren konfigurazio minimoa.

    sudo ufw baimendu ssh
    sudo ufw default baimendu irteera
    sudo ufw default ukatu sarrerakoa
    sudo ufw baimendu http
    sudo ufw baimendu https
    sudo ufw baimendu zure kudeaketa ostalari 7080 edozein portura
    sudo ufw gaitu

  • Konfiguratu OpenLiteSpeed ​​​​alderantzizko proxy gisa.
    Sor ditzagun direktorioak ostalari birtualaren azpian.

    cd /usr/local/lsws/
    sudo mkdirc cloud.connect.link
    cd cloud.connect.link/
    sudo mkdir {conf,html, logs}
    sudo chown lsadm:lsadm ./conf/

Konfigura dezagun ostalari birtuala LSWS web-interfazetik.
Ireki URL kudeaketa http://cloud.connect.link:7080
Saio-hasiera/pasahitza lehenetsia: admin/123456

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

Gehitu ostalari birtual bat (Ostalari birtualak > Gehitu).
Gehitzean, errore-mezu bat agertuko da - konfigurazio fitxategia falta da. Hau normala da, sortu klik egin klik eginez konpondu.

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

Orokorra fitxan, zehaztu dokumentuaren erroa (beharrezkoa ez den arren, konfigurazioa ez da aterako hura gabe). Domeinu-izena, zehazten ez bada, gure domeinu-izen izendatu genuen ostalari-izen birtualetik hartuko da.

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

Orain web zerbitzari bat ez ezik, alderantzizko proxy bat dugula gogoratzeko garaia da. Ezarpen hauek LSWSri zer proxy egin eta non adieraziko diote. Virtualhost ezarpenetan, ireki Kanpoko aplikazioa fitxa eta gehitu Web zerbitzari motako aplikazio berri bat:

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

Zehaztu izena eta helbidea. Izen arbitrario bat zehaztu dezakezu, baina gogoratu behar duzu, ondo etorriko zaizu hurrengo urratsetan. Helbidea Nextcloud barne sarean bizi dena da:

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

Ostalari birtualaren ezarpen berdinetan, ireki Testuingurua fitxa eta sortu Proxy motako testuinguru berri bat:

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

Zehaztu parametroak: URI = /, Web zerbitzaria = nextcloud_1 (aurreko urratseko izena)

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

Berrabiarazi LSWS. Hau web interfazetik klik bakarrean egiten da, mirariak! (Sagu-eramaile hereditario batek hitz egiten du nigan)

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu
Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

  • Ziurtagiria jartzen dugu, https konfiguratu.
    Ziurtagiria lortzeko prozedura alde batera utziko dugu, dagoeneko badugula adostu eta /etc/letsencrypt/live/cloud.connect.link direktorioko gakoarekin etzango dugu.

Sor dezagun "entzule" bat (Entzuleak > Gehitu), dei diezaiogun "https". Seinalatu 443 ataka eta kontuan izan Segurua izango dela:

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

SSL fitxan, zehaztu gakoaren eta ziurtagiriaren bidea:

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

"Entzulea" sortu da, orain Virtual Host Mappings atalean gure ostalari birtuala gehituko diogu:

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

LSWS-k zerbitzu bakarrera proxy egiten badu, konfigurazioa osa daiteke. Baina domeinu-izenaren arabera eskaerak "instantzia" ezberdinetara bidaltzeko erabiltzeko asmoa dugu. Eta domeinu guztiek beren ziurtagiriak izango dituzte. Hori dela eta, virtualhost konfiguraziora joan eta berriro bere gakoa eta ziurtagiria SSL fitxan zehaztu behar dituzu. Etorkizunean, ostalari birtual berri bakoitzeko egin beharko litzateke.

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

Url berridazketa konfiguratzea geratzen da, http eskaerak https-ra bideratu daitezen.
(Bide batez, noiz amaituko da hau? Nabigatzaileek eta beste software batzuek lehenespenez https-ra joateko ordua da, eta behar izanez gero eskuz ez-SSLra birbidaltzeko).
Aktibatu Gaitu Berridazketa eta idatzi Berridazketa arauak:

RewriteCond %{SERVER_PORT} 80
Berridatzi araua ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

Gaizki-ulertu arraro baten ondorioz, ezinezkoa da Berridatzi arauak ohiko Graceful berrabiaraztearekin aplikatzea. Hori dela eta, LSWS berrabiaraziko dugu ez dotorez, baina zakar eta eraginkortasunez:

sudo systemctl berrabiarazi lsws.service

Zerbitzariak 80 ataka entzuteko, sor dezagun beste Entzule bat. Dei diezaiogun http, zehaztu 80. ataka eta ez-segurua izango dela:

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

https entzule ezarpenarekin analogia eginez, erantsi diezaiogun gure ostalari birtuala.

Orain LSWS-k 80 atakan entzungo du eta bertatik 443ra eskaerak bidaliko ditu, url-a berridatziz.
Amaitzeko, LSWS erregistro-maila jaistea gomendatzen dut, lehenespenez Araztu gisa ezarrita dagoena. Modu honetan, erregistroak tximistaren abiaduran biderkatzen dira! Kasu gehienetan, Abisu maila nahikoa da. Joan zerbitzariaren konfigurazioa > erregistrora:

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

Honek OpenLiteSpeed-en konfigurazioa alderantzizko proxy gisa osatzen du. Berriro ere, berrabiarazi LSWS, jarraitu esteka https://cloud.connect.link eta ikusi:

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

Nextcloud-ek sartzen uzteko, cloud.connect.link domeinua gehitu behar dugu konfiantzazko zerrendara. Goazen config.php editatzera. Nextcloud automatikoki instalatu nuen Ubuntu instalatzean eta konfigurazioa hemen dago: /var/snap/nextcloud/current/nextcloud/config.
Gehitu 'cloud.connect.link' parametroa trusted_domains gakoari:

'trusted_domains' =>
matrizea (
0 => '172.16.22.110',
1 => 'cloud.connect.link',
),

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

Gainera, konfigurazio berean, gure proxyaren IP helbidea zehaztu behar duzu. Zure arreta deitzen dizut helbidea Nextcloud zerbitzariarentzat ikusgai dagoena zehaztu behar dela, hau da. LSWS interfaze lokalaren IPa. Urrats hori gabe, Nextcloud web interfazeak funtzionatzen du, baina aplikazioak ez daude baimenduta.

'trusted_proxies' =>
matrizea (
0 => '172.16.22.100',
),

Bikaina, horren ondoren baimen-interfazean sartu gaitezke:

Nextcloud OpenLiteSpeed ​​barruan eta kanpoan: alderantzizko proxy-a konfiguratu

Arazoa konponduta! Orain bezero bakoitzak segurtasunez erabil dezake "fitxategi-hodeia" bere url pertsonalean, fitxategiak dituen zerbitzaria Internetetik bereizita dago, etorkizuneko bezeroek dena berdin jasoko dute eta ez da IP helbide gehigarri bakar bat ere eragingo.
Gainera, alderantzizko proxy bat erabil dezakezu eduki estatikoa emateko, baina Nextcloud-en kasuan, horrek ez du abiadura handitze nabarmenik emango. Beraz, aukerakoa eta aukerakoa da.

Pozten naiz istorio hau partekatzeaz, norbaitentzat erabilgarria izatea espero dut. Arazoa konpontzeko metodo dotore eta eraginkorragoak ezagutzen badituzu, eskertuko ditut iruzkinak!

Iturria: www.habr.com

Gehitu iruzkin berria