cada connexió (ssh) té la seva configuració

No us heu cansat mai de teclejar ssh usuari@nom-interminable-de-la-maquina-hi-ha-sobre.domini ?

Doncs com en tot en el món linux té el seu fitxer de configuració: ~/.ssh/config (man ssh_config).

És tan senzill com tres línies:

Host nom-curt

HostName nom-del-servidor.com

User usuari

Un cop escrit això de sobre (canviant les cursives clar) ja podreu teclejar ssh nom-curt quan en realitat estaríeu teclejant ssh usuari@nom-del-servidor.com.

Sembla una petita diferència oi? Però penseu en els casos en que teniu més d’una clau pública1 o qualsevol altre opció que heu d’especificar per connexió!

No hi ha dia que em deixi de sorprendre i trobar encara més útil l’OpenSSH!

  1. La de la feina, la del servidor de casa, la del projecte on esteu col·laborant, la d’accés a repositoris de codi … []

Accés a un servidor segons de la xarxa que vinguis

Si tens un servidor que està a la xarxa local amb alguns serveis a Internet evidentment el primer que has de fer és no permetre que l’usuari root es connecti per ssh de manera que el més còmode és anar al fitxer /etc/ssh/sshd_config i afegir-hi la línia1:

PermitRootLogin no

Que és força explicativa per si mateixa :D

Ara bé, si com deia el servidor és en una xarxa local i vols connectar-t’hi com a root directament (per exemple per fer una còpia de fitxers) la línia de sobre no ens ho permet.  En aquest cas la línia següent és la útil:

AllowUsers root@192.168.1.* USUARI1@* USUARI2@*

D’aquesta manera root només podria accedir des de la xarxa local (qualsevol IP de la xarxa 192.168.1.*) i només els usuaris USUARI1 i USUARI2 podrien accedir des de qualsevol IP.

Realment els de OpenSSH han fet (i estant millorant) un programa excel·lent!

  1. També és molt útil afegir la línia “PasswordAuthentication no” per no permetre connexions que s’autentiquin amb contrasenya, sinó que ho hagin de fer per clau pública-privada []

Crear un dipòsit de Subversion amb accés per http i per ssh

A la universitat hem de fer una màquina de Turing (català) i com que l’hem de fer en grup crec que la millor manera és posar un servidor de Subversion (hi estic més acostumat, amb git només he fet “git clone $url“).

Així que “dit i fet“:

  • Com que el servidor és un Gentoo aquesta guia m’ha anat que ni pintat, et descriu els passos per tal de configurar un servidor Subversion a la màquina i com fer per permetre que es pugui accedir en mode lectura per web i els usuaris que vulguis en mode lectura i escriptura.
  • Com que a més vull donar accés per SSH (ja que hi estic acostumat del GNOME) només m’ha fet falta seguir aquesta altra guia que ho deixa força clar :)
  • Però aquí no acaba tot, com que la xarxa que tinc muntada al pis de Girona és una mica peculiar, el port de l’SSH no és el predeterminat (22), de manera que aquesta altra guia m’ha resolt els dubtes.

Ara sí, llestos :)

com fer que l’apache mostri els repositoris svn del servidor

logotip del SubversionTinc un parell de repositoris subversion al servidor vell i com que vull donar-hi accés a d’altres persones m’he decidit a fer el que diu el títol: permetre que es pugui accedir des de web i de forma anònima als repositoris.

Com que és en el servidor hi ha Gentoo hi ha una guia que està molt bé: Gentoo-Subversion.

Fins al punt 11 m’ha anat perfecte, però aquí ha punxat :(

Per sort he trobat unes quantes guies que expliquen com configurar l’Apache, i en concret la guia del llibre del Subversion està molt bé.[1]

Ja està tot configurat :)

De moment només n’he configurat l’accés a un dels dos repositoris (l’altre quan tingui temps :)

Cosa que em recorda que hauria de mirar de fer servir subdominis per al servidor vell també, que ara mateix es un cacau si es vol accedir-hi :(

[1] Quant buscava un paràmetre en concret (AuthzSVNAccessFile) el primer resultat que m’ha sortit ha sigut un article d’en Marc a Comesfa.org :)

