Proxy socks/ca: Diferència entre les revisions
De Guifi.net - Wiki Català
(→Configuració) |
|||
Línia 182: | Línia 182: | ||
[[es:Proxy socks]] | [[es:Proxy socks]] | ||
+ | [[Categoria:Proxy]] |
Revisió de 19:37, 21 jul 2013
Contingut
Proxy Socks
Alguns serveis com el correu electrònic no els podem redirigir directament cap a un proxy http (squid). En aquests casos podem fer servir un altre tipus de proxy: el proxy socks. El podem instal·lar a qualsevol servidor que tingui sortides cap a Internet i cap a Guifi.net, amb una o dues ethernet.
Configuració a la web de guifi.net
Configuració del proxy socks Dante amb Debian
apt-get update && apt-get install dante-server
Editem l'arxiu /etc/danted.conf.
Configuració del servei
logoutput: /var/log/danted.log
internal: eth0 port = 1080
external: eth1
method: username none
user.privileged: proxy
user.notprivileged: nobody
user.libwrap: nobody
connecttimeout: 30
iotimeout: 30000
Aquesta configuració seria en el cas de que tinguessim a eth0 la sortida cap a Guifi.net, i a eth1 la sortida cap a Internet. S'ha de modificar segons es tingui configurada la xarxa al vostre servidor.
En cas d'accedir a Internet i a Guifi.net per la mateixa interfície, el valor d'internal i external sera el mateix (p.e. eth0).
Recordeu de fer la redirecció del port 1080 a l'antena cap al servidor, i/o obrir-lo al router.
Conexions dels clients
client pass { from: 10.0.0.0/8 port 1-65535 to: 0.0.0.0/0 } client block { from: 0.0.0.0/0 to: 0.0.0.0/0 log: connect error }
Conexions per ports i protocols
# permitir http (comentado porque vamos a usar squid para el http) #pass { # from: 10.0.0.0/8 to: 0.0.0.0/0 port = 80 #} #imap pass { from: 10.0.0.0/8 to: 0.0.0.0/0 port = 143 } pass { from: 10.0.0.0/8 to: 0.0.0.0/0 port = 993 } #pop pass { from: 10.0.0.0/8 to: 0.0.0.0/0 port = 110 } pass { from: 10.0.0.0/8 to: 0.0.0.0/0 port = 995 } #smtp pass { from: 10.0.0.0/8 to: 0.0.0.0/0 port = 25 } pass { from: 10.0.0.0/8 to: 0.0.0.0/0 port = 587 } pass { from: 10.0.0.0/8 to: 0.0.0.0/0 port = 465 } block { from: 0.0.0.0/0 to: 0.0.0.0/0 log: connect error disconnect }
El servei l'iniciem amb:
/etc/init.d/danted start
Qualsevol client de correu que es pugui configurar per fer servir proxy socks v5 hauria de funcionar. Provat exitosament amb Thunderbird (a Windows, Linux i Mac osX).
Registre de conexions al proxy
Per poder controlar les conexions que es fan al proxy socks, podem fer servir aquest script:
#!/bin/bash NUMS_PIDS_DANTED=$(pidof danted) kill -s 10 $NUMS_PIDS_DANTED exit 0
El guardem com dantelog.sh, p.e. a /usr/local/bin/ , li donem permissos d'execució i l'executem a intervals (p.e. 1 hora) des del cron:
vim /usr/local/bin/dantelog.sh chmod u+x /usr/local/bin/dantelog.sh crontab -e
i afegim la linia:
@hourly sh /usr/local/bin/dantelog.sh
Podem veure el registre a /var/log/danted.log
Referències
Autenticació amb Dante
LDAP
Per realitzar una consulta d'un usuari de proxy al LDAP, primer configurem LDAP perquè validi contra guifi:
Al fitxer /etc/ldap/ldap.conf afegim:
BASE dc=guifi,dc=net URI ldaps://ldap.guifi.net/ ldaps://ldap2.guifi.net/ TLS_REQCERT never
Fem una consulta del tipus:
ldapsearch -x -W -D "uid=nom.cognom,o=proxyusers,dc=guifi,dc=net" -b "o=proxyusers,dc=guifi,dc=net" -H ldaps://ldap.guifi.net/ "(cn=nom.cognom)"
Enter LDAP Password:
guifi-proxysocks
- guifi-proxysocks (en desenvolupament)
Configuració d'un socks relay
En algunes instal·lacions pot convenir tenir un proxy local que sigui l'encarregat de gestionar una llista dels proxys disponibles, per no haver de modificar un alt nombre de màquines quan el proxy principal estigui caigut.
Tenim disponible, per varis sistemes operatius, el paquet srelay, que ens permet fer aquest tipus d'instal·lació.
Instal·lació
(FreeBSD 8.1R, Solaris 8, 10, Linux-i386, MacOS 10.5)
Descarreguem el codi font de la web. Descomprimim l'arxiu i seguim les instruccions de l'arxiu INSTALL, segons quin sistema operatiu estem fent servir. Normalment (si no necessitem cap configuració especial) l'instal·larem amb:
./configure make
(OpenWRT)
opkg update && opkg install srelay
Configuració
Editem l'arxiu /etc/srelay.conf amb el següent contingut:
# Listado global de todos los servicios publicos en Guifi.net: # http://guifi.net/ca/node/3671/view/services # Subred local con acceso al relay 192.168.1.0/24 any - # Cadena de proxy socks de guifi.net # Se recomienda ordenar por proximidad geografica # dest[/mask] port proxy proxy-port # SFelDCproxy2 - Sant Feliu de Codines (Valles Oriental, Barcelona) # http://guifi.net/node/55511 0.0.0.0 any 10.140.150.227 1080 # SFelDCproxy1 - Sant Feliu de Codines (Valles Oriental, Barcelona) # http://guifi.net/node/46911 0.0.0.0 any 10.140.150.42 1080 # Proxy socks BCNRossello208 - (Barcelones, Barcelona) # http://guifi.net/node/40880 0.0.0.0 any 10.228.192.210 1080 # ProxyTRSASantMateu39 - Terrassa (Valles Occidental, Barcelona) # http://guifi.net/node/36194 0.0.0.0 any 10.139.61.67 1080 # BCNOnzeSetembre11 - (Barcelones, Barcelona) # http://guifi.net/node/53577 0.0.0.0 any 10.139.7.4 1080
Editem el rang de xarxa local segons correspongui, i modifiquem l'ordre dels proxys segons la proximitat geogràfica a l'ubicació del nostre servidor.
Amb aquesta configuració tindrem escoltant al port 1080 del servidor el srelay, que s'encarregarà de redirigir cap al primer proxy que trobi disponible les peticions dels clients de correu (srelay llegeix srelay.conf de dalt a baix). Els clients de correu s'han de configurar amb l'IP i port del servidor local.
Nota important: A zones aïllades (no conectades a la totalitat de la xarxa guifi.net) on nomès hi hagi un ùnic servidor proxy socks, NO es necessària la configuració d'un relay.
guifi-socksrelay
- guifi-socksrelay (en desenvolupament)