# [SOLVED] Tunele SSH

## PiotrPZ

Próbuję rozwiązać następujący problem:

Chcę połączyć dwa hosty z różnych podsieci, które mają jeden punkt wspólny  - mogą się łączyć do hosta trzeciego:

```
A(win)===>B(linux)<===C(linux)
```

1. host A może inicjować połączenie do B po dowolnym porcie 

2. host C może inicjować połączenie do B po dowolnym porcie

3. Bezpośrednie połączenie między  A i C nie jest możliwe

4. B tylko "słucha" nie może inicjować sesji ( FW nie pozwoli)

hosty A,B i C należą do różnych podsieci. Połączenie zarówno z A i C do B przechodzi przez FW i VPN

Host A wystawia usługę na porcie X. 

Czy i jak połączyć się z C do A na port X za pośrednictwem hosta B. Postawienie servera OpenVPN na B nie jest możliwe

Podrawiam

PPLast edited by PiotrPZ on Thu Jan 20, 2011 12:42 pm; edited 1 time in total

----------

## Raku

```
ssh -L localhost:xxxx:host_c:yyyy host_b
```

i na host_c na port yyyy wbijasz się poprzez ares localhost:xxxx

o to chodzi?

----------

## PiotrPZ

Raku, dzięki za zainteresowanie.

Niestety chyba nie tak. Musze połączyć się z hosta C do A:xxxx. Przeszkodą jest jednak to, ze z B, nie dobije się do A, więc Twój tunel nie zadziała. O ile dobrze rozumiem ideę tunelowania to w moim przypadku chyba trzeba by zestawić dwa tunele. Np: jeden tunel zwrotny z A do B, a drugi "zwykły" z C przez B i do tunelu pierwszego. Nie wiem czy to jest fizycznie możliwe, a jeśli nawet to nie mam pojęcia jak to zestawić.

PP

----------

## PiotrPZ

Udało mi sie rozwiązac problem, moze sie komus przyda...

Na hoście A ustawiamy tunel: 

```
ssh -R Y:localhost:X user@B
```

Na hoście C ustawiamy tunel: 

```
ssh -L  Z:localhost:Y user@B
```

.. i teraz bez problemu z hosta C wykonujemy np: telnet localhost:Z i dostajemy sie do hosta A na port X

PP

----------

