Diferència entre revisions de la pàgina «Exercici SSH»

De Cacauet Wiki
Salta a la navegació Salta a la cerca
Línia 53: Línia 53:
 
Restringeix el servidor per tal que l'usuari "funky" NO es pugui connectar però sí l'usuari "james" (caldrà crear-lo si no existeix).
 
Restringeix el servidor per tal que l'usuari "funky" NO es pugui connectar però sí l'usuari "james" (caldrà crear-lo si no existeix).
  
Dóna permisos de superusuari a "james" posant-lo al grup "admin".
+
Dóna permisos de superusuari a "james" posant-lo al grup ''sudo'' (en versions anteriors d'Ubuntu és el grup ''admin'').
  
 
=== 4.3 - Restriccions per IP ===
 
=== 4.3 - Restriccions per IP ===

Revisió del 07:52, 23 abr 2015

Aquest és un exercici per practicar la configuració d'un OpenSSH.

Llegeix els articles de teoria:


SETUP recomanat:

  • Funkyserver (Ubuntu LTS 12.04) com a servidor.
  • Dubidubi (o una Debian/Ubuntu amb Desktop) com a client.
    També pots utilitzar la màquina host com a client, si és Linux.

Pot ser-te útil l'article de comandes Linux per xarxes.


Part 1 - SSH keys

Busca un article que expliqui com fer SSH entre 2 màquines sense necessitat de introduïr contrassenya.

El client (imitant un PC de casa contra un servidor remot) es connectarà al servidor sense contrassenya.

Pista: es recomana la documentació oficial de Debian o d'Ubuntu, son molt clares i és un tema tipic.

INFORME: llista tots els arxius i comandes implicats i explica per a què serveix cadascun. En particular:

  • Explica quin arxius te les claus públiques i quin les privades en servidor i client.
  • Explica què és l'atac "Man in the middle" i explica quin d'aquests fitxers en ajuda per evitar-lo i de quina manera ho fa.
    • Simula un atac de "Man in the middle" i mostra el missatge que ens dóna el client.


Part 2 - execució remota

  • Busca la manera d'executar comandes remotament sense entrar en mode interactiu. És a dir, has de poder entrar en el servidor, executar la comanda i sortir, escrivint una sola comanda des del client.
  • Busca la manera d'executar comandes de superusuari (root) remotament sense entrar contrassenya.
    Per exemple: engegar o parar un servidor web.


Part 3 - SFTP

El SSH també serveix per fer transferència segura de fitxers. Realitza:

  1. Navega amb el nautilus pels fitxers del servidor.
  2. Utilitza la comanda "scp" per transferir arxius del host al servidor i viceversa.
  3. Cerca la manera de pujar de cop una carpeta amb subcarpetes i arxius.


Part 4 - Configuració del servidor

4.1 Canvi de port

Els servidors reben molts atacs i el port 22 és el primer de la llista. Canvia el port del servidor al nº 1022.

  • Quina comanda has de fer servir ara per connectar-te?
  • Com faràs ara un SCP?

4.2 - Restriccions per usuari

Restringeix el servidor per tal que l'usuari "funky" NO es pugui connectar però sí l'usuari "james" (caldrà crear-lo si no existeix).

Dóna permisos de superusuari a "james" posant-lo al grup sudo (en versions anteriors d'Ubuntu és el grup admin).

4.3 - Restriccions per IP

Restringeix el servidor per tal que les màquines de la xarxa interna NO es puguin connectar.

En aquest link indica diverses maneres de assegurar les connexions SSH. Utilitzeu DenyHosts per restringir per les IPs.

Si no tenies xarxa interna, crea la interfície i configura el client correctament i comprova que fa pings però no connecta per SSH i sí ho deixa fer des de la màquina amfitriona.


Part 5 - rsync

La comanda "rsync" serveix per sincronitzar 2 carpetes remotes. És molt típic utilitzar-la (combinant-la amb el CRON) per realitzar backups de servidors en hores de poca activitat.

  1. Puja una carpeta amb fotos o documents (amb scp o amb el nautilus).
  2. Utilitza rsync per descarregar-la de nou al client en una nova carpeta anomeada "BACKUP".
  3. Estudia la comanda rsync (man rsync) i busca com fer (CONSIDERA FER UN mini-SCRIPT PER MÉS COMODITAT, total tindrà 1 sola línia, es pot dir "do_backup.sh"):
    1. que els arxius es copiin al "backup" amb la mateixa data de creació que l'original.
    2. que a l'executar-se apareguin per la consola els arxius que s'estan descarregant.
    3. que s'exclogui una carpeta. Per exemple, crea una que es diugui "nobackup" (al servidor) i exclou-la quan facis el backup.

Jocs de proves: per provar que rsync ens funciona bé:

  • "toca" un arxiu al servidor (comanda "touch") o bé crea un nou arxiu a la carpeta.
  • comprova que a l'executar el rsync al client es compleixen les condicions enunciades al punt 3.


INFORME

Explica quins arxius has fet servir per cadascun dels apartats i com els has configurat.

Com sempre, has d'incloure els jocs de proves adient per cada apartat. Ja saps que son molt importants per la nota.

No oblidis de l'apartat 1 (keys) explicar l'atac "Man in the middle" i explicar l'arxiu que ens ajuda a prevenir-lo i com ho fa.