Nowe posty

Autor Wątek: Serwer ssh i ftp bez publicznego IP.  (Przeczytany 14491 razy)

sirmantra

  • Gość
Serwer ssh i ftp bez publicznego IP.
« dnia: 2010-02-04, 08:23:37 »
Jak w tytule chciałbym aby ktoś krok po kroku wyjaśnił mi jak zrobić serwer ftp i ssh bez publicznego ip. Jestem zielony w te klocki i za bardzo nie wiem od czego zacząć. IPTABLES czy może coś innego, tylko nie odsyłajcie mnie na google gdyż szukałem i nic ciekawego nie znalazłem. Debian etch 4.0-4a i386.

Aha! Serwer ssh już działa po sieci lokalnej i wszystko jest OK.

chmooreck

  • Gość
Serwer ssh i ftp bez publicznego IP.
« Odpowiedź #1 dnia: 2010-02-04, 08:49:37 »
To jeszcze tylko zostało ci załatwienie publicznego IP i tez będzie chodził...

sirmantra

  • Gość
Serwer ssh i ftp bez publicznego IP.
« Odpowiedź #2 dnia: 2010-02-04, 10:26:31 »
a co z www.dyndns.org chodzi mi o to, właśnie chcę zrobić forwarding ale nie mam pojęcia jak to zrobić. Bądź jakieś inne wyjście!

Wenar

  • Gość
Serwer ssh i ftp bez publicznego IP.
« Odpowiedź #3 dnia: 2010-02-04, 12:06:09 »
Ddns to bardzo fajna zabawka bez tego nie dasz rady mieć serwera na zewnątrz.. zaraz jak znajdę. to mam instrukcję co trzeba zrobić na ddns aby to działało.

podstawą jest posiadanie dostępu do wszystkich możliwych ruterów na drodze do internetu, gdyż ddns najlepiej ustawiać na ruterze. sprawdzone:P (w domu mam dwa rutery prze wyjściem w świat i ustawienie na jednym nie działa.)

http://forum.ubuntu.pl/showthread.php?t=59982
o znalazłem.. choć to pod ubuntu działa na debianie. o ile wiesz ze co nie co komendy trzeba modyfikować, przynajmniej co do debiana 5.0 przy 4 to nie wiem jak to wygląda..

forwarding zmieniasz na ruterze :)

chmooreck

  • Gość
Serwer ssh i ftp bez publicznego IP.
« Odpowiedź #4 dnia: 2010-02-04, 12:27:04 »
sirmantra zdecyduj się czy nie masz publicznego IP, czy też masz publiczny, ale zmienny ?
Bez publicznego się nie da, dyndns służy do aktualizacji wpisów w serwerach DNS publicznego adresu zmiennego, tak, żeby dało się dostać do Twojego serwera z sieci po nazwie.

arctgx

  • Gość
Serwer ssh i ftp bez publicznego IP.
« Odpowiedź #5 dnia: 2010-02-04, 16:48:21 »
W tym samym temacie chciałbym zapytać o drugą stronę: klienta z dynamicznie przydzielanym adresem IP.

Wpisy AllowUsers w /etc/ssh/sshd_config można ustawiać według IP (odpada, rzecz jasna) albo adresu domenowego. Nawet jeśli maszynie z klientem przypisałem jakiś adres domenowy dzięki usłudze DDNS, to host serwera i tak tłumaczy IP klienta (powiedzmy, a.b.c.d) na d-c-b-a.domena.operatora (niezależnie od tego czy używam klienta systemowego, czy z rutera).

Nie mam na razie pomysłu jak zapewnić tłumaczenie bieżącego IP na adres z DDNS. Intuicja podpowiada mi, że klucz do tego trzyma operator (czyżby dig pozwolił to potwierdzić lub obalić?), dlatego nie wiem jak od strony klienta je opublikować. Po stronie serwera też nie wiem: odwrotne DNS odpada, bo któremu adresowi IP miałbym przypisać domenowy? Ma ktoś z Was pomysł jak to rozpracować zakładając nadal, że IP jest zmienny?

adamziaja

  • Gość
