ProHoster > Блог > Pagdumala > Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying
Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying
Giunsa nako pag-set up ang OpenLiteSpeed aron balihon ang proxy sa Nextcloud sa internal nga network?
Katingad-an, ang pagpangita sa Habré alang sa OpenLiteSpeed wala maghatag bisan unsa! Nagdali ko sa pagtul-id niini nga inhustisya, tungod kay ang LSWS usa ka desente nga web server. Ganahan ko niini tungod sa katulin ug nindot nga interface sa pagdumala sa web:
Bisan kung ang OpenLiteSpeed ang labing inila ingon usa ka "accelerator" sa WordPress, sa artikulo karon ipakita nako ang usa ka piho nga paggamit niini. Nga mao ang reverse proxying sa mga hangyo (reverse proxy). Giingon nimo nga mas kasagaran ang paggamit sa nginx alang niini? Mosugot ko. Pero sakit kaayo nga naibog ta sa LSWS!
Ang pag-proxy ok, apan asa? Sa dili kaayo nindot nga serbisyo - Nextcloud. Gigamit namo ang Nextcloud sa paghimo og pribadong "file-sharing clouds". Alang sa matag kliyente, naggahin kami usa ka bulag nga VM sa Nextcloud, ug dili namon gusto nga ibutyag sila sa "gawas". Hinuon, nangayo mig proxy pinaagi sa kasagarang reverse proxy. Kini nga solusyon nagtugot:
1) kuhaa ang server diin ang data sa kliyente gitipigan gikan sa Internet ug
2) i-save ang mga ip-address.
Ang laraw sama niini:
Klaro nga ang laraw gipasayon, tungod kay Ang organisasyon sa imprastraktura sa serbisyo sa web dili ang hilisgutan sa artikulo karon.
Usab sa kini nga artikulo akong tangtangon ang pag-install ug sukaranan nga pag-configure sa sunod nga panganod, labi na tungod kay adunay mga materyal sa kini nga hilisgutan sa Habré. Apan ipakita gyud nako ang mga setting, kung wala ang Nextcloud dili molihok sa luyo sa usa ka proxy.
Gihatag:
Gi-install ang Nextcloud sa host 1 ug gi-configure aron magtrabaho sa http (walay SSL), adunay usa lamang ka interface sa lokal nga network ug usa ka "gray" nga IP address nga 172.16.22.110.
Atong i-configure ang OpenLiteSpeed sa host 2. Kini adunay duha ka interface, external (tan-aw sa Internet) ug internal nga adunay IP address sa network 172.16.22.0/24
Ang IP address sa eksternal nga interface sa host 2 mao ang ngalan sa DNS cloud.connect.link
Usa ka buluhaton:
Pagkuha gikan sa Internet pinaagi sa link 'https://cloud.connect.link' (SSL) sa Nextcloud sa internal nga network.
Pag-instalar sa OpenLiteSpeed sa Ubuntu 18.04.2.
sudo ufw pay ssh
sudo ufw default pagtugot sa paggawas
sudo ufw default deny incoming
sudo ufw let http
sudo ufw allowhttps
sudo ufw pagtugot gikan sa imong tagdumala sa pagdumala sa bisan unsang port 7080
sudo ufw nga makaganansya
I-set up ang OpenLiteSpeed as reverse proxy.
Maghimo kita og mga direktoryo ubos sa virtualhost.
cd /usr/local/lsws/
sudo mkdirc cloud.connect.link
cd cloud.connect.link/
sudo mkdir {conf,html,logs}
sudo chown lsadm:lsadm ./conf/
Atong i-configure ang virtual host gikan sa LSWS web interface.
Buksan ang pagdumala sa url http://cloud.connect.link:7080
Default nga login/password: admin/123456
Pagdugang og virtual host (Virtual Hosts > Add).
Kung magdugang, usa ka mensahe sa sayup ang makita - nawala ang file sa pag-configure. Normal kini, masulbad pinaagi sa pag-klik sa Click to create.
Sa General tab, ipiho ang Document Root (bisan kung dili kini kinahanglan, ang config dili mawala kung wala kini). Ang Ngalan sa Domain, kung dili matino, kuhaon gikan sa Virtual Host Name, nga among gihinganlan ang among domain name.
Karon na ang panahon nga hinumdoman nga kita adunay dili lamang usa ka web server, apan usa ka reverse proxy. Ang mosunod nga mga setting mosulti sa LSWS kon unsa ang i-proxy ug asa. Sa mga setting sa virtualhost, ablihi ang tab sa External App ug idugang ang usa ka bag-ong aplikasyon sa tipo sa Web server:
Ipiho ang ngalan ug adres. Mahimo nimong itakda ang usa ka arbitraryong ngalan, apan kinahanglan nimo nga hinumdoman kini, magamit kini sa sunod nga mga lakang. Ang adres mao ang kung diin nagpuyo ang Nextcloud sa internal nga network:
Sa parehas nga mga setting sa virtual host, ablihi ang tab sa Konteksto ug paghimo usa ka bag-ong konteksto sa tipo sa Proxy:
Ipiho ang mga parameter: URI = /, Web server = nextcloud_1 (ngalan gikan sa miaging lakang)
I-restart ang LSWS. Gihimo kini sa usa ka pag-klik gikan sa web interface, mga milagro! (usa ka hereditary mouse carrier nagsulti kanako)
Gibutang namon ang sertipiko, gi-configure ang https. Ang pamaagi alang sa pagkuha sa usa ka sertipiko ato kining laktawan, mouyon nga naa na nato kini ug ibutang ang yawe sa /etc/letsencrypt/live/cloud.connect.link nga direktoryo.
Magbuhat ta ug "listener" (Listeners > Add), tawgon nato ug "https". Itudlo kini sa port 443 ug timan-i nga kini mahimong Secure:
Sa SSL tab, ipiho ang dalan sa yawe ug sertipiko:
Ang "tigpaminaw" nahimo na, karon sa seksyon sa Virtual Host Mappings atong idugang ang atong virtual host niini:
Kung ang LSWS mag-proxy lang sa usa ka serbisyo, ang configuration mahimong makompleto. Apan nagplano kami nga gamiton kini aron ipadala ang mga hangyo sa lain-laing mga "instance" depende sa domain name. Ug ang tanan nga mga domain adunay ilang kaugalingon nga mga sertipiko. Busa, kinahanglan ka nga moadto sa virtualhost config ug ipiho pag-usab ang yawe ug sertipiko niini sa tab nga SSL. Sa umaabot, kini kinahanglan nga buhaton alang sa matag bag-ong virtual host.
Nagpabilin nga i-configure ang pagsulat pag-usab sa url aron ang mga hangyo sa http ma-address sa https. (By the way, kanus-a kini matapos? Panahon na para sa mga browser ug uban pang software nga moadto sa https sa default, ug ipasa sa walay-SSL nga mano-mano kung gikinahanglan).
I-on ang Enable Rewrite ug isulat ang Rewrite Rules:
Tungod sa usa ka katingad-an nga dili pagsinabtanay, imposible nga magamit ang mga lagda sa Pagsulat Pag-usab sa naandan nga pagsugod pag-usab sa Graceful. Busa, atong sugdan pag-usab ang LSWS dili maayo, apan dili maayo ug episyente:
sudo systemctl i-restart ang lsws.service
Para makapamati ang server sa port 80, maghimo ta ug laing Listener. Tawgon nato kini nga http, ipiho ang ika-80 nga pantalan ug nga kini dili Secure:
Pinaagi sa analogy sa https listener setting, atong i-attach ang atong virtual host niini.
Karon ang LSWS maminaw sa port 80 ug magpadala sa mga hangyo sa 443 gikan niini, nga isulat pag-usab ang url.
Sa konklusyon, girekomendar nako ang pagpaubos sa lebel sa pag-log sa LSWS, nga gitakda sa Debug pinaagi sa default. Niini nga mode, ang mga troso modaghan sa kusog nga kilat! Alang sa kadaghanan nga mga kaso, ang lebel sa Pasidaan igo na. Adto sa Server Configuration > Log:
Nakompleto niini ang pag-configure sa OpenLiteSpeed as reverse proxy. Sa makausa pa, i-restart ang LSWS, sunda ang link https://cloud.connect.link ug tan-awa:
Para pasudlon mi sa Nextcloud, kinahanglan namong idugang ang cloud.connect.link domain sa kasaligang listahan. Adto ta ug edit sa config.php. Awtomatiko kong gi-install ang Nextcloud sa dihang nag-install sa Ubuntu ug ang config nahimutang dinhi: /var/snap/nextcloud/current/nextcloud/config.
Idugang ang parameter nga 'cloud.connect.link' sa trusted_domains nga yawe:
Dugang pa, sa parehas nga config, kinahanglan nimong ipiho ang IP address sa among proxy. Gikuha nako ang imong pagtagad sa kamatuoran nga ang adres kinahanglan nga ipiho ang usa nga makita sa Nextcloud server, i.e. Ang IP sa lokal nga LSWS interface. Kung wala kini nga lakang, ang Nextcloud web interface molihok, apan ang mga aplikasyon dili awtorisado.
Maayo, pagkahuman makasulod kita sa interface sa pagtugot:
Nasulbad ang problema! Karon ang matag kliyente luwas nga magamit ang "file cloud" sa iyang kaugalingon nga personal nga url, ang server nga adunay mga file nahimulag gikan sa Internet, ang umaabot nga mga kliyente makadawat sa tanan nga parehas ug wala’y bisan usa nga dugang nga IP address ang maapektuhan.
Dugang pa, mahimo nimong gamiton ang usa ka reverse proxy aron maghatag static nga sulud, apan sa kaso sa Nextcloud, dili kini maghatag usa ka mamatikdan nga pagtaas sa katulin. Busa kini opsyonal ug opsyonal.
Nalipay ko nga ipaambit kini nga istorya, nanghinaut ko nga kini mapuslanon sa usa ka tawo. Kung nahibal-an nimo ang labi ka matahum ug episyente nga mga pamaagi sa pagsulbad sa problema, mapasalamaton ako sa mga komento!