aplicacions gràfiques a través de ssh

logotip de l’Opensshja fa temps que sabia que es podia fer, però pensava que seria quelcom complicat, que requerís editar un bon grapat de fitxers de configuració, saber com funcionen ben bé totes les parts i buscar molt per Internet, però resulta que és tan simple com:

ssh -X usuari@màquina

ull que ha de ser x majúscula

un cop us heu autenticat a la màquina ja podeu cridar les aplicacions gràfiques des del terminal que es crearà una finestra nova amb el programa en concret :D

podeu aprofitar l’avinentesa per a passar-vos fitxers d’un directori local a un remot (o viceversa) etc etc

entrar una sola vegada la frase de pas de la clau privada

logotip del Seahorsesi en l’apunt anterior comentava com copiar la clau pública a d’altres ordinadors ara el que interessa és que no haguem d’escriure la frase de pas (passprhase en anglès) cada vegada que ens connectem, ja que el que havíem guanyat en seguretat i comoditat al fer el sistema de claus públiques i privades el perdem si igualment no entrem la contrasenya de l’usuari, però si la de la clau privada

de manera que el que hem de fer és instal·lar el Seahorse-agent si no el teniu instal·lat (per exemple en l’Ubuntu Gutsy a mi no me li deixava instal·lat) i afegir-lo en els programes d’inici a través de l’aplicació de configuració del gnome-session

captura del gnome-session

un cop fet això quan sortiu i torneu a entrar a la sessió veureu que no ha canviat res, però quan obriu un terminal i entreu a un ordinador remot on hi tingueu la clau pública us sortirà un diàleg en GTK+ perquè introduïu la frase de pas i seguidament us deixarà d’empipar

a partir d’aquest moment ja podeu entrar a tants llocs com vulgueu, que si hi ha la clau pública ja no us caldrà escriure mai més la frase de pas ni contrasenya fins que tanqueu la sessió o buideu la memòria cau del Seahorse

P.D. en principi hauria de sortir una parella de claus a l’àrea de notificació del GNOME, però almenys a mi no em surt

P.D. 2 és un bug del compiz que no surti les decoracions quan fas captures de pantalla?

copiar la teva clau pública a un ordinador

logotip de l’Opensshsi us heu trobat que heu d’administrar diversos servidors i n’esteu farts de teclejar les contrasenyes de segur que heu descobert el sistema d’autenticació basat en claus públiques i claus privades, amb les quals a partir d’aquell moment en que tot el sistema està apunt ja no hauràs de teclejar mai més la contrasenya de l’usuari de la màquina remota a la que et connectaràs

doncs bé, com que per fer el procés has de copiar un fitxer (la clau pública) que tens localment a l’altre màquina es una mica rollo i tal, per sort hi ha gent que s’ho curra molt i avui hi he trobat una sol·lució molt ràpida i bona:

ssh-copy-id -i ~/.ssh/id_dsa.pub usuari@màquina

i amb això ja tindrem copiada la nostra clau pública per poder entrar en aquella màquina com a l’usuari que hem especificat

llegit a Gentoo-wiki

els desenvolupadors del ssh són uns cracks

tot i que ho volia comentar en l’última entrada, es mereix una entrada apart:

al final de l’altra entrada deia que com que sóc un despistat a vegades desconnecto el cable per anar a un altre lloc i tornar-me a connectar al cable, i clar si estàs connectat per ssh evidentment quedes desconnectat

doncs bé, tot i que no sempre, però la majoria de vegades puc anar d’un lloc a un altre tot desconnectant-me i quan em torno a reconnectar a la xarxa em continua funcionant la sessió!!

suposo que deu ser cosa de timeouts i tornar a provar de connectar-se i tot plegat, però és que lo millor del cas és que sempre estic editant fitxers i quan em torno a connectar per cable fins i tot el vim encara funciona i em deia continuar escrivint pel mateix lloc per on passava sense haver perdut ni un sol caràcter!!

això sí que es programari de qualitat (i a més a més lliure!)