[Ninux-Lombardia] OpenWRT e VirtualHost proxy (OT)

FabioB fbettoni a gmail.com
Lun 28 Dic 2015 09:07:52 CET


Ecco,

sembra che tinyproxy possa fare a caso mio:

tinyproxy.conf

# Upstream:
#
# Turns on upstream proxy support.
#
# The upstream rules allow you to selectively route upstream connections
# based on the host/domain of the site being accessed.
#
# For example:
#  # connection to test domain goes through testproxy
#  upstream testproxy:8008 ".test.domain.invalid"
#  upstream testproxy:8008 ".our_testbed.example.com"
#  upstream testproxy:8008 "192.168.128.0/255.255.254.0"
#
#  # no upstream proxy for internal websites and unqualified hosts
#  no upstream ".internal.example.com"
#  no upstream "www.example.com"
#  no upstream "10.0.0.0/8"
#  no upstream "192.168.0.0/255.255.254.0"
#  no upstream "."
#

#ReverseOnly Yes


Proverò. Oltre a tinyproxy dovrò togliere il portforward della 80,443
verso il server attuale e aggiungerle nelle porte accettate (tipo ssh
per accedere al router).

Così potrò avere sulla 443 i vari webserver dei vari hosts (anche più
di un server per host) e anche OpenVPN gestito dallo stesso router.


Fabio


Il giorno 28 dicembre 2015 08:47, FabioB <fbettoni a gmail.com> ha scritto:

> Ciao,
> ancora non ho trovato una soluzione accettabile, ma:
>
> - ngnix ha footprint minore di apache, ma credo sia ancora troppo grosso
> per OpenWrt di un routerino. Vorrei utilizzare qualcosa di veramente small.
> In fondo è poco più di un TCP proxy.
>
> - iptables permette di fare packet inspection per cercare delle stringhe
> nei pacchetti, ma non credo sia così evoluto per fare quello che voglio
>
> - non ho capito da Paolo perché non possa avere un certificato con dominio
> pubblico su un server interno. Credo che sia così nel 99% dei server web.
> Il router fa proxy in chiaro verso il server interno che ha il suo
> certificato. Suppongo invece che dovrò avere sul server due VirtualHost con
> certificato per accedere da IP pubblico e da IP privato.
>
> Fabio
>
> Il giorno 28 dicembre 2015 02:17, Paolo Meraviglia <
> aixammimation a gmail.com> ha scritto:
>
>> premetto: mai fatto con openwrt, ma quello che vuoi si chiama reverse
>> proxy.
>>
>> Come consiglia Elena, lascia perdere apache che è un macigno: nginx è più
>> facile e leggero da gestire.
>>
>> Per il discorso HTTPS, purtroppo che io sappia la miglior configurazione
>> è questa:
>>
>> internet(https) -------- (HTTPS wan ) openwrt (HTTP lan) ---------- PC
>> destinatario interno(HTTP)
>>
>> Non puoi forwardare per quanto ne so traffico HTTPS secondo url per come
>> stai facendo, in quanto i certificati dovresti registrarli secondo l'ip
>> esterno e il nome host esterno della macchina o del sito digitato nell'url.
>>
>> Per forwardare, a livello di iptables, non puoi fare un forwarding in
>> base all'url ma devi farlo in base alla porta, protocollo o ip.
>>
>>
>> Questa configurazione funziona e ti evita il problemi legati a
>> certificati firmati in modo scorretto, ma ovviamente fa ricadere il
>> "carico" di https sul router.
>>
>>
>> googlando rapidamente:
>> http://www.cyberciti.biz/faq/howto-linux-unix-setup-nginx-ssl-proxy/
>>
>>
>> Quello che vuoi fare alla fine rientra nel problema MITM, non credo sia
>> fattibile in quanto dovresti rewritare il pacchetto in fase di forwarding,
>> cosa che senza decrittare il pacchetto non puoi fare.
>>
>>
>> Io per togliermi il problema, se credi un router non regga il carico,
>> butterei la 443 verso un server interno con la funzione di load balancer
>> che come ti ho descritto sopra smisterebbe il traffico.
>>
>>
>> Se trovi info o se riesci a fare un transparent reverse proxy https fammi
>> sapere, sono anche io interessato al problema applicato non a openwrt ma ad
>> altro, ma ti dico subito quando mi documentai a suo tempo ricordo la cosa
>> come non fattibile.
>>
>> Per il discorso http invece non penso tu abbia carichi eccessivi, quindi
>> non penso vi possan esser grossi problemi ad usare solo openwrt
>>
>>
>> Paolo
>>
>>
>> Il 27/dic/2015 20:24, "Elena ``of Valhalla''" <valhalla-l a trueelena.org>
>> ha scritto:
>>
>>> On 2015-12-27 at 18:52:50 +0100, FabioB wrote:
>>> > Domanda:
>>> > Vorrei che un proxy o un webserver su OpenWRT inoltrasse da WAN a LAN
>>> in
>>> > base all'URL ai vari pc, tipo VirtualHost ma con la possibilità di
>>> > inoltrare le richieste/traffico ai vari PC in LAN.
>>> >
>>> > Suppongo che una configurazione vada gestita in userspace e non in
>>> > kernelspace con iptables.
>>>
>>> credo anche io, pronta ad essere smentita
>>>
>>> > Inoltre nel caso di https. dovrebbe solo inoltrare in maniera
>>> trasparente
>>> > in modo da evitare il carico di CPU del router e fare gestire i
>>> certificati
>>> > ai singoli webserver sui PC.
>>> >
>>> > E' fattibile secondo voi con OpenWRT, senza scomodare apache o
>>> squid-cache ?
>>>
>>> io prima di apache scomoderei nginx, che è abbastanza fatto apposta per
>>> queste cose
>>>
>>> --
>>> Elena ``of Valhalla''
>>> _______________________________________________
>>> Lombardia mailing list
>>> Lombardia a ml.ninux.org
>>> http://ml.ninux.org/mailman/listinfo/lombardia
>>>
>>
>> _______________________________________________
>> Lombardia mailing list
>> Lombardia a ml.ninux.org
>> http://ml.ninux.org/mailman/listinfo/lombardia
>>
>>
>
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://ml.ninux.org/pipermail/lombardia/attachments/20151228/c6a54d11/attachment-0001.html>


Maggiori informazioni sulla lista Lombardia