This is an old revision of the document!
Incepand cu acest laborator vom lucra si pe topologia virtuala OpenStack. Aceeasi topologie va fi folosita si la proiect. Acest task are ca scop crearea infrastructurii virtuale.
Clientul de DHCP este reprezentat în Linux de comanda dhclient
. La o rulare a comenzii dhclient
este interogat serverul DHCP pentru transmiterea unei adrese.
Pentru a testa această funcționalitate, vom dezactiva configurația curentă și apoi vom face o nouă configurație.
Pentru dezactivare identificăm interfața activă prin rularea comenzii
ip a s
Apoi dezactivăm configurația interfeței:
sudo ip a f dev <interface>
unde <interface>
este numele interfeței.
Apoi solicităm o nouă adresă IP pentru interfață folosind comanda
sudo dhclient <interface>
unde <interface>
este numele interfeței.
Putem urmări în /var/log/syslog
mesajele afișate de clientul DHCP
.
Dacă dorim să dăm release la configurație, putem folosi comanda
sudo dhclient -r <interace>
unde <interface>
este numele interfeței.
Urmăriți adresele IP pe interfața TODO
a fiecărei mașini virtuale. Urmăriți în fișierul /etc/network/interface
configurația pentru interfața TODO
a fiecărei mașini virtuale.
Urmăriți configurația serverului de DHCP în /etc/default/isc-dhcp-server
și în /etc/dhcp/dhcpd.conf
. Verificați că serverul este pornit și ascultă conexiuni pe portul 68
UDP.
Urmăriți în fișierele de tip jurnal de pe fiecare sistem (/var/log/syslog
) mesaje afișate de clientul și serverul DHCP.
Folosiți, pe client, comenzile
sudo ifdown eth2 sudo ifup eth2
pentru dezactivarea și reactivarea interfeței și, deci pentru reinterogarea serverului DHCP, care duce la conduce la generarea de noi mesaje de jurnalizare.
Modificați configurația serverului DHCP
astfel încât acesta să furnizeze adrese în subnet-ul 1.1.1.0/24
, în range-ul 1.1.1.2-1.1.1.50
. Adresa IP a serverului DHCP pe interfața eth2
trebuie să fie 1.1.1.1
.
eth2
în fișierul /etc/network/interfaces
.
Pentru aceasta, dezactivați interfața:
sudo ip link set dev eth2 down sudo ip add flush dev eth2
faceți modificarea în fișierul /etc/network/interfaces
și apoi refaceți configurația
sudo ifup eth2
Pentru pornirea acesteia deschideți VirtualBox, apoi folosiți File → Import Appliance
și navigați în /mnt/sda5/uso/lab07/puccini-lab7.ova
de unde să importați mașina virtuală.
Mașina virtuală are pentru acces contul student
cu parola student
și este conectabilă la sistemul fizic pe interfața sa eth1
. Ar trebui ca pe interfața eth1
a mașinii virtuale sa aveți o adresă din rețeaua 192.168.56.0/24
, de obicei 192.168.56.101
.
Interfața pereche a interfeței eth1
de pe mașina virtuală este interfața vboxnet0
pe sistemul fizic. Aceasta are adresa 192.168.56.1
.
Încercați acum să vă conectați prin SSH de pe mașina virtuală pe sistemul fizic folosind comanda ssh
folosind o comandă de forma
ssh student@192.168.56.1
Parola este student
.
Acum încercați și invers, să vă conectați de la sistemul fizic la mașina virtuală. Veți întâmpina diverse tipuri de probleme. Rezolvați-le.
Apoi configurați autentificarea fără parolă (pe bază de chei) de la utilizatorul student
de pe sistemul fizic la utilizatorul student
și la utilizatorul root
de pe mașina virtuală. Va trebui să ajungă cheia publică a utilizatorului student
de pe sistemul fizic în fișierul ~/.ssh/authorized_keys
din directorul home al utilizatorilor student
și root
pe mașina virtuală.
Obiectivul acestui exercițiu este ca asistentul să ajungă pe mașina voastră virtuală de pe laptop-ul său. Pentru aceasta trebuie să faceți două lucruri:
student
de pe mașina virtuală.2222
pe sistemul fizic să ajungă pe portul 22
pe mașina virtuală.Pentru pasul 2, pe sistemul fizic folosiți o comandă de forma
sudo iptables -t nat -A PREROUTING -i ethX -p tcp --dport 2222 -j DNAT --to-destination <IP-vm>:22 sudo sysctl -w net.ipv4.ip_forward=1
unde:
ethX
este eth0
sau eth1
sau eth2
este interfața de Internet a sistemului fizic, cu o adresă din spațiul 172.16.4.0/22
<IP-vm>
este adresa IP a mașinii virtuale (adresa din rețeaua 192.168.56.0/24
Iar pe mașina virtuală rulați comanda de mai jos pentru a crea o rută din mașina virtuală către rețeaua fizică
sudo ip route add 172.16.4.0/22 via 192.168.56.1
Cu această rută veți permite pachetelor să se întoarcă din mașina virtuală către cheia SSH a asistentului.
Asistentul va încerca conexiunea la adresa IP a sistemului vostru fizic pe portul 2222
și, dacă e totul bine, va ajunge pe mașina voastră virtuală.
iptables
pentru DNAT găsiți în laboratorul 9 de RL: Translatarea de adrese.
sudo iptables -t nat -F
Configurați daemon-ul syslog de pe mașina virtuală să livreze mesajele de jurnalizare emise de SSH (de facilitatea auth
) către daemonul de syslog de pe sistemul fizic. Adică daemonul de syslog de pe sistemul fizic va fi listener pentru mesajele livrate de pe mașina virtuală.
Realizați conexiuni SSH de pe mașina fizică spre mașina virtuală pentru a declanșa mesaje de jurnalizare.
Realizați o conexiune SSH care folosește X Forwarding de la sistemul fizic la mașina virtuală. Porniți utilitarul xterm
. Instalați orice pachete sunt necesare pentru a permite rularea utilitarului xterm
.
Porniți manual, pe mașina virtuală, folosind executabilul /usr/sbin/sshd
ca să asculte conexiuni pe portul 22
. Încercați conexiuni către server de pe sistemul fizic.
Rulați serverul de SSH sub strace
(eventual folosind opțiunea -f
) și urmăriți ce se întâmplă atunci când se încearcă noi conexiuni.