Cisco 837 VPN LAN-to-LAN i VPN Client (v4.0.x)
Aquesta tarda he configurat dos Cisco 837 per dos clients, un per fer un enllaç LAN2LAN entre Alacant i Vic, i un altre per fer enllaçar una oficina amb els seus usuaris en iterància, que connectaran amb VPNClient des de qualsevol lloc. Doncs bé no faré el típic mini-manual o cookbook per explicar com ho he fet. Ja que Cisco si algo té ben parit és la documentació tècnica que es pot obtenir a través del CCO (Cisco Connection Online). També s’ha de dir que si no teniu uns coneixements mínims e Cisco o un CCNA, almenys, no és tasca fàcil barallar-se de bones a primeres amb la CLI de Cisco.

Pels que no conegueu els routers 837 de Cisco, són els que últimament més es monten ja que són routers ADSL i amb una gran diversitat de IOS per instal·lar, a més suporten moltes funcions de seguretat: VPNs, firewall, ssh, etc. Doncs bé a continuació us poso els links del CCO d’on he tret la informació per configurar el router i al costat un link amb el pdf en local, per la gent que no tingui accés al CCO de Cisco.
- Configuring IPSec Router-to-Router with NAT Overload and Cisco Secure VPN Client (local) malgrat el manual té la configuració dels dos routers que he configurat barrejada no és gaire difícil distingir les línies necessaries per la VPN LAN-to-LAN i la del VPN Client de Cisco. Sobretot perquè els comentaris ajuden molt.
- IPSec Negotiation/IKE Protocols – Configuration Examples and TechNotes aquí teniu una bona llista de documents que té Cisco per montar tot tipus d’VPNs. Realment hi ha exemples per donar i per vendre. Només cal tenir paciència per buscar el que més s’assembla al nostre escenari.
PearlMagik – winbolic link – links simbólics en windows
Links simbólics en un windows, amb aquestes poques parauls crec que es dona la millor definició possible a aquesta eina: Winbolic Link. És l’última troballa que m’ha passat l’ernest, crec que és molt útil per la gent que estem acostumats a treballar en entorns linux/unix ja que quan anem a windows no ens paren de faltar eines.
No us perdeu com funciona, ja que la sorpresa, almenys per mi, ha estat gran:
Winbolic Link creates these links using only built-in functionality of Windows. It does not extend or modify the functionality of Windows or the file system, install any drivers, or require any service to remain running to maintain functionality. It merely creates the special kinds of files and folders Windows already supports, but which Microsoft did not distribute tools to create.
L’screenshot de rigor:

Linksys: WAP54GPE i WRTSL54GS
Ja fa dies que costa trobar el mític WRT54G, sinó que els hi preguntin a la gent de guifi. Així que toca pensar en els nous models de linksys que hi han i que venen. Curiosament després de llegir una discusió sobre aquest tema a la llista de correu de la colla d’osona avui m’estava posant al dia del meu bloglines, quan he vist que a linksysinfo ens parlen dels dos models que estan al caure WAP54GPE i WRTSL54GS (review de Tom’s networking – local).
El WAP54GPE crec que és un bon substitut del WRT54G per enllaços en exteriors. Almenys si mirem la foto sembla força robust no sé si aguantarà gaire la duresa d’estar a l’exterior però això no se sap si no es prova. Suposo que mica en mica els firmwars com els d’sveasoft i tota la colla aniran treien versions impresionants per aquest dispositiu i podrem disposar d’aquests entorns que ja ens semblen tan i tan habituals en els nostres linksys però que de fet, no són els firmwares originals.

Per interiors i amb funcions que sumen la potència del WRT54G amb les del NSLU2 podem trobar el WRTSL54GS.

