Ar fi necesare mai multe informații despre configurarea rețelei pentru a răspunde pe deplin la aceasta, așa că voi face câteva presupuneri aici. Trebuie să ajustați răspunsul la cazul dvs.
Prima întrebare este: spuneți că aveți o conexiune ssh de la VM1 la VM2. Aveți numai conexiunea ssh sau aveți o conexiune de rețea obișnuită, completă între VM1 și VM2? Dacă aveți o conexiune completă, nu trebuie să utilizați un tunel ssh pentru proxy, ci doar complică prea mult lucrurile.
Să presupunem pentru moment că aveți o conexiune completă și adresa IP VM1 este 192.168.1.100
și adresa dvs. IP VM2 este 192.168.1.200
. Ar trebui să configurați un proxy pe VM1 pentru a asculta, de exemplu, pe portul 3128 (acesta este de obicei un număr de port obișnuit utilizat pentru proxy, deși puteți utiliza orice număr de port neutilizat) și configurați VM2 pentru a utiliza proxy 192.168.1.100:3128
. Asta e practic tot.
Dacă aveți doar conexiunea ssh (de exemplu există un firewall între cele două VM care trece doar traficul ssh), trebuie să redirecționați porturile prin conexiune ssh. Să presupunem că încă rulați proxy pe VM1 pe portul 3128 și vă conectați prin ssh din VM1 la VM2 (cum ai scris în întrebarea ta). În acest caz, trebuie să utilizați următoarea comandă pe VM1 pentru a vă conecta la VM2:
ssh -R 3128:localhost:3128 192.168.1.200
După ce stabiliți conexiunea, puteți seta VM2 să folosească proxy la localhost:3128
.
Vă puteți conecta și în alt mod, de exemplu. din VM2 la VM1, folosind comanda (pe VM2):
ssh -L 3128:localhost:3128 192.168.1.100
În mod similar, după ce conexiunea este stabilită, setați VM2 să folosească proxy la localhost:3128
.