Natürlich befinden sich die Daten im privaten Subnetz im privaten Subnetz, da sie nicht über das Internet zugänglich sein sollten. :)
Aber ... Ich bin sicher, dass Sie Sie Gründe haben, so hier geht:
Erste, nein, Sie können dies nicht in einem einfachen befestigen → Verwendung → entfernt Art und Weise, weil jedes Subnetz hat genau eine Standardroute und zeigt entweder auf das Objekt igw
(öffentliches Subnetz) oder die NAT-Instanz (privates Subnetz). Wenn Sie eine elastische IP-Adresse an eine Maschine im privaten Subnetz binden, würde der eingehende Datenverkehr bei der Instanz ankommen, der ausgehende Antwortdatenverkehr würde jedoch über die NAT-Instanz zurückgeleitet werden, was sie entweder verwirft oder verfälscht, da dies nicht möglich ist Route asymmetrisch durch NAT, und das würde hier passieren.
Wenn Ihre Dienste sind TCP-Dienste (http, Remote Desktop, bla bla), dann ist hier ein Stück kurzfristig hackery, die sehr gut funktionieren würde, und den Ärger der iptables vermeiden und setzen nur die spezifische Dienstleistung, die Sie benötigen:
Starten Sie eine neue Mikroinstanz mit ubuntu 12.04 LTS im öffentlichen Subnetz mit einer EIP und einer entsprechenden Sicherheitsgruppe, um den eingehenden Internetverkehr zu den gewünschten Ports zu ermöglichen. Erlaube dir ssh Zugriff auf die neue Instanz. Ermöglichen Sie den Zugriff von diesem Computer auf den internen Computer. Dann:
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install redir
Angenommen, Sie eingehenden Port 80 Traffic auf Port 80 auf einer privaten Instanz senden möchten:
$ sudo redir --lport=80 --cport=80 --caddr=[private instance ip] --syslog &
Erledigt. Sie haben ein Protokoll für jede Verbindung und trennen die Verbindung mit den Portnummern und Bytes, die in Ihren Syslogs übertragen werden.Der Nachteil ist, dass wenn Ihr privater Host die IP des Verbindungsrechners betrachtet, er immer die interne IP der privaten Netzwerkinstanz sieht.
Sie müssen es nur mit sudo ausführen, wenn Sie an einen Port unter 1024 binden, da nur root an die unteren Portnummern binden kann. Um es zu stoppen, finden Sie die PID und töten sie oder sudo killall redir
.
Das spicy kleine redir
Dienstprogramm macht seine Magie im Benutzerraum und macht es einfacher (imho) als iptables. Es stellt eine Abhörbuchse auf dem angegebenen Port --lport
her. Er verzweigt sich für jede eingehende Verbindung selbst, baut eine ausgehende Verbindung zu --caddr
on --cport
auf und bindet die beiden Datenströme zusammen. Es hat keine Ahnung von dem, was im Stream vor sich geht, also sollte es für fast alles TCP funktionieren. Dies bedeutet auch, dass Sie in der Lage sein sollten, ziemlich viel Verkehr durchzulassen, trotz der Verwendung eines Micro.
Wenn Sie fertig sind, werfen Sie die Mikroinstanz weg und Ihr Netzwerk ist wieder normal.