El que no sabia jo és que hi havia un estàndard que es diu UPnP Media que ens permet connectar infinitat de hardware i software a storage de la xarxa sigui quin sigui el format del sistema de fitxers del dispositiu (HD,flash, CD, etc) que l’enmagatzema. Si tampoc ho coneixieu us recomano que li doneu un cop d’ull al hardware i software (també per linux) que implementen aquest interessant sistema. Fins hi tot he vist un plug-in pel famós gallery que ens permet veure el nostre album de fotografies a través de UPnP Media.

vista frontal

vista posterior
Malgrat només té un connector USB per un disc dur, o una memòria flash, no sé si arribaria a funcionar també un CD o DVD, jo diria que si. Doncs malgrat això trobo que és un dispositiu que esta molt bé. Ja que ens permet tenir connectat el nostre disc dur portàtil sempre apunt per anar on sigui i a més el podem tenir al lloc de casa que més ens agradi.
Un altre cop Linksys m’ha tornat a sorprendre de forma agradable, tot i que he de dir que la nostalgia pel WRT54G trigarà temps a desapareixer. Realment és un dispositiu al que tots li hem agafat carinyu,oi?
Feina, feina, feina…

ah! i més feina… si ens queda una estona lliure recorda: feina! ja tinc ganes de que arribi el pont, ah si!!! que pont vol dir fer festa… però jo? FEINA! com sabeu això normalment no acaba impedint que escrigui al blog però aquests dies els nivells ja m’estan superant com a persona. Tot i amb això tinc milers de temes que esperen sortir… així que paciència. El primer que em sap greu perdrem és la trobada de linuxeros penedesencs que es fa aquest cap de setmana :'(
M’hagués agradat poder penjar el cartell de la trobada però no me l’han enviat i m’he quedat amb les ganes de penjar-lo/tenir-lo… però bé segur que tindrem oportunitat de veure’l per algún dels blogs dels companys ‘pingüineros’. Apa que us vagi molt bé i espero veuren molta informació al forum.
Per cert, canviant de tema tinc pendent penjar el nou mapa de la xarxa sense fils del poble, ja que tenim dos nous punts, la cosa no para de creixer tot i que ara almenys per la meva part penso parar el creixement i intentar actualitzar la informació de la nostre xarxa a guifi.net.
Una altre novetat important a comentar i pendent encara, fins hi tot de provar, és que m’ha arribat la comanda de material de VoIP que s’ha fet des de guifi a xina. Jo m’he firat un tlf VoIP, que encara no en tenia cap de meu, un ATA i una altre targeta FXO.
Parlant de VoIP aquest dissabte he de montar una targeta de digium amb 4 ports FXO, per treballar junt amb la QuadBRI que us vaig comentar que havia montat. Tinc unes ganes boges de liar-me amb el tema.
nat traversal
A vegades tampoc em funcionen les coses a mi, a què ve aquest comentari? doncs resulta que hi ha més d’un amic que em diu que li dona la sensació que sempre me’n surto de tot doncs bé. Aquí us parlo d’una eina que no he aconseguit que em funcionés tinc diverses teories del perquè però la veritat és que com que de moment no la necessito m’he cansat de seguir provant, o sigui, que de moment he de dir que no me n’he sortit a usar-la.
L’eina té molt bona pinta es diu nat-traversal serveix per connectar a ports de màquines internes que estan darrera de sistemes enmascarats (darrera de NAT). La web és molt explicativa i útil.
nat-traverse establishes connections between nodes which are behind NAT gateways, i.e. hosts which do not have public IP addresses. Additionally, you can setup a small VPN by using pppd on top of nat-traverse. nat-traverse does not need an external server on the Internet, and it isn’t necessary to reconfigure the involved NAT gateways, either. nat-traverse works out-of-the-box.
Tot i amb això trobo súper interessant la tècnica que usent fer entrar a través del NAT fins al PC que teoricament no té els ports públics:
1.Firstly, nat-traverse on host left sends garbage UDP packets to the NAT gateway of right. These packets are, of course, discarded by the firewall.
2.Then right’s nat-traverse sends garbage UDP packets to the NAT gateway of left. These packets are not discarded, as left’s NAT gateway thinks these packets are replies to the packets sent in step 1!
3.left’s nat-traverse continues to send garbage packets to right’s NAT gateway. These packets are now not dropped either, as the NAT gateway thinks the packets are replies to the packets sent in step 2.
4.Finally, both hosts send an acknowledgement packet to signal readiness. When these packets are received, the connection is established and nat-traverse can either relay STDIN to the socket or execute a program.
Jo concretament el que he provat és de redirigir un port amb el netcat, però el problema que crec que tinc és que jo no faig un ‘masquerade’ al firewall que tinc davant, sinó un ‘SNAT’ i per si fos poc abans d’arribar al firewall passo per un router intern, així doncs segur que hi ha alguna cosa pel camí que m’està estorbant, però com comentava abans com que de moment no necessito l’eina ja m’he cansat d’insisitir. Aquí queda el tema fins que realment em fassi falta o algú s’hi posi i em digui què tal.
sslproxy
L’sslproxy és una petita eina d’aquelles que van de PM… què fa doncs el nom ho diu tot:
SSL Proxy server listens on a TCP port, accepts SSL connections, and forwards them to another local or remote TCP port. For example, it is possible to create an HTTPS server if you have an HTTP server and you run an SSL Proxy server on port 443 which forwards the connections to port 80. SSL Proxy’s design makes it as secure as possible and still perform well.
Un petit exemple on es pot veure com funciona. Llencem una petició HTTPs des del nostre navegador contra l’sslproxy i aquest re-enviarà la petició a un servidor TCP (netcat) i podrem veure la browser fingerprint del nostre navegador. O dit més senzill, la petició HTTP del nostre navegador, sense la S. O sigui, sense l’SSL.
Posem el servidor TCP (netcat) a escoltar el port 8000:
nc -l p 8000
Llencem el sslproxy amb el seu certificat SSL corresponent:
ssl_proxy -s 443 -d -c 8000 -C server-cert.pem -K server-key.pem
Anem al navegador i la barra de direcció posem:
https://localhost
Si mirem el nc podrem veure que hi ha la petició HTTP que llençavem:
GET / HTTP/1.0 Host: localhost Accept: text/html, text/plain, application/vnd.sun.xml.writer, application/vnd.sun.xml.writer.global, application/vnd.stardivision.writer, application/vnd.stardivision.writer-global, application/x-starwriter, application/vnd.sun.xml.writer.template Accept: application/msword, application/vnd.sun.xml.calc, application/vnd.stardivision.calc, application/x-starcalc, application/vnd.sun.xml.calc.template, application/excel, application/msexcel, application/vnd.ms-excel, application/x-msexcel Accept: application/vnd.sun.xml.impress, application/vnd.stardivision.impress, application/vnd.stardivision.impress-packed, application/x-starimpress, application/vnd.sun.xml.impress.template, application/powerpoint, application/mspowerpoint Accept: application/vnd.ms-powerpoint, application/x-mspowerpoint, application/vnd.sun.xml.draw, application/vnd.stardivision.draw, application/x-stardraw, application/vnd.sun.xml.draw.template, application/vnd.sun.xml.math Accept: application/vnd.stardivision.math, application/x-starmath, text/sgml, video/mpeg, image/jpeg, image/tiff, image/x-rgb, image/png, image/x-xbitmap, image/x-xbm, image/gif, application/postscript, */*;q=0.01 Accept-Encoding: gzip, compress Accept-Language: en User-Agent: Lynx/2.8.5rel.1 libwww-FM/2.14 SSL-MM/1.4.1 OpenSSL/0.9.7e
L’exemple és una mica xorra a nivell funcional, però crec que a nivell conceptual és molt explicit de quina és la funcionalitat que ens ofereix el sslproxy. Sobretot si hem programat una aplicació que no té suport SSL i li volem afegir seria tan senzill com aplicar el que explico aquí.