Mòdul 7
Serveis de xarxa amb GNU/Linux
Exercici 1234

Accés remot 'segur' amb SSH
 

Accés remot a la 'línia de comandes' del servidor

Treballar des d'un equip remot contra el nostre servidor, per realitzar qualsevol tasca de manteniment, és possible amb les eines que inclou per defecte el sistema operatiu Linux.

Amb Telnet podem obrir connexions remotes, accedint a la 'línia de comandes' gairebé com si estiguessim davant de l'equip servidor. Normalment, aquest accés no és possible fer-lo com a root, cal obrir la connexió com un usuari 'bàsic' i llavors amb l'ordre su  adquirir drets de root.

Tal com hem comentat a la introducció, el Telnet mou les dades de forma 'transparent' amb text pla, essent molt insegur, doncs es poden 'capturar' fàcilment usuaris i contrasenyes.
 

Accés Segur (Secure Shell SSH)

Per evitar el problema de seguretat del Telnet, van aparèixer el conjunt d'aplicacions SSH, compost per un nucli 'servidor' (sshd) i unes aplicacions 'client' que permeten des de l'accés remot (ssh), la transmissió de fitxers (sftp) i fins i tot la còpia de fitxers d'equips de la xarxa (scp).

El conjunt es completa amb un grup d'eines per a la gestió de les claus que genera per 'xifrar' la connexió.

El conjunt d'eines ssh, utilitzades en aquest curs són amb llicència gratuïta per a ús educatiu (cal tramitar-la prèviament) i es poden trobar a: http://www.ssh.com/products/ssh

Anem a veure com podem dotar al nostre servidor de les eines SSH:

Instal·lació i posada en marxa a nivell de servidor
Personalització del servei
Instal·lació client ssh per a Windows
Exemples de treball amb ssh
 

Instal·lació i posada en marxa a nivell de servidor

Utilitzarem un paquet RPM, aprofitant la facilitat d'instal·lació i posada en marxa que ens aporta. La versió recomanada és la que inclou el paquet:

ssh-2.3.0-1.i386.rpm -> eines client i servidor SSH versió 2.3

Descarreguem, com a root, el 'paquet' via lynx de l'adreça:

http://www.xtec.es/~mcguri/d70/ssh-2.3.0-1.i386.rpm

Ocupa uns 3.482.811 bytes (la descàrrega pot gastar uns 18 minuts a 3 Kbytes/s)

Tot seguit fem la instal·lació executant:

rpm -i ssh*

Un cop copiats els fitxers, es generen el parell de claus (una privada i una pública) que utilitzarà el servidor per validar-se i encriptar les connexions.

En la següent figura podem veure una imatge del procés normal d'instal·lació:

El servei arrencarà de forma automàtica cada cop que es posi en marxa el servidor sense haver de fer cap 'enllaç' de forma manual, els crea el mateix procés d'instal·lació. 

El control manual del servei es fa amb l'script sshd que podem trobar a /etc/rc.d/init.d/

/etc/rc.d/init.d/sshd stop -> aturada servei ssh
/etc/rc.d/init.d/sshd start -> arrencada servei ssh
/etc/rc.d/init.d/sshd restart -> reiniciar servei ssh

<-

Personalització del servei

A nivell de personalització, podem destacar bàsicament tres coses:
 

1.- Com canviar el port del servei.

Editarem el fitxer que hi ha a:

/etc/ssh2/sshd2_config

canviant el paràmetre Port del valor per defecte (22) per aquell que sigui necessari, per exemple 2203.
 

2.- Com augmentar la seguretat del servei ssh bloquejant l'accés com a root.

Editeu el fitxer:

/etc/ssh2/sshd2_config

canviant l'entrada PermitRootLogin a no:

PermitRootLogin                 no

així obliguem a què la connexió es realitzi com a usuari 'pla', identificant al seu propietari quan executa 'su' dins el fitxer de registre /var/log/messages.
 

3.- Com augmentar la seguretat del servei restringint l'accés a xarxes alienes.

Editeu el fitxer:

/etc/ssh2/sshd2_config

i afegiu les màquines o xarxes a les quals voleu permetre l'accés via ssh amb el paràmetre AllowHosts

Per exemple, la línia següent seria força recomanable per als nostres centres:

AllowHosts localhost, 192.168.*, *.xtec.es

deixant permès el treball amb ssh des de la pròpia màquina, la xarxa interna i les connexions XTEC.
 

* Qualsevol modificació del fitxer de configuració haurà de validar-se reiniciant el servei, executant:

/etc/rc.d/init.d/sshd restart

<-

Instal·lació del client ssh per a Windows

Descarregueu l'aplicació de la URL:

http://www.xtec.es/~mcguri/prg/SSHWin-2.3.0.exe (4,132 Mb...)

i la llicència per a ús educatiu de:

http://www.xtec.es/~mcguri/prg/ssh_license.dat

Un cop instal·lat, activeu la llicència amb l'opció:

Help
- Import License File.

<-

Treball amb ssh

Des de la màquina Linux, podem obrir sessions ssh contra altres equips que incorporin aquest servei de connexió remota.

Veiem-ne uns exemples:

ssh -l usuari linux2.intracentre   (port ssh estàndard)...
ssh -p 2203 gestio.linux4.intracentre  (ssh pel port 2203)...

ens demanarà la contrasenya de l'usuari indicat i un cop finalitzada la validació apareixerà el 'prompt' del sistema.

Si no especifiqueu el paràmetre '-l' l'ssh suposa que la connexió remota la voleu fer amb el mateix identificador que esteu utilitzant en el moment d'executar-lo.

Amb sftp podrem enviar o rebre fitxers de manera molt semblant a l'ftp estàndard, però amb tota la tramesa de dades xifrada.
 

Des de l'aplicació Windows només cal fer clic sobre la icona 'SSH Secure Shell Client', prémer la tecla espaiadora i indicar:

host: linux
user: usuari

i un cop ha aconseguit establir el túnel xifrat, ens demanarà la contrasenya:

Password: ******

un cop satisfetes les dades, ens trobarem en el 'prompt' del sistema i podrem començar a treballar.

En cas de voler iniciar una connexió per fer tramesa de dades, utilitzarem la icona 'SSH File Transfer Client' o l'opció 'New file transfer windows' des de la finestra del client SSH.

La mecànica d'utilització d'aquestes eines és la mateixa tant si volem usar-les dins la xarxa del centre com si ho fem des de qualsevol equip connectat a Internet.

<-