Differences

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

Link to this comparison view

rl:labs:08:contents:04 [2020/09/13 07:16]
iulia.florea
rl:labs:08:contents:04 [2023/11/05 12:54] (current)
vlad_iulius.nastase
Line 1: Line 1:
-==== 4. [10p] Download și upload de director folosind ''​scp'' ​====+==== 04. [10p] Configurare incorectă a translatării ​====
  
-**Indicație**Pentru download-ul și upload-ul unui director folosiți opțiunea ''​-r''​ a comenzii ''​scp''​.+Comanda folosită mai sus pentru translatare,​ la [[:rl:​labs:​09:​contents:​01]],​ are neajunsuri pe care le vom identifica mai jos.
  
-Vom folosi două directoare: 
-  * directorul ''​assignment/''​ din directorul home al utilizatorului ''​student''​ de pe stația ''​host'';​ 
-  * directorul ''​solution/''​ din directorul home al utilizatorului ''​corina''​ de pe stația ''​blue''​. 
  
-Din contul ''​corina''​ de pe stația ''​blue''​, **descărcați** directorul ​''​assignment/'' ​**din** directorul home al utilizatorului ​''​student'' ​de pe stația ''​host''​.+Pe stația ''​green'' ​capturăm traficul pe interfaț''​green-eth0'' ​folosind comanda ​''​tcpdump''​:<code bash> 
 +root@green:​~#​ tcpdump -i green-eth0 
 +tcpdump: verbose output suppressed, use -v or -vv for full protocol decode 
 +listening on green-eth0, link-type EN10MB (Ethernet), capture size 65535 bytes 
 +</​code>​
  
-<​hidden>​ +Pe stația ''​red''​ executăm comanda ''​ping''​ către stația ''​green'':​<code bash> 
-<​solution>​ +root@red:~# ping -c 2 green 
-<code bash> +PING green (192.168.2.2) 56(84) bytes of data
-corina@blue:~$ scp -r student@host:​assignment ​+64 bytes from green (192.168.2.2)icmp_req=1 ttl=63 time=0.155 ms 
-quadratic.txt                                 ​100% ​  ​17 ​    0.0KB/s   00:00    ​ +64 bytes from green (192.168.2.2)icmp_req=2 ttl=63 time=0.086 ms 
-cubic.txt                                     ​100% ​  ​24 ​    0.0KB/s   00:00    ​ +[...] 
-linear.txt                                    100%    8     0.0KB/s   ​00:​00 ​   ​+</code>
  
-corina@blue:~$ ls +În acest moment, pe stația ''​green''​ avem captura pachetelor în output-ul comenzii ''​tcpdump''​:<​code>​ 
-assignment ​ blue-file-10M.dat  ​host-file-10M.dat  solution+11:18:54.535064 IP host > green: ICMP echo request, id 633, seq 17, length 64 
 +11:18:54.535092 IP green > host: ICMP echo reply, id 633, seq 17, length 64
 </​code>​ </​code>​
-</​solution>​ 
-</​hidden>​ 
  
-Din contul ​''​corina'' ​de pe stația ''​blue'', ​**uploadați** directorul ​''​solution/''​ **în** ​directorul home al utilizatorului ''​student'' ​de pe stația ''​host''​. +Observăm că adresa sursă a pachetelor de tip ''​ICMP echo request'' ​este stația ''​host'', ​nu stația ''​red''​. Acest lucru se întâmplă din cauză că atunci când am activat NAT nu am specificat pentru ce tip de trafic să aplice politica de translatare. Astfel stația ''​host''​ aplică politica de NAT pentru tot traficul care o tranzitează. Dorim să aplicăm politica doar pentru pachetele ce **ies** în Internet, adică cele ale căror ​**interfață ​de ieșire** este interfaț''​eth0''​. ​Vom șterge vechea regulă de NAT și vom adăuga o regulă corectă.
-<​hidden>​ +
-<​solution>​ +
-<code bash> +
-corina@blue:​~$ scp -r solution student@host: ​       +
-quadratic.txt                                 ​100% ​  ​15 ​    ​0.0KB/​s ​  ​00:​00 ​    +
-cubic.txt ​                                    ​100% ​  ​23 ​    ​0.0KB/​s ​  ​00:​00 ​    +
-linear.txt ​                                   100%    6     ​0.0KB/​s ​  ​00:​00 ​   ​+
  
-corina@blue:~$ ssh student@host ls +Pentru ștergerea vechii reguli de NAT rulăm pe stația ''​host''​ comanda<​code bash> 
-assignment +root@host:~# iptables ​-t nat -D POSTROUTING ​-j MASQUERADE
-blue-file-10M.dat +
-file-100M-ftp.dat +
-file-100M-nc.dat +
-file-100M-scp.dat +
-host-file-10M.dat +
-solution+
 </​code>​ </​code>​
-</solution+Verificăm faptul că nu mai există comanda<​code bash> 
-</hidden>+root@host:​~#​ iptables -t nat -L POSTROUTING -n -v 
 +Chain POSTROUTING (policy ACCEPT 1 packets, 328 bytes) 
 + pkts bytes target ​    prot opt in     ​out ​    ​source ​              ​destination 
 +</code> 
 + 
 +Adăugăm din nou regula de NAT, dar de data aceasta vom specifica să aplice politica de NAT pachetelor ce ies prin interfața ''​eth0''​ a stației ''​host'':<​code bash> 
 +root@host:​~#​ iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE 
 +</code> 
 +Verificați că regula a fost inserată:<​code bash> 
 +root@host:​~#​ iptables -t nat -L POSTROUTING -n -v 
 +Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes) 
 + pkts bytes target ​    prot opt in     ​out ​    ​source ​              ​destination 
 +    0     0 MASQUERADE ​ all  --  *      eth0    0.0.0.0/​0 ​           0.0.0.0/0 
 +</​code>​ 
 +Observăm prezența interfaței ''​eth0''​ în coloana ''​out''​. Înainte apărea caracterul ''​*'',​ adică orice interfață. 
 + 
 +Repetați testul de la începutul exercițiului și arătați că pachetele trimise de la ''​red''​ către ''​green''​ au adresele IP sursă/​destinație nemodificate (nu mai fac trecerea prin NAT), în vreme ce pachetele ce ies în Internet sunt translatate.
rl/labs/08/contents/04.1599970588.txt.gz · Last modified: 2020/09/13 07:16 by iulia.florea
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