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:

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

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:

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

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.

Magdugang ta og repository:

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

instalar, pagdagan:

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

  • Minimal nga pag-setup sa firewall.

    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

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

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.

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

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.

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

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:

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

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:

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

Sa parehas nga mga setting sa virtual host, ablihi ang tab sa Konteksto ug paghimo usa ka bag-ong konteksto sa tipo sa Proxy:

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

Ipiho ang mga parameter: URI = /, Web server = nextcloud_1 (ngalan gikan sa miaging lakang)

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

I-restart ang LSWS. Gihimo kini sa usa ka pag-klik gikan sa web interface, mga milagro! (usa ka hereditary mouse carrier nagsulti kanako)

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

Magbuhat ta ug "listener" (Listeners > Add), tawgon nato ug "https". Itudlo kini sa port 443 ug timan-i nga kini mahimong Secure:

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

Sa SSL tab, ipiho ang dalan sa yawe ug sertipiko:

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

Ang "tigpaminaw" nahimo na, karon sa seksyon sa Virtual Host Mappings atong idugang ang atong virtual host niini:

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

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.

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

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:

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

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

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:

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

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:

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

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:

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

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:

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

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

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.

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

Maayo, pagkahuman makasulod kita sa interface sa pagtugot:

Nextcloud sa sulod ug gawas sa OpenLiteSpeed: pag-set up sa reverse proxying

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!

Source: www.habr.com

Idugang sa usa ka comment