Serwer publiczny działający jako serwer proxy do serwera niepublicznego

1

PROBLEM: Ponieważ moja bezpłatna usługa w chmurze spada, postanowiłem zbudować własną przy użyciu RPi i OwnCloud, ponieważ jest tańsza i ma (zasadniczo) nieograniczoną ilość miejsca. Nie mogłem uzyskać publicznego adresu IP w domu, więc kupiłem prosty VPS z publicznym adresem IP.

CZEGO POTRZEBUJĘ: Załóżmy, że mam taką domenę: domain.io. Chciałbym mieć własną stronę internetową w tej domenie i moją chmurę działającą w subdomenie, np. Cloud.domain.io. Ponieważ VPS i serwery z ogromną ilością miejsca są bardzo drogie i mam gigabajty danych, muszę przechowywać moje dane w domu na własnym serwerze, co znacznie obniża koszty.

CO SPRÓBOWAŁEM: Kupiłem VPS i RPi. Następnie stworzyłem prostą sieć VPN klient-serwer za pomocą OpenVPN. Teraz mam problem - muszę przekierować subdomenę (inaczej cloud.domain.io) na moje RPi przez VPN. Byłbym szczęśliwy, gdybym mógł przekierowywać nie tylko żądania HTTP (https), ale wszystkie połączenia - na przykład połączenia ssh. Niestety utknąłem. Nie mogłem znaleźć żadnych informacji na ten temat. Nie wiem nawet, czy coś takiego jest możliwe. Każda wskazówka byłaby bardzo mile widziana.

tomascapek
źródło
Nie jest jasne, do czego służy VPS. Wszelki ruch kierowany w kierunku VPN byłby kierowany do VPS, a nie do maszyny, której przypisano adres niestatyczny.
Ramhound
VPN działa jak tunel - ponieważ RPi nie ma publicznego adresu IP, muszę jakoś móc komunikować się w obie strony - od VPS do RPi i wstecz. VPS będzie używany do kilku innych usług, takich jak poczta e-mail, git, a także moja osobista strona internetowa.
tomascapek,
O to mi chodzi. W pewnym momencie komunikacja, nawet jeśli zostanie skonfigurowana, będzie musiała być aktualizowana za każdym razem, gdy zmienia się adres niestatyczny.
Ramhound
Ale VPS przypisał publiczny adres IP. Adresy w VPN są stałe - dopóki nie usunę pliku, w którym OpenVPN przechowuje przypisane adresy IP. Skoro RPi łączy się z VPN, która jest na tym publicznym VPS, gdzie jest problem?
tomascapek,
Więc jakie jest twoje pytanie, w jaki sposób skonfigurować subdomenę, aby przejść do określonego adresu?
Ramhound

Odpowiedzi:

0

Znalazłem moje rozwiązanie. Ponieważ adresy IP 10.xxx są zarezerwowane dla NAT i podobnych rzeczy, oznacza to, że nie można go przypisać „z zewnątrz”. Moja sieć VPN ma zasięg 10.8.xx, a zatem nie ma problemu z rozwiązaniem nginx takim:

server {
   # other config stuff for subdomain

   location / {
      proxy_pass https://10.8.0.6;
   }
}
tomascapek
źródło