Differences

This shows you the differences between two versions of the page.

Link to this comparison view

rl:labs:07:contents:02 [2013/11/13 19:50]
razvan.deaconescu [02. Adresare IP și rutare]
rl:labs:07:contents:02 [2023/11/05 12:42] (current)
vlad_iulius.nastase
Line 1: Line 1:
-==== 03Adresare IP și rutare ====+==== 2[10p] Generare cheie publică ​și autentificare ​===
  
-Dorim să realizăm conectivitate și între stațiile ​''​red'' ​și ''​green''​. Întrucât cele două stații sunt în rețele locale diferite, va trebui să configurăm ​stația ''​host'' ​ca //default gateway// pe fiecare stație+În contul utilizatorului ​''​corina'' ​de pe stația ''​blue'' ​generați o pereche cheie publică/cheie privată SSH prin rularea comenzii<​code bash> 
- +corina@blue:​~$ ssh-keygen -t rsa 
-Pentru a adăuga ​//default gateway// pe stația ​''​red''​ folosiți comenzile:<​code>​ +Generating public/private rsa key pair. 
-root@host:~# go red+Enter file in which to save the key (/home/corina/.ssh/​id_rsa): ​ 
 +Created directory '/home/corina/.ssh'
 +Enter passphrase (empty for no passphrase):  
 +Enter same passphrase again 
 +Your identification has been saved in /​home/​corina/​.ssh/​id_rsa. 
 +Your public key has been saved in /​home/​corina/​.ssh/​id_rsa.pub.
 [...] [...]
-root@red:~# ip route add default via 10.10.10.1 +</​code> ​Folosiți ​''​ENTER'' ​pentru a folosi căile implicite. Nu folosiți passphrase (adică apăsaț''​ENTER''​ când vi se solicită passphrase-ul). Cheile sunt generate respectiv, în fișierele, ​''​.ssh/id_rsa'' ​(cheia privată) și ''​.ssh/id_rsa.pub''​ (cheia publică).
-</​code>​ +
-<​note>​ Adresa IP ''​10.10.10.1'' ​reprezintă IP-ul interfeței ''​veth-red'' ​de pe ''​host''​.</note>+
  
-Intrați pe ''​green'' ​și executați:<​code>​ +Realizați operațiile necesare pentru a permite autentificarea ​pe bază de chei din contul utilizatorului ​''​corina'' ​de pe stația ''​blue'' ​în contul utilizatorului ​''​student''​ de pe stația ​''​host''​. ​După aceea, verificați faptul că autentificarea se face pe baza de chei.
-root@host:​~#​ go green +
-[...] +
-root@red:~# ip route add default via 10.10.20.1 +
-</​code>​ +
-<​note>​ Adresa IP ''​10.10.20.1'' ​reprezintă IP-ul interfeței ​''​veth-green''​ de pe ''​host''​.</​note>​+
  
-Testați conectivitatea între ''​green'' ​și ''​red''​ (intrați pe ''​red''​ și executați ​comanda ''​ping'' ​către stația ''​green''​). Observați că nu merge. Motivul pentru care nu există conectivitate este reprezentat de faptul că stația ​''​host'' ​nu are activată rutarea (nu trimite pachetele ce vin de pe o interfață pe altă interfață). Pentru a activa rutarea pe ''​host'':<​code>​ +Aceștia sunt pașii pe care îi veți urma pentru a configura conectare SSH pe bază de chei: 
-root@host:​~#​ echo 1 > /​proc/​sys/​net/​ipv4/​ip_forward +  - generare pereche de chei SSH (folosind ​comanda ''​ssh-keygen''​
-</​code>​+  - copiere cheie publică în contul de la distanță (<​del>​folosind comanda ​''​ssh-copy-id''​</​del>​) 
 +  - conectare la distanță (folosind comanda ​''​ssh''​)
  
-Testați din nou conectivitatea între ​''​red'' ​și ''​green'',​ observând că funcționează.+<note important>​ 
 +Autentificarea cu parolă a fost dezactivată pe ''​student@host''​!
  
-Porniți comanda ''​ping''​ pe ''​red''​ către ''​green''​. Deschideți un nou terminal ​și executați pe ''​host'' ​comanda:<​code>​ +Copiați manual cheia publică a corinei (''​/​home/​corina/​.ssh/​id_rsa.pub''​) în fișierul ''​/​home/​student/​.ssh/​authorized_keys'' ​de pe host.
-root@host:~# tcpdump ​ -i veth-red +
-listening on veth-red, link-type EN10MB (Ethernet), capture size 65535 bytes +
-18:46:48.783576 IP red.local > 10.10.20.2: ICMP echo request, id 434, seq 163, length 64 +
-18:​46:​48.783622 IP 10.10.20.2 > red.local: ICMP echo reply, id 434, seq 163, length 64 +
-</​code>​+
  
-Observați pachetele ​de tip ''​ICMP echo request/​reply''​ ce trec prin stația ''​host''​ (sau altfel ​zis stația ''​host'' ​le rutează).+**Atenție:​** nu ștergeți nimic din fișierul authorized_keys ​de pe hostaltfel ​riscați să vă tăiați accesul la VM! 
 +</​note>​ 
 + 
 +<​hidden>​ 
 +<​solution>​ 
 +<code bash> 
 +corina@blue:​~$ ssh-copy-id student@host 
 +student@host's password:  
 +Now try logging into the machine, with "​ssh ​'student@host'", and check in: 
 + 
 +  ~/​.ssh/​authorized_keys 
 + 
 +to make sure we haven't added extra keys that you weren'​t expecting. 
 + 
 +corina@blue:​~$ ssh -l student host 
 +[...] 
 +student@host:​~$ 
 + 
 +</​code>​ 
 +</​solution>​ 
 +</​hidden>​
rl/labs/07/contents/02.1384365019.txt.gz · Last modified: 2013/11/13 19:50 by razvan.deaconescu
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0