SSH

De Wikijoan
Dreceres ràpides: navegació, cerca

Contingut

Instal.lació i configuració

Secure Shell (SSH)-> protocol que permet canal segur entre màquina local i màquina remota. La clau d'encriptació pot canviar enmig de la sessió.

$ aptitude install ssh

ssh és un metapaquet (no porta res)(virtual or dummy), i el que fa és crear una dependència per instalar ssh client i ssh server.

ssh treballa pel port 22

script d'inicialització: /etc/init.d/ssh:

$ sudo /etc/init.d/ssh start

per confirmar que treballa pel port 22:

$cat /etc/services | grep ssh

fitxer de configuració: /etc/ssh/sshd_config

procés ssh: sshd (és el procés en el servidor, el dimoni)

en el client normalment hi ha un escriptori (X-11)(servidor d'escriptori)

Cal donar permís al nostre escriptori per tal que hi hagi clients remots. L'escriptori en ppi està protegit contra clients remots.

ssh utilitza una sèrie de protocols que té el X11, i així es pot treballar en clients remots amb el teu escriptori.

Tot això ve perque en el fitxer de configuració hi ha la línia:

# X11Forwarding no

per defecte està comentada, en el meu ordinador apareix: X11Forwarding yes

# What ports, IPs and protocols we listen for
Port 22 -> es podria canviar el port aquí

anem a connectar-nos des del portàtil. resulta que en el portàtil també tinc el SSH server (és el Ubuntu Studio, ve instal.lat per defecte)

En el servidor faig

adduser ritona

(pwd: ritona)

En el portàtil, esborro el directori del ssh:

des del meu home (joan), i connectat com a joan:

$ cd .ssh
$ rm *

o bé

$ rm .ssh/*

en el directori .ssh es crea el fitxer knowhost, en el qual hi ha un número que identifica el host al qual em connecto, i és una protecció anti-troià.

és per això que esborrem el fitxer, perquè és una nova instal.lació que acabem de fer.

la sintaxi per connectar-se a un usuari d'un altre host (el servidor 192.168.1.130) és:

joan$ ssh joan@192.168.1.130 #l'usuari joan en la màquina servidor
joan$ # en el servidor
joan$ exit

joan$ ssh ritona@192.168.1.130 #l'usuari rita en el servidor, l'acabem de crear
ritona$ exit
joan$

i em connecto després de proporcionar el pwd. Fixem-nos que el prompt és ritona$, estic connectat al servidor.

estem connectats, i ara volem utilitzar un client de X11:

ritona$ xterm

-> can't open display, display is not set

sortim:

ritona$ exit
logout
Connection to 192.168.1.130 closed
joan$

Per tal de poder-ho fer:

$ ssh -X ritona@192.168.1.130
ritona$ xterm

i ara el xterm ja funciona i tinc una consola, que és un client de consola de l'ordinador del servidor. Si encara no ha funcionat, el problema és que la variable d'entorn no està inicialitzada:

joan$ export DISPLAY=:0.0

Connexió des de Internet: hem de tenir configurada la taula NAT del router per redirigir el port 22 a la IP 192.168.1.130.

$ ssh ritona@wikijoan.dyndns.org

OK

SSH sense demanar password

Hem d'instal.lar una clau pública en el servidor, però la clau pública es genera en el client.

La clau pública es genera en el client, i el servidor l'autentifica (confia en ella)

joan@portatil$ ssh-keygen -t dsa
Your identification has been saved in /home/joan/.ssh/id_dsa.
Your public key has been saved in /home/joan/.ssh/id_dsa.pub.
The key fingerprint is:
eb:6d:c5:27:f0:77:31:5b:2c:c4:f5:80:89:82:11:ca joan@ubuntu

Es genera un fitxer per guardar la clau a /home/joan/.ssh/id_dsa.

Quan demana passphrase deixar-ho en blanc (Enter)

copiar ~/.ssh/id_dsa.pub al servidor:

joan@portatil$ scp ~/.ssh/id_dsa.pub joan@192.168.1.130:/tmp

OK

ara en el servidor (192.168.1.130) (a on volem accedir sense password):

joan@server$ cat /tmp/id_dsa.pub >> ~/.ssh/authorized_keys
joan@server$ chmod 0600 $HOME/.ssh/authorized_keys
joan@server$ rm -f /tmp/id_dsa.pub

Fem la prova en el client:

joan@portatil$ ssh joan@192.168.1.130

i em deixa entrar sense password.

faig el mateix per a l'usuari de nova creació (ritona)

joan@portatil$ scp ~/.ssh/id_dsa.pub joan@192.168.1.130:/tmp
joan@server$ cat /tmp/id_dsa.pub >> /home/ritona/.ssh/authorized_keys
joan@server$ chmod 0600 /home/ritona/.ssh/authorized_keys
joan@server$ rm -f /tmp/id_dsa.pub

i també em deixa entrar, després d'uns quants problemes.

SSH des de Windows

Com a l'institut, s'utilitza el client putty per establir una comunicació segura amb un servidor SSH i així poder fer una sessió interactiva.

Dir quins usuaris poder entrar per SSH

Per defecte, tots els usuaris poden entrar si especifiquen correctament el login i password.

En el fitxer de configuració podem posar la directiva AllowUsers al final de tot

echo "AllowUsers joan" >> /etc/sshd_config

i d'aquesta manera només pot entrar l'usuari joan. Si vull ficar varios usuaris, els separo amb espais en blanc en la mateixa línia.

Eines de l'usuari
Espais de noms
Variants
Accions
Navegació
IES Jaume Balmes
Màquines recreatives
CNC
Informàtica musical
joanillo.org Planet
Eines