Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Hvernig set ég upp OpenLiteSpeed ​​​​til að snúa proxy við Nextcloud á innra netinu?

Það kemur á óvart að leit á Habré að OpenLiteSpeed ​​​​veitir ekki neitt! Ég flýti mér að leiðrétta þetta óréttlæti, því LSWS er ​​ágætis vefþjónn. Ég elska það fyrir hraðann og fínt vefstjórnunarviðmót:

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Jafnvel þó að OpenLiteSpeed ​​​​sé frægastur sem WordPress "hröðunartæki", mun ég í greininni í dag sýna frekar sérstaka notkun á því. Nefnilega öfug umboð beiðna (reverse proxy). Þú segir að það sé algengara að nota nginx fyrir þetta? Ég skal vera sammála. En það er svo sárt að við urðum ástfangin af LSWS!

Umboð er í lagi, en hvar? Í ekki síður frábærri þjónustu - Nextcloud. Við notum Nextcloud til að búa til einka „skjalaskiptaský“. Fyrir hvern viðskiptavin úthlutum við sérstökum VM með Nextcloud og við viljum ekki afhjúpa þá „úti“. Þess í stað, við umboðsbeiðnir í gegnum sameiginlegt öfugt umboð. Þessi lausn leyfir:
1) fjarlægðu netþjóninn sem biðlaragögnin eru geymd á af internetinu og
2) vista ip-tölur.

Myndin lítur svona út:

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Það er ljóst að kerfið er einfaldað, vegna þess skipulag vefþjónustuinnviða er ekki efni greinarinnar í dag.

Einnig í þessari grein mun ég sleppa uppsetningu og grunnstillingu nextcloud, sérstaklega þar sem það er efni um þetta efni á Habré. En ég mun örugglega sýna stillingarnar, án þeirra mun Nextcloud ekki virka á bak við proxy.

Gefið:
Nextcloud er sett upp á hýsil 1 og stillt til að vinna yfir http (án SSL), hefur aðeins staðarnetsviðmót og „grátt“ IP tölu 172.16.22.110.
Við skulum stilla OpenLiteSpeed ​​​​á hýsil 2. Það hefur tvö viðmót, ytra (horfur á internetið) og innra með IP tölu á netinu 172.16.22.0/24
Ytra viðmóts IP vistfang Host 2 er DNS nafn cloud.connect.link

Verkefni:
Fáðu af netinu með hlekknum 'https://cloud.connect.link' (SSL) til Nextcloud á innra neti.

  • Uppsetning OpenLiteSpeed ​​​​ á Ubuntu 18.04.2.

Við skulum bæta við geymslu:

wget -O http://rpms.litespeedtech.com/debian/enable_lst_debain_repo.sh |sudo bash
sudo líklegur til-fá endurnýja

setja upp, keyra:

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

  • Lágmarks uppsetning eldveggs.

    sudo ufw leyfa ssh
    sudo ufw sjálfgefið leyfir sendan
    sudo ufw sjálfgefið neita móttöku
    sudo ufw leyfa http
    sudo ufw leyfa https
    sudo ufw leyfa frá stjórnenda gestgjafinn þinn í hvaða höfn sem er 7080
    sudo ufw virkja

  • Settu upp OpenLiteSpeed ​​​​sem öfugt umboð.
    Við skulum búa til möppur undir sýndargestgjafanum.

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

Við skulum stilla sýndargestgjafann frá LSWS vefviðmótinu.
Opna vefslóðastjórnun http://cloud.connect.link:7080
Sjálfgefin innskráning/lykilorð: admin/123456

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Bættu við sýndargestgjafa (Virtual Hosts > Add).
Þegar bætt er við birtast villuboð - stillingarskrána vantar. Þetta er eðlilegt, leyst með því að smella á Smelltu til að búa til.

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Í Almennt flipanum, tilgreindu skjalarót (þó að það sé ekki þörf, mun stillingin ekki fara af stað án hennar). Lénið, ef það er ekki tilgreint, verður tekið úr sýndarhýsingarheitinu, sem við nefndum lénið okkar.

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Nú er kominn tími til að muna að við höfum ekki bara vefþjón heldur öfugt umboð. Eftirfarandi stillingar munu segja LSWS hvað á að proxy og hvar. Í sýndarhýsingarstillingunum, opnaðu flipann Ytri forrit og bættu við nýju forriti af gerð vefþjónsins:

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Tilgreindu nafn og heimilisfang. Þú getur tilgreint handahófskennt nafn, en þú þarft að muna það, það kemur sér vel í næstu skrefum. Heimilisfangið er það þar sem Nextcloud býr í innra netinu:

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Í sömu sýndarhýsingarstillingum, opnaðu samhengisflipann og búðu til nýtt samhengi af Proxy gerðinni:

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Tilgreindu færibreyturnar: URI = /, Vefþjónn = nextcloud_1 (nafn frá fyrra skrefi)

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Endurræstu LSWS. Þetta er gert með einum smelli úr vefviðmótinu, kraftaverk! (arfgengur músaberi talar í mér)

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð
Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

  • Við setjum vottorðið, stillum https.
    Aðferð til að fá vottorð við munum sleppa því, samþykkja að við höfum það nú þegar og liggja með lyklinum í /etc/letsencrypt/live/cloud.connect.link möppunni.

Búum til „hlustara“ (Hlustendur > Bæta við), köllum það „https“. Bentu því á port 443 og athugaðu að það verður öruggt:

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Í SSL flipanum skaltu tilgreina slóðina að lyklinum og vottorðinu:

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

„Hlustandinn“ hefur verið búinn til, núna í hlutanum „Virtual Host Mappings“ munum við bæta sýndargestgjafanum okkar við hann:

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Ef LSWS mun aðeins umboð til einnar þjónustu er hægt að klára uppsetninguna. En við ætlum að nota það til að senda beiðnir til mismunandi „tilvika“ eftir léninu. Og öll lén munu hafa sín eigin vottorð. Þess vegna þarftu að fara í sýndarhýsingarstillinguna og tilgreina aftur lykil og vottorð í SSL flipanum. Í framtíðinni ætti þetta að vera gert fyrir hvern nýjan sýndarhýsil.

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Eftir er að stilla endurskrifun vefslóða þannig að http beiðnum sé beint til https.
(Við the vegur, hvenær lýkur þessu? Það er kominn tími til að vafrar og annar hugbúnaður fari sjálfgefið á https og áframsendur handvirkt yfir á no-SSL ef þörf krefur).
Kveiktu á Virkja endurskrifa og skrifaðu umritunarreglur:

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

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Vegna undarlegs misskilnings er ómögulegt að beita Rewrite reglum með venjulegri Graceful endurræsingu. Þess vegna munum við endurræsa LSWS ekki með þokka, heldur dónalega og skilvirkt:

sudo systemctl endurræstu lsws.service

Til að láta þjóninn hlusta á port 80, búum til annan hlustanda. Við skulum kalla það http, tilgreina 80. höfnina og að hún verði óörugg:

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Á hliðstæðan hátt við https hlustunarstillinguna skulum við tengja sýndargestgjafann okkar við hana.

Nú mun LSWS hlusta á höfn 80 og senda beiðnir til 443 frá henni og endurskrifa slóðina.
Að lokum mæli ég með því að lækka LSWS skráningarstigið, sem er sjálfgefið stillt á kembiforrit. Í þessum ham fjölga stokkarnir á leifturhraða! Í flestum tilfellum dugar viðvörunarstigið. Farðu í Server Configuration > Log:

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Þetta lýkur uppsetningu OpenLiteSpeed ​​​​sem öfugt umboð. Enn og aftur, endurræstu LSWS, fylgdu hlekknum https://cloud.connect.link og sjáðu:

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Til þess að Nextcloud geti hleypt okkur inn þurfum við að bæta cloud.connect.link léninu við trausta listann. Við skulum breyta config.php. Ég setti Nextcloud sjálfkrafa upp þegar ég setti upp Ubuntu og stillingin er staðsett hér: /var/snap/nextcloud/current/nextcloud/config.
Bættu 'cloud.connect.link' færibreytunni við trusted_domains lykilinn:

'traust_lén' =>
fylki (
0 => '172.16.22.110',
1 => 'cloud.connect.link',
),

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Ennfremur, í sömu stillingu, verður þú að tilgreina IP tölu umboðsins okkar. Ég vek athygli á því að heimilisfangið verður að vera tilgreint það sem er sýnilegt Nextcloud þjóninum, þ.e. IP staðbundins LSWS viðmóts. Án þessa skrefs virkar Nextcloud vefviðmótið, en forrit eru ekki leyfð.

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

Frábært, eftir það getum við komist inn í heimildarviðmótið:

Nextcloud innan og utan OpenLiteSpeed: setja upp öfugt umboð

Vandamál leyst! Nú getur hver viðskiptavinur örugglega notað „skráaskýið“ á eigin persónulegu vefslóð, þjónninn með skrám er aðskilinn frá internetinu, framtíðarviðskiptavinir munu fá allt eins og ekki eitt einasta IP-tala til viðbótar verður fyrir áhrifum.
Að auki geturðu notað öfugt umboð til að skila kyrrstöðu efni, en þegar um er að ræða Nextcloud mun þetta ekki gefa áberandi aukningu á hraða. Svo það er valfrjálst og valfrjálst.

Ég er ánægður með að deila þessari sögu, ég vona að hún muni nýtast einhverjum. Ef þú þekkir glæsilegri og skilvirkari aðferðir til að leysa vandamálið mun ég vera þakklátur fyrir athugasemdirnar!

Heimild: www.habr.com

Bæta við athugasemd