Ich komme von dieser Frage: /superuser/359799/how-to-make-freebsd-box-accessible-from-internet
Ich möchte diesen ganzen Prozess verstehen port forwarding
.
Ich habe so viele Dinge gelesen, verstehe aber nicht das grundlegende Konzept der Portweiterleitung.
Was ich habe:
ein freebsd server sitzt bei mir zu hause.
Netgear Router
Das versuche ich zu erreichen:
in der Lage zu sein, von einem Windows-Rechner über das Internet auf freebsd-Server zuzugreifen, um einen Webbrowser zu öffnen und auf das Internet zuzugreifen.
Ich möchte auch von einer Ubuntu-Maschine, die ich habe, auf diese Freebsd-Box zugreifen.
Es wird toll sein, wenn mir jemand helfen kann.
Hier ist das NetGear-Router-Setup, das ich für die Portweiterleitung durchgeführt habe.
superuser
Frage ist.Antworten:
Ich werde mit den rohen Fakten beginnen:
Sie haben:
A
- Ihre FreeBSD-Box,B
- Ihren Router undC
- einen Computer mit Internetzugang. So sieht es aus:Beachten Sie, wie Ihr Router normalerweise funktioniert: Er ermöglicht Verbindungen von Computern in Ihrem LAN zum Internet (einfach ausgedrückt). Wenn der
A
(oder ein anderer Computer im LAN) auf das Internet zugreifen möchte, ist dies zulässig (hier noch einmal nur das grundlegende Verständnis und die Konfiguration):Und das Folgende ist standardmäßig nicht erlaubt:
(Das heißt, der Router schützt die Computer in Ihrem LAN vor dem Zugriff aus dem Internet.) Beachten Sie, dass der Router der einzige Teil Ihres LAN ist, der vom Internet aus gesehen wird 1) .
Die Portweiterleitung ermöglicht die Ausführung des dritten Schemas. Dies besteht darin, dem Router mitzuteilen, welche Verbindung von
C
2) zu welchem Rechner im LAN führen soll. Dies geschieht auf der Grundlage von Portnummern - daher wird es als Portweiterleitung bezeichnet . Sie konfigurieren dies, indem Sie den Router anweisen, dass alle über einen bestimmten Port aus dem Internet kommenden Verbindungen zu einem bestimmten Computer im LAN gehen sollen. Hier ist ein Beispiel für Port 22, der an Computer weitergeleitet wurdeA
:Solche Verbindungen über das Internet erfolgen anhand von IP-Adressen. Eine etwas genauere Darstellung des obigen Beispiels wäre also:
Wenn Sie keine Internetverbindung mit einer statischen IP-Adresse haben, müssen Sie irgendwie herausfinden, welche IP-Adresse Ihrem Router derzeit vom Internetdienstanbieter zugewiesen wird. Andernfalls
C
wird nicht wissen, zu welcher IP es eine Verbindung herstellen muss, um zu Ihrem Router (und weiter zuA
) zu gelangen. Um dies auf einfache Weise zu lösen, können Sie einen Dienst namens dynamisches DNS verwenden . Dadurch sendet Ihr Router regelmäßig Informationen an einen speziellen DNS-Server , der Ihre IP-Adresse protokolliert und Ihnen einen Domänennamen bereitstellt . Es gibt einige kostenlose dynamische DNS-Anbieter. Viele Router verfügen über Konfigurationsoptionen, mit denen Sie problemlos Kontakt aufnehmen können.1) Dies ist wiederum eine Vereinfachung - das eigentliche Gerät, das für das Internet gesehen wird, ist das Modem - das oft in den Router integriert werden kann, aber auch eine separate Box sein kann.
2) oder ein anderes Gerät mit Internetverbindung.
Nun zu dem, was Sie wollen:
Das einfache Zulassen des SSH-Zugriffs auf Ihren Computer aus dem Internet ist eine schlechte Idee. Es gibt Tausende von Bots, die von Crackern eingerichtet wurden , die im Internet nach Computern mit offenem SSH-Port suchen. Sie "klopfen" normalerweise an den Standard-SSH-Port von so vielen IP-Adressen wie möglich, und sobald sie einen SSH-Daemon finden, der irgendwo läuft, versuchen sie, Bruteforce- Zugriff auf den Computer zu erlangen . Dies birgt nicht nur die Gefahr eines möglichen Einbruchs, sondern auch die Gefahr einer Netzwerkverlangsamung, während die Maschine überlastet wird.
Wenn Sie einen solchen Zugang wirklich brauchen, sollten Sie zumindest
versichere dich, dass du sichere Passwörter für alle Benutzerkonten hast ,
Root-Zugriff über SSH nicht zulassen (Sie können sich immer als normaler Benutzer anmelden und
su
odersudo
dann),Ändern Sie den Standardport, auf dem Ihr SSH-Server ausgeführt wird.
einen Mechanismus einführen, der zahlreiche SSH-Anmeldeversuche nicht zulässt (mit einer kürzeren Wartezeit für nachfolgende Versuche - ich kann mich nicht erinnern, wie genau dies heißt - ich hatte es vor einiger Zeit unter FreeBSD aktiviert und erinnere mich, dass es recht einfach war - versuchen Sie es Durchsuchen Sie einige FreeBSD-Foren usw., um SSH zu sichern, und Sie werden es finden.)
Versuchen Sie nach Möglichkeit, den ssh-Daemon nur dann auszuführen, wenn Sie wissen, dass Sie in naher Zukunft auf den Computer zugreifen und ihn anschließend ausschalten werden
Gewöhnen Sie sich daran, Ihre Systemprotokolle zu durchsuchen. Wenn Sie Verdachtsmomente bemerken, führen Sie zusätzliche Sicherheitsmechanismen wie IP-Tabellen oder Port-Knocking ein .
quelle
Es gibt verschiedene Möglichkeiten, dies zu erreichen. Am einfachsten ist es wahrscheinlich, eine sogenannte DMZ einzurichten. Die sicherere Möglichkeit besteht jedoch darin, auf Ihrem Router eine statische Route an Port 22 zur IP-Adresse Ihres Servers einzurichten.
Ressourcen:
quelle
Dies kann von Ihrem Router durchgeführt werden. Auf einigen Routern wird diese Funktion aufgerufen
Virtual Server
Im unteren Teil des Bildes sehen Sie zwei Beispiele für die Portweiterleitung. Einer ist von Web und ein anderer ist von SSH. Im ersten Fall wird jede Anfrage auf Ihrer WAN-IP, dh die IP Ihres Routers mit Port
80
, an eine LAN-IP weitergeleitet (192.168.2.4
in diesem Fall).Mit dieser Funktion können Sie Dienste von überall auf der Welt auf Ihrem PC / Server im LAN ausführen dh diese Dienste sind nicht auf LAN beschränkt
quelle