Router ZyXEL Prestige 650HW de Telefònica i els ports 21, 23 i 80

Esta setmana m’ha arribat el Router de telfònica nou, ja que desrés de les tronades que van haver en Setembre (o Octubre, ara no ho recorde) em van fontre l’antic router que tenia. Mentre m’apanyava amb un de l’antiga Wanadoo, que l’havia configurat amb el paràmetres de la telefònica. M”havera quedat en aquest però em donava problemes a l’hora de compartir carpetes entre el Vista (meu no, de mon pare) i el servidor Linux que tinc muntat.

Més content que ningú el pose en marxa (aixina ja tinc content a mon pare i la meua germana, els dos del Vista) i jo un problema menys. Però quan tire a configurar la redirecció de ports… configure el del eMule… ningun problema, configure el de HTTPS… ningun problema, així tots però quan intente accedir via HTTP, FTP o finalment per Telnet per a configurar el router des de la feina em trobe en que la connexió no és possible. Ja se que no dec d’accedir per Telnet però com no funcionava de cap manera…

Em pose a repassar la configuració del NAT, tot correcte no hi ha res extrany, desactive l’accés via FTP i Telnet al router des del exterior i canvie l’accés al router via HTTP al port 8080. Torne a provar des de la feina… i si que entra al router pel port 8080 però no al 80 per al servidor. Ja vaig tenint idea de qué és el que causa aquest problema. Ja en casa entre per Telnet al router i veig que té un tallafocs i que hi ha per defecte unes regles que bloquejen l’accés des del exterior als ports 21, 23 i 80. Anule les regles del 21 i del 80 i…. a funcionar! Ja torna a estar en marxa el meu servidor web

Després googlejant he trobat el següent enllaç on també ho explica (ja ho havera pogut trobar abans!):

http://www.adslzone.net/tutorial-12.6.html

Consola Java de SSH/Telnet

Navegant per la xarxa m’he trobat una aplicació en Java que es pot executar tant en local com penjar-la com a applet a una web i executar-la des de la web i que fa la funció de consola SSH i Telnet.

L’aplicació es pot baixar d’ací. Pertany a la empresa AppGate i s’anomena Mindterm, dins del comprimit es troben diversos txt on ens mostren les opcions de configuració, com executar com a applet des de la web,… i el *.jar que es pot executar des de la consola:

java -jar nom.jar

o des de la web amb els exemples que hi ha als txt i els mostre ací:

  • Consola SSH

<APPLET CODE="com.mindbright.application.MindTerm.class"
ARCHIVE="mindterm.jar" WIDTH=0 HEIGHT=0>
<PARAM NAME="cabinets" VALUE="mindterm.cab">
<PARAM NAME="sepframe" value="true">
<PARAM NAME="debug" value="true">
</APPLET>

  • Consola Telnet

<APPLET CODE="com.mindbright.application.MindTermTelnet.class"
ARCHIVE="mindterm.jar" WIDTH=0 HEIGHT=0>
<PARAM NAME="cabinets" VALUE="mindterm.cab">
<PARAM NAME="sepframe" value="true">
<PARAM NAME="server" value="telnet.server.com">
</APPLET>

El programa ocupa cap a 1’4Mb i el problema que hi ha en aquesta versió (gratuïta) es que no està signada. Al no estar signada no es pot executar des de la web (lloc remot) per seguretat i com no és convenient que es desactive la seguretat mostre com signar l’arxiu per a que es puga executar:

Primer es baixa el SDK de Java. Quina versió? En teoria qualsevol és vàlida però a la pràctica m’ha costat prou trobar-ne per la web de SUN i al final he pogut baixar la J2SE v 1.3.1_20 (versió SDK). El que ens interessa es que contigna la funció keytool i la jarsigner. Una vegada instal·lada, des de la consola ens dirigim al directori on es troben els binaris del Java instal·lat i escrivim:

keytool -alias keyname -genkey

i després:

jarsigner ruta_de_directoris\mindterm.jar keyname

Ja està signada, ara ja es pot utilitzar des de remot, eixirà una finestra advertint del certificat quan s’execute l’aplicació. També hi ha altres vies per a signar l’arxiu amb un certificat “més fiable” però ara no trobe l’enllaç, a part també hi ha en la web del progama un apartat que parla sobre aquest tema.

Així que ja tenim un terminal SSH/Telnet ens connectem des d’on vulgam, el problema (per a les meues necessitats) es que s’execute a la part del client i no a la del servidor, però ja sabem d’una eina més a part del famós putty

Nanostation I. Configurar les rutes

El Nanostation ve amb mini linux empotrat anomenat AirOS, porta una interficie web i per defècte porta la IP 192.168.1.20 i user ubnt/ubnt. Via web es pot configurar ‘casi tot’ però no tot, per exemple les rutes. La configuració de les rutes es pot fer de forma estàtica o mitjançant RIP o OSPF.

Per a la segona opció tant sols cal actualitzar el firmware a la versió de inveneo i i seguir els passos que s’indiquen en l’enllaç, encara que està millor explicat ací. En aquest enllaç també hi ha una referència a una altra web en la qual expliquen com poder fer una xarxa en topologia mesh

Per a la primera opció cal accedir al AP per SSH i crear un script amb el route i les seues opcions. EL AirOS té una carpeta anomenada /etc/persistent al qual es poden crear scripts, els quals al engegar-se la màquina s’executen. Els noms dels scripts són:

  • /etc/persistent/rc.prestart
  • /etc/persistent/rc.poststart
  • /etc/persistent/rc.prestop
  • /etc/persistent/rc.poststop

El fitxer a crear (perquè el més segur es que no estiga creat) és el rc.poststart. Per a crear-lo s’escriu a la consola (estaguent al directori correcte)

#vi rc.poststart

I s’edita amb l’editor vi, primer premer ‘a’ i després ja es pot escriure. Quan estiga tot escrit, premer ‘Esc’ i ‘:x’ per a guardar els canvis al fitxer. Ja en consola se li donen permisos d’execució:

#chmod +x rc.poststart

I finalment per a que els canvis no desapareguen en quan es reinicie la màquina:

#cfgmtd -w -p /etc/

I arreando! ja està, fàcil del tot. Ara pose un exemple de script de rutes estàtiques:

#! /bin/sh
route add -net 10.10.10.0 netmask 255.255.255.0 gw 192.168.2.101 dev eth0

Pàgines d’interés:

http://www.ubnt.com/wiki/index.php/Manual_Routes

http://wiki.ubnt.com/wiki/index.php/User:Skyhook#How_to_add_a_static_route

http://wiki.ubnt.com/wiki/index.php/Linux_Script_FAQ

http://www.dc.fi.udc.es/~afyanez/info-vi/index.html Manual de VI

ací

Ja ha arribat tot el material

Ja tinc les Nanostations en casa, van arribar el dilluns. La veritat és que ha sigut bastant ràpid ja que la transferència la vaig fer el divendres abans de les 9 i el dilluns matí ja ho tenia en casa. Ja he estat trastejant en elles, la mala noticia és que no accepten punt a punt, però no passa res perquè com aquest projecte també és el principi d’un altre més important que vull empendre, em servirà aquesta topologia. Altra cosa en la que també he topat ha sigut en la configuració del iptables, que no accepta tots els paràmetres que em pensava (o ho estaré fent mal).

Aquests AP’s són una ‘virgueria’ tenen bona potència i accepten altres firmwares oberts com Openwrt i altres de pagament que ara mateix no recorde els noms, porten per defecte el PoE (cosa que em facilitarà molt la instal·lació del cabletjat).

Ja he estat fent proves de configuracions en ma casa i una vegada testejat l’enllaç he passat directe a casa ma tia, on anirà muntat esta ‘fira’. Allí una vegada configurat ha anat perfecte, això sí, dins d’una habitació emulant l’enllaç, ara falta veure si l’enllaç es pot aconseguir (la configuració ja està).La connexió que he realitzat amb èxit és la següent:

PC – ROUTER CASETA – UBNT2 -UBNT1 – PLC – PLC – SERVIDOR VPN – ROUTER CASA – INTERNET

UBNT1 i 2 són els noms que tenen per ara els AP’s i l’enllaç entre ells és inalàmbric. Les xarxes ente ROUTER CASETA – UBNT2, UBNT2 – UBNT1 i UBNT1 – SERVIDOR VPN són /30 i l’enllaç wifi és obert amb la SSID wifi4t encara que ara ho tinc en /30 més endavant la deixaré en /16 amb la IP de xarxa 10.10.0.0

Enllaç del dia:

www.comprawifi.com

Preliminars Caseta – Casa

Després d’haver fet les proves amb els components que ja tinc i després haver fet una estructura amb màquines virtuals de la forma Server VPN – Router – Router – Client VPN i configurant els tallafocs via iptables per a que al server vpn sols es puga accedir als ports que s’utilitzen per a les connexions VPN i a la part del client no acceptar connexions entrants a no ser que els ha establert ell abans de forma gratificant, ja he comprat els 2 punts d’accés Nanostation2, esta setmana espere que arriben. Torne a posar un diagrama actualitzat de la estructura de xarxa que implantaré, més que res perquè està fet en el software lliure anomenat DIA

CASETA-CASA TIA

Ara encara no tinc temps però al pròxim post ja posaré la configuració entre routers ja que com la xarxa WAN serà lliure i es podrà connectar qualsevol (sols accés a la xarxa, no accés a Internet)

(Modificat 4/11/09) Comentar que l’enllaç entre R2 i SERVER VPN és a través de PLC’s)

Tornant a parlar del projecte d’enllaç Caseta-Casa

Retornant a l’enllaç que vull fer de forma més professional, ja he escollit els elements que quedaven per escollir i ja els he comprat, la veritat es que no m’he calfat molt el cap, he entrat en les webs de PCBOX i de APPINFORMATICA i he estat mirant routers fiables i PLC’s a bon preu, al final m’he fet amb el router WRT54G2 de Linksys i amb un kit de LEVEL ONE PLC (els dos a la tenda d’APP que esta vegada els tenien més barats que a PCBOX), la veritat que el router també l’he escollit per el disseny, ja que feia les funcions que m’interesen i quedarà be penjat a la paret de la caseta XD

Com ja tenia aquest material no he pogut esperar a demanar els AP’s que vull i he provat l’esquema que vull fer però sense els AP’s, connectat el router dirèctament a un PLC. La prova ha sigut possitiva, encara que he estat ‘peleant’ 3 dies fins que ho he descobert com configurar-h0.

Primer he intentat fer un enllaç amb IP estàtica de router_caseta a router_casa, donant aquest últim accés a internet al primer, sense cap problema, es configura les ips en el rang de la xarxa de casa i ‘arreando’, he connectat el portàtil al router_caseta i funcionava la connexió.

El següent pas era configurar el servidor VPN i que el router es connecte a través d’aquest servidor, aquest pas ha sigut el que m’ha dut de cap 3 dies. Com el servidor VPN estaria situat a casa ma tia i allí en sa casa no puc tenir tot un CPD muntat m’he tingut que decidir de muntar el servidor VPN que porta el Windows XP, ja que és el més senzill de configurar i posar en marxa ademés que poden seguir utilitzant-lo amb l’emule, msn, navegar… sense cap problema. Si no se sap com fer del Windows XP un servidor VPN, a googlejar “servidor VPN Windows xp” i eixiran milers de webs on ho expliquen, és ben senzill. El que més ha costat és que el router fera de client VPN i el windows li donara les ip’s correctes. Primer ho he fet al meu portàtil utilitzant la ethernet per a connectar-li el router i la wifi per a connectar-se al router de casa, donant ip’s del mateix rang a les dos targetes (que aquest era la causa de que no funcionara correctament) finalment he reproduit un escenari paregut al vmware, on un windows xp feia de servidor VPN amb 2 targetes de xarxa (una en cada rang diferent d’IPs) i un altre windows xp feia de client sobre una targeta de xarxa, al connectar-se i vore que funcionava correctament m’he posat a analitzar l’escenari i és on me n’he adonat que el problema el tenia en el direccionament que donava.

El client i el servidor estan units en una xarxa amb el mateix rang d’ips i el que fa el servidor al connectar-se el client a ell és donar-li a aquest una ip del rang de l’altra targeta per a que puga accedir a la xarxa a la que està unida, exemple:

1. El servidor està connectat a 2 xarxes diferents: 192.168.0.0/24 i 192.168.5.0/24

2. El client està connecta a la xarxa 192.168.5.0/24, per tant sols té accés a aquesta xarxa

3. Quan el client es connecta al servidor per la xarxa 192.168.5.0, aquest li dona una IP del rang 192.168.0.0/24, des de la qual el client ja té accés a la xarxa 192.168.0.0/24 a través de la connexió VPN

Respecte als PLCs… cap problema, realment plug and play, els he connectat a la xarxa elèctrica i en un extrem al servidor VPN i a l’altre al router i he fet ping i resposta.

Resumint:

La connexió Router_caseta – PLC – PLC – Servidor VPN – Router_casa – Internet s’ha establit correctament, per a dur a terme aquest esquema li he instal·lat una altra targeta de xarxa al pc de taula de casa al qual es connecta al PLC, ho he provat en els tallafocs deshabilitats, ara falta fer-ho anar amb més seguretat aplicada

Després d’aquest èxit ja estic esperant poder demanar els APs per a provar la connexió wifi i el tunel VPN a través dels APs, que no se com reaccionaran els APs i els enrutament de direccions

BACKUP’s (MySQL)

Hui done pas a un tema molt important en el manteniment dels servidors, són les copies de seguretat de les dades en altres servidors.

En aquest post explicaré com fer backups remots de les bd’s d’un servidor MySQL. Per a aquesta tasca recurrim a un script que es pot descarregar des d’ací.  Aquest script anomenat AutoMySQLBackup fa tota la feina automàticament i la seua configuració és molt fàcil, sols editar l’arxiu ja es veuen els comentaris de les opcions que té, nom d’usuari, password, bd’s a fer el backup, carpeta on es fan les còpies,… Per al correcte funcionament d’aquest script cal donar-li permisos d’execució (per exemple un chmod u+rwx) i deixar-lo a la carpeta /etc/cron.daily per a que el sistema faça la feina per nosaltres. Per a fer que funcione aquest script s’instal·larà també el paquet mysql-client i les seues dependències.

Aquest script crea dins de la carpeta on està configurat el backup 3 carpetes, una per a les còpies diaires, una altra per a les setmanals i una altra per als mensuals, en la carpeta diaria s’emmagatzemen fins a 7 còpies després es sobreescriuen, en la carpeta setmanal conserva fins a 5 còpies i en la mensual es sobreescriu mensualment la còpia que es desa.

Finalment, per a que aquest script s’execute en el servidor de backup amb una connexió externa cap al servidor MySQL s’ha de modificar el fitxer de configuració del MySQL que es troba a /etc/mysql/my.cnf i comentar la línia “bind-address = 127.0.0.1” i que l’usuari que s’utilitza per a fer la còpia tinga permisos d’accedir al servidor MySql des de l’exterior

I així ja estarà configurada la còpia de seguretat diariament

Enllaços:

AutoMySQLBackup para copias de seguridad MySQL

Conexion remota a mysql-server