ProHoster > Blogi > Haldamine > Nextcloud OpenLiteSpeedi sees ja väljaspool: pöördpuhverserveri seadistamine
Nextcloud OpenLiteSpeedi sees ja väljaspool: pöördpuhverserveri seadistamine
Kuidas seadistada OpenLiteSpeed puhverserveri tagasipööramiseks sisevõrgus Nextcloudile?
Üllataval kombel ei anna OpenLiteSpeedi otsing Habré lehel midagi! Kiirustan seda ebaõiglust parandama, sest LSWS on korralik veebiserver. Mulle meeldib see selle kiiruse ja väljamõeldud veebihaldusliidese pärast:
Kuigi OpenLiteSpeed on kõige kuulsam WordPressi "kiirendina", näitan tänases artiklis teile selle üsna spetsiifilist kasutusviisi. Nimelt päringute vastupidine puhverserver (reverse proxy). Ütlete, et selleks on tavalisem kasutada nginxi? nõustun. Kuid see on nii valus, et me armusime LSWS-i!
Puhverserver on okei, aga kus? Mitte vähem suurepärases teenuses - Nextcloud. Privaatsete "failijagamispilvede" loomiseks kasutame Nextcloudi. Iga kliendi jaoks eraldame Nextcloudiga eraldi VM-i ja me ei taha neid "väljaspool" paljastada. Selle asemel edastame taotlusi tavalise pöördpuhverserveri kaudu. See lahendus võimaldab:
1) eemaldama Internetist serveri, kuhu kliendiandmeid hoitakse ja
2) salvesta ip-aadressid.
Kava näeb välja selline:
On selge, et skeem on lihtsustatud, sest veebiteenuste infrastruktuuri korraldamine ei ole tänase artikli teema.
Ka selles artiklis jätan ma välja nextcloudi installimise ja põhikonfiguratsiooni, eriti kuna Habré kohta on sellel teemal materjale. Aga kindlasti näitan seadeid, ilma milleta Nextcloud puhverserveri taga ei tööta.
Arvestades:
Nextcloud on installitud hosti 1 ja konfigureeritud töötama üle http (ilma SSL-ita), sellel on ainult kohalik võrguliides ja "hall" IP-aadress 172.16.22.110.
Seadistame OpenLiteSpeedi hostis 2. Sellel on kaks liidest, väline (vaatab Internetti) ja sisemine IP-aadressiga võrgus 172.16.22.0/24
Host 2 välise liidese IP-aadress on DNS-i nimi cloud.connect.link
sudo apt-get install openlitespeed
sudo /usr/local/lsws/bin/lswsctrl algus
Minimaalne tulemüüri seadistamine.
sudo ufw lubab ssh-i
sudo ufw vaikimisi lubab väljuvat
sudo ufw vaikimisi keelake sissetulemine
sudo ufw lubab http
sudo ufw luba https
sudo ufw luba alates teie juhtkonna host mis tahes porti 7080
sudo ufw lubada
Seadistage OpenLiteSpeed pöördpuhverserverina.
Loome virtuaalhosti alla kataloogid.
cd /usr/local/lsws/
sudo mkdirc cloud.connect.link
cd cloud.connect.link/
sudo mkdir {conf,html,logs}
sudo chown lsadm:lsadm ./conf/
Lisage virtuaalne host (Virtuaalsed hostid > Lisa).
Lisamisel ilmub veateade – konfiguratsioonifail puudub. See on normaalne, see lahendatakse, klõpsates nuppu Loomiseks klõpsake nuppu.
Vahekaardil Üldine määrake dokumendi juur (kuigi seda pole vaja, ilma selleta konfiguratsioon ei käivitu). Kui domeeninimi pole täpsustatud, võetakse see virtuaalsest hostinimest, mille nimetasime oma domeeninimeks.
Nüüd on aeg meeles pidada, et meil pole mitte ainult veebiserver, vaid ka pöördpuhverserver. Järgmised seaded ütlevad LSWS-ile, mida ja kuhu puhverserver kasutada. Avage virtuaalhosti seadetes vahekaart Väline rakendus ja lisage uus veebiserveri tüüpi rakendus:
Täpsustage nimi ja aadress. Saate määrata suvalise nime, kuid peate selle meeles pidama, see on kasulik järgmistes sammudes. Aadress on see, kus Nextcloud elab sisevõrgus:
Avage samades virtualhosti seadetes vahekaart Kontekst ja looge uus puhverserveri tüüpi kontekst:
Taaskäivitage LSWS. Seda tehakse veebiliidesest ühe klõpsuga, imesid! (minus räägib pärilik hiirekandja)
Panime sertifikaadi, seadistame https. Sertifikaadi saamise kord jätame selle välja, lepime kokku, et meil on see juba olemas, ja asume võtmega kataloogis /etc/letsencrypt/live/cloud.connect.link.
Loome "kuulaja" (Listeners > Add), nimetagem seda "https". Suunake see pordile 443 ja pange tähele, et see on turvaline:
Määrake vahekaardil SSL võtme ja sertifikaadi tee:
"Kuulaja" on loodud, nüüd lisame jaotises Virtual Host Mappings sellele oma virtuaalse hosti:
Kui LSWS kasutab puhverserverit ainult ühele teenusele, saab konfiguratsiooni lõpule viia. Kuid kavatseme seda kasutada päringute saatmiseks erinevatele "instantsidele" sõltuvalt domeeninimest. Ja kõigil domeenidel on oma sertifikaadid. Seetõttu peate minema virtualhosti konfiguratsiooni ja määrama uuesti selle võtme ja sertifikaadi vahekaardil SSL. Edaspidi tuleks seda teha iga uue virtuaalhosti puhul.
Jääb konfigureerida URL-i ümberkirjutamine nii, et http-päringud adresseeritakse https-ile. (Muide, millal see lõpeb? Brauseritel ja muul tarkvaral on aeg vaikimisi minna https-ile ja vajadusel käsitsi no-SSL-ile edastada).
Lülitage sisse Luba ümberkirjutamine ja kirjutage ümberkirjutamise reeglid:
Kummalise arusaamatuse tõttu on võimatu ümberkirjutamise reegleid rakendada tavapärase Graceful restartiga. Seetõttu taaskäivitame LSWS-i mitte nõtkelt, vaid ebaviisakalt ja tõhusalt:
sudo systemctl taaskäivitage lsws.service
Selleks, et server kuulaks porti 80, loome teise kuulaja. Nimetagem seda http, määrake 80. port ja et see pole turvaline:
Analoogiliselt https-kuulaja seadistusega ühendame selle külge oma virtuaalse hosti.
Nüüd kuulab LSWS porti 80 ja saadab sealt päringuid numbrile 443, kirjutades URL-i ümber.
Kokkuvõtteks soovitan langetada LSWS-i logimise taset, mis on vaikimisi seatud väärtusele Debug. Selles režiimis paljunevad palgid välgukiirusel! Enamikul juhtudel piisab hoiatuse tasemest. Avage Serveri konfiguratsioon > Logi:
See lõpetab OpenLiteSpeedi konfigureerimise pöördpuhverserverina. Taaskäivitage LSWS ja järgige linki https://cloud.connect.link ja näe:
Selleks, et Nextcloud meid sisse lubaks, peame lisama usaldusväärsete loendisse domeeni cloud.connect.link. Lähme redigeerima config.php. Installisin Nextcloudi automaatselt Ubuntu installimisel ja konfiguratsioon asub siin: /var/snap/nextcloud/current/nextcloud/config.
Lisage parameeter „cloud.connect.link” võtmele trusted_domains:
Lisaks peate samas konfiguratsioonis määrama meie puhverserveri IP-aadressi. Juhin tähelepanu sellele, et aadressiks tuleb määrata see, mis on Nextcloudi serverile nähtav, st. Kohaliku LSWS-liidese IP. Ilma selle sammuta töötab Nextcloudi veebiliides, kuid rakendused pole volitatud.
Suurepärane, pärast seda pääseme autoriseerimisliidesesse:
Probleem lahendatud! Nüüd saab iga klient turvaliselt kasutada “failipilve” oma isiklikul url-il, failidega server on internetist eraldatud, tulevased kliendid saavad kõik samamoodi ja see ei mõjuta ühtegi täiendavat IP-aadressi.
Lisaks saate staatilise sisu edastamiseks kasutada pöördpuhverserverit, kuid Nextcloudi puhul see kiirust märgatavalt ei suurenda. Nii et see on valikuline ja valikuline.
Mul on hea meel seda lugu jagada, loodan, et sellest on kellelegi kasu. Kui teate probleemi lahendamiseks elegantsemaid ja tõhusamaid meetodeid, olen kommentaaride eest tänulik!