Serwer ssh i ftp bez publicznego IP.
« Odpowiedź #6 dnia: 2010-03-22, 18:57:06 »
Cytat: sirmantra
a co z www.dyndns.org chodzi mi o to, właśnie chcę zrobić forwarding ale nie mam pojęcia jak to zrobić. Bądź jakieś inne wyjście!
Cytat: chmooreck
sirmantra zdecyduj się czy nie masz publicznego IP, czy też masz publiczny, ale zmienny ?
Bez publicznego się nie da, dyndns służy do aktualizacji wpisów w serwerach DNS publicznego adresu zmiennego, tak, żeby dało się dostać do Twojego serwera z sieci po nazwie.
dokładnie, jeśli masz dynamiczne to dyndns, jeśli nie masz publicznego to musi być DMZ albo forward danych portów (21/22)

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3066
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Serwer ssh i ftp bez publicznego IP.
« Odpowiedź #7 dnia: 2010-03-22, 23:31:54 »

@ziaja - Twój post wniósł coś nowego, czy tylko nabijasz sobie licznik?


@sirmantra - jeżeli masz prywatny adres IP, to aby mieć publicznie dostępne SSH potrzebujesz otworzyć przekierowanie (DNAT, static, port forward, port redirect - różne firmy/systemy różnie to nazywają) na tym komputerze, który ma publiczne IP przez wszystkie pośrednie urządzenia do Ciebie.

Dla SSH - jeżeli komputer o adresie (x.x.x.x) masz wpięty do routera "mydelniczki" z NAT (powiedzmy o adresie a.a.a.a), wpiętego do routera z NAT u pana Zdzisia (adres b.b.b.b), wpiętego do routera z NAT u pana Władzia który to ma adres publiczny - powiedzmy 1.2.3.4 ustawiasz to tak:
1. Pan Władzio na swoim adresie publicznym ustawia przekierowanie portu, np 2222 na router pana Zdzisia (b.b.b.b) na port BBBB
2. Pan Zdzisio na swoim routerze ustawia przekierowanie portu BBBB na Twój router  (a.a.a.a) na port AAAA
3. Ty na soim routerze ustawiasz przekierowanie portu AAAA na twój komputer x.x.x.x na port 22.

Teraz jak ktoś się zaSSHuje na port 2222 i adres 1.2.3.4 u pana Władzia, to ostatecznie wyląduje u Ciebie. Uff...

Publicznie dostępne FTP z sieci prywatnej to większe schody:
1. Tak jak port SSH/22 musisz przeciągnąć port FTP/21 do Twojej maszyny
2. W trybie PASSIVE klient nawiązuje drugie połączenie (dla danych) do Twojego serwera na inny port niż 21 (port wylosowany przez serwer). W większości serwerów FTP możesz zdefiniować pulę portów, z której losuje połączenie. Następnie musisz wszystkie te porty przeciągnąć 1:1 z adresu publicznego do Ciebie  (1:1 to znaczy port np 5000 na publicznym do 5000 u ciebie, 5001 na pub do 5001 u Ciebie itd). Provider może się wkurzyć.
3. W trybie ACTIVE to Twój serwer nawiązuje połączenie danych od Ciebie do klienta, więc połączenie z Twojego punktu widzenia wychodzą przez NAT jak każde inne wychodzące (nieistotny jest kierunek przepływu danych, ważne, że Ty inicjalizujesz połączenie). Problem jest wtedy, gdy to klient jest na prywatnym adresie i połączenie od Ciebie po prostu do niego nie dotrze...

Roziązaniem "eleganckim" problemu PASSIVE jest to, żeby routery między Tobą a Twoim routerem z adresem publicznym obsługiwały "ftp-helper" (Linux)/"ftp inspection" (Cisco) czy podobny mechanizm - program śledzący sesję FTP na porcie 21 i automatycznie generujący potrzebne przekierowania dynamicznie podczas pracy. To samo dotyczy trybu ACTIVE, tylko mechanizm ten musi działać między twoim klientem a jego routerem z adresem publicznym.

Zastanów się, czy nie warto zastąpić FTP przez SCP (leci "na barana" po SSH, więc jak działa SSH to automagicznie masz SCP) albo HTTP(s)/WebDAV (pojedynczy kanał na porcie 80/443).
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy