Makefile it

Thursday, November 13, 2008

1,2,3,4,... túnels?

Estàs en un entorn on et trobes amb un o més proxies i servidors per connectar-te des de casa al teu ordinador de casa (ai ai ai... això no ho hauríes de fer)? O des de casa a la feina (ieps! ja n'hi ha prou de treballar!!)? Si només necessites una línia de comandes, passes un darrere l'altre i ja està. Ara bé, què passa si necessites copiar arxius d'un a l'altre? Ho vas copiant successivament un darrere l'altre?? NO!!!

Els túnels SSH te'n donen la solució.

Per posar-ne un exemple, parlem d'un escenari amb 2 servers (SERVER1, SERVER2) intermediaris, el TEU ordinador i un ordinador DESTÍ. Per connectar-te des del TEU fins al DESTÍ has de passar per SERVER1 i per SERVER2. Com ho fem?

Ara ho sé i és senzill:

  1. Et defineixes un túnel a SERVER1, de la forma:
    LocalForward 30022 SERVER2:22
    Així, fent un ssh -p 30022 USER2@localhost et podràs connectar a SERVER2.
  2. Si en lloc de ser el SERVER2 parléssim del DESTÍ, aquí ja acabaríem. Però no, hem de travessar encara SERVER2. Com?
    LocalForward 30044 DESTI:22
    Així, fent un ssh -p 30044 USERD@localhost et podràs connectar directament des del TEU ordinador fins al DESTI. Fantàstic!!
El fitxer .ssh/config per entorns Linux seria de l'estil:

-------------------------------------------------------------------
Host SER1
User USER1
HostName SERVER1
Port 22
ForwardAgent yes
LocalForward 30022 SERVER2:22

Host SER2
User USER2
HostName localhost
Port 30022
ForwardAgent yes
LocalForward 30044 DESTI:22

Host DEST
User USERD
HostName localhost
Port 30044
-------------------------------------------------------------------

Una vegada guardat aquest fitxer de configuració, des d'una shell de linux s'ha de fer:

  1. ssh SERV1
  2. ssh SERV2
    Fins aquí, això només cal fer-ho una vegada. A partir d'ara fent:
  3. ssh DEST
    Tindrem una shell directament al DESTÍ: ssh, scp, rsync, etc. us funcionaran de meravella :-D
Si el context és encara més complicat, i tenim més servidors intermediaris, doncs només cal repetir una configuració del mateix estil que pel SERV2, tot indicant els ports i túnels necessaris. I després realitzar més connexions ssh com del punt 2, per tots els servers intermediaris.

Apa! Salut!!

Labels: , , , ,

Wednesday, November 05, 2008

Subversion per entorns restringits

Hola,

La necessitat et fa trobar coses: Entorn Paranoic.

Si no pots tenir accés Subversion per http, però tens accés SSH a un ordinador entre la gent que hi heu de treballar? Cap problema:

SERVER=Ordinador on hi pot accedir tothom i on hi estarà el repositori svn.
USERVER=El teu usuari a SERVER.
PATHSRV = Path absolut al repositori a SERVER.
LOCAL=El teu ordinador.
ULOCAL = El teu usuari a LOCAL.
PATHLCL = Path absolut al working copy a LOCAL.

  1. Crees un repositori a SERVER de la forma habitual:
    SERVER$ svnadmin create PATHSRV
    (Recorda't de crear els directoris trunk, tags i branches :-D)

  2. EnllaçCheck-out inicial:
    svn co svn+ssh://USERVER@SERVER/PATHSRV/trunk PATHLCL

  3. Commits:
    svn ci -m 'Your comment'
El únic inconvenient és que cada vegada que fas un checkout o un commit et demana el password dues vegades. La solució és importar-hi la teva clau pública al SERVER. D'això també n'hi ha molts tutorials. Aquí en tens un.

Fins la pròxima!

Labels: , , ,

Tuesday, November 04, 2008

Qui busca sempre troba

Qui busca sempre troba, això em deia la meva família. I és veritat! Ara hem trobava amb un problemeta de compartir codi font entre desenvolupadors, però no hi ha possibilitat d'usar un subversion via http. Renunciem al subversion? No!

Requisits: Accés SSH, Subversion instal·lat al server? Doncs ja en tens prou!

http://subversion.tigris.org/faq.html#paranoid

Jo no ho sabia, així que ho he volgut compartir!

Apa!!!

Labels: , ,