Differences

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

Link to this comparison view

rl:labs:08:contents:07 [2013/09/18 11:51]
razvan.deaconescu
rl:labs:08:contents:07 [2023/11/05 12:56] (current)
vlad_iulius.nastase
Line 1: Line 1:
-==== 7. Permiterea traficului SSH ====+==== 07. [10p] Format de pachete la port forwarding ​====
  
-Dorim să permitem traficul SSH de la stația ''​red''​ către stația ''​green''​. Adăugațo regulă corespunzătoare pe stația ''​host''​.+La exercițiul [[rl:​labs:​09:​contents:​03|]] am observat cum se modifică adresa IP sursă șportul sursă în cazul translatării de adrese. La port forwarding vom observa cum se modifică adresa IP destinație (de aici și numele DNAT: ''​Destination NAT''​).
  
-După ce ați adăugat regula, încercați realizarea unei conexiuni SSH de la stația ''​red'' ​la stația ''​green''​. ​Observați că nu se realizează conexiunea.+Vom captura traficul SSH inițiat din exterior către stația ''​red''​, prin intermediul portului ''​10022''​ al stației ''​host''​. ​Este vorba de traficul înainte de //port forwarding//​. Pentru aceasta, pe stația ''​host''​ vom folosi comanda<​code bash> 
 +root@host:​~#​ tcpdump -n -eth0 tcp dst port 10022 -w /​home/​student/​portfwd_eth0_output.pcap 
 +</​code>​
  
-Afișați lista de reguli ​''​iptables'' ​de pe stația ''​host''​:<code bash> +Pe un alt terminal, tot pe stația ''​host'' ​capturăm traficul **după** //port forwarding//, ​pe interfața ''​veth-red''​ către portul SSH (''​22''​) al stației red. Pe stația ''​host'' ​folosim comanda<code bash> 
-iptables -L FORWARD ​-n -v+root@host:​~#​ tcpdump ​-n -i veth-red tcp dst port 22 -w /​home/​student/​portfwd_veth-red_output.pcap
 </​code>​ </​code>​
-De ce nu a reușit conexiunea? Țineți cont de ordinea regulilor afișate; sunt parcurse secvențial. 
  
-Pentru ​rezolvarea problemei **inserați** o regulă ​''​iptables'' ​corespunzătoare pe stația ''​host''​. Pentru inserare folosiți opțiunea ​''​-I'' ​ a comenzii ​''​iptables''​. ​După inserare pe poziția corespunzătoare,​ conexiunea între ​''​red''​ și ''​green'' ​va fi realizată.+Pentru ​a genera trafic, de pe ''​fep.grid.pub.ro'' ​realizăm o conexiune SSH la stația ''​host'' ​pe portul ​''​10022''​, conexiune ce va fi redirectată la portul ​''​22''​ al stației ''​red''​:<code bash> 
 +mihai.carabas@fep:​~$ ssh -l student $ADRESA_IP_VM -p 10022 
 +root@host.local'​s password:  
 +[...] 
 +root@red:~#  
 +</​code>​ 
 + 
 +<note important>​ 
 +Pentru a vizualiza capturile salvate în cele două fișiere copiați-le la voi local (pe calculatorul vostru) folosind ​''​scp''​ și deschideți-le cu utilitarul ​''​wireshark''​
 + 
 +<spoiler (click pentru expandare) Copiere ​fișiere din VM pe local> 
 +<code bash> 
 + 
 +$USER_FEP@fep:​~$ scp -i ~/​.ssh/​openstack.key student@$ADRESA_IP_VM:​portfwd_eth0_output.pcap ./   # Dacă fișierul pf_eth0_output.pcap se află în directorul /​home/​student/​ 
 +$USER_FEP@fep:​~$ scp -i ~/​.ssh/​openstack.key student@$ADRESA_IP_VM:​portfwd_veth-red_output.pcap ./   # Dacă fișierul pf_veth-red_output.pcap se află în directorul /​home/​student/​ 
 + 
 +student@lab-EG207-EG208:​~$ scp $USER_FEP@fep.grid.pub.ro:​portfwd_eth0_output.pcap ./  # Dacă fișierul portfwd_eth0_output.pcap se află în home-ul utilizatorului de pe fep. 
 +student@lab-EG207-EG208:​~$ scp $USER_FEP@fep.grid.pub.ro:​portfwd_veth-red_output.pcap ./  # Dacă fișierul portfwd_veth-red_output.pcap se află în home-ul utilizatorului de pe fep. 
 + 
 +</​code>​ 
 +</​spoiler>​  
 +</​note>​ 
 + 
 +<​note>​ 
 +Exemplu instalare și pornire ''​Wireshark''​ (pe sisteme Debian): 
 +<code bash> 
 +student@mjolnir:​~$ apt-get install wireshark 
 +student@mjolnir:​~$ wireshark portfwd_eth0_output.pcap & 
 +student@mjolnir:​~$ wireshark portfwd_veth-red_output.pcap & 
 +</​code>​ 
 +</​note>​
  
 +În capturile realizate de comenzile de mai sus, observăm cum se translatează adresa IP și portul destinație din perechea ''<​$ADRESA_IP_VM,​ 10022>''​ în perechea ''<​192.168.1.2,​ 22>''​.
rl/labs/08/contents/07.1379494309.txt.gz · Last modified: 2013/09/18 11:51 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