Wie kann ich meinen Heim-PC zu einem Webserver machen?


8

Ich verwende Apache Tomcat auf meinem PC. Mein PC ist mit einem Router in meinem Haus verbunden und der Router ist mit meinem ISP verbunden. Jetzt möchte ich einen Server auf meinem PC ausführen, damit mein Freund meine auf meinem PC gehostete Site anzeigen kann. Wenn ich auf die Website https://whatismyip.com gehe, weiß ich, dass meine IP-Adresse xx.xx.xx.xx lautet. Dies ist die IP meines Routers, denke ich. Wenn ich in meinem Browser http: //xx.xx.xx.xx eingebe, fragt mein Router nach einem Benutzernamen und einem Kennwort. Dies bedeutet, dass mein Freund eine Verbindung zu meinem Router herstellen kann. Wie kann ich zulassen, dass die auf Tomcat gehostete Site auf meinem PC ausgeführt wird?

Ich möchte kein kommerzielles Hosting verwenden und möchte meinen PC aus bestimmten Gründen nur als Server verwenden.

Die interne IP meines Routers ist 192.162.1.1 und meines PCs ist 192.162.1.2.


3
Nein, kein Serverfehler. Dies ist eine Endbenutzerfrage, keine Frage des Systemadministrators. Dies sollte zu superuser.com gehen.

Vielleicht bist du hinter einem Proxy.

Ich nehme an, auf diesem PC läuft Windows? Ein PC unter Linux würde leicht abweichende Anweisungen erfordern.
David Thornley

Antworten:


14

Sie müssen Anforderungen an den Webserver (wahrscheinlich Port 80) an Ihren Computer (.1.2) weiterleiten. Sie konfigurieren dies auf Ihrem Router.


2
Beachten Sie, dass dies auf Routern normalerweise als "Portweiterleitung" bezeichnet wird. Eine einfachere, wenn auch weniger sichere Methode ist die Verwendung von DMZ auf Ihrem Router, um alle Ports für Ihren Webserver zu öffnen. Dies erleichtert manchmal das Hosten mehrerer Dienste auf Ihrem Webserver, z. B. Spieleserver, VoIP-Server usw.
Will Eddins

1
Und seien Sie sehr vorsichtig, wenn Sie Ports für eingehende Anfragen öffnen. Es gibt eine ganze Menge Leute, die an Ports mit zufälligen IP-Adressen klopfen, um zu sehen, wer antwortet.
David Thornley

11

Sie müssen ein paar Dinge tun:

  • Stellen Sie sicher, dass Sie Ihr Router-Passwort ändern und Ihren Router sperren, da Sie Ihre IP-Adresse öffentlich zugänglich machen, ist die Konfiguration Ihres Routers sehr wichtig. Es ist wahrscheinlich eine gute Idee, die neueste Firmware herunterzuladen, um Sicherheitslücken zu schließen.

  • Leiten Sie Ihre Webanforderungen an Ihren lokalen Computer auf Ihrem Router weiter. Suchen Sie nach der Option "Portweiterleitung", mit der alle Anforderungen an einem bestimmten Port Ihres Routers an die IP-Adresse Ihres Computers weitergeleitet werden

  • Stellen Sie sicher, dass Ihre interne IP-Adresse gleich bleibt. Einige fortgeschrittene Router können eine bestimmte IP-Adresse für die MAC-Adresse Ihres Computers reservieren. Nehmen Sie diese Konfiguration für Ihren Router vor. Wenn Ihre Router-Software dies nicht kann, müssen Sie wahrscheinlich Ihre interne IP-Adresse in der Zuordnung "Portweiterleitung" aktualisieren, wenn Ihr Computer neu startet (oder eine andere IP-Adresse erhält). Sie können Ihren Computer auch so konfigurieren, dass er eine fest codierte interne IP-Adresse verwendet. Dies kann jedoch zu zusätzlichen Problemen führen, die hier nicht behandelt werden können.

  • Wenn Ihr ISP Ihnen eine dynamische IP-Adresse zur Verfügung stellt, kann es schwierig werden, Ihrem Freund bei jeder Änderung Ihre neue IP-Adresse zu senden, sodass Sie sich für einen dynamischen IP-Dienst (www.dyndns.org) anmelden können wird ein Programm haben, das einen DNS-Eintrag für Sie aktualisiert. Bei den meisten modernen Routern ist dieser Server in die Firmware integriert. Sie können danach suchen, ohne die Software auf Ihrem Computer ausführen zu müssen.

  • Reduzieren Sie aus Sicherheitsgründen die Anzahl der anderen Anforderungen, die an diesen Computer gesendet werden (z. B. Windows-Dateifreigabe, FTP, Bit-Torrent usw. usw.).

  • Port 80 ist der Standardport, der von Webbrowsern und Servern verwendet wird. Wenn Sie also auf eine Website http://www.mysite.com zugreifen , fordern Sie ihn über Port 80 an.)

  • Port 8009 ist der von Tomcat verwendete Standardport. Wenn Sie also Tomcat verwenden, möchten Sie möglicherweise Port 80 durch Port 8009 unten ersetzen.

  • Sie müssen keine andere Portkonfiguration für den Webserver auf Ihrem lokalen Computer vornehmen. Sie können den Router die Zuordnung vornehmen lassen und den Webserver auf Port 80 oder 8009 auf Ihrem Computer laufen lassen.

  • Angenommen, ich möchte Port 12345 verwenden, dann kann ich meinen Router so konfigurieren, dass alle Anforderungen an Port 12345 auf meinem Router an Port 80 (oder 8009) auf meinem lokalen Computer gesendet werden. Auf diese Weise können Sie auf unseren Webserver auf diesem Computer zugreifen, indem Sie einfach http: // localhost / oder http: // localhost: 8009 aufrufen . Andere interne Maschinen in Ihrem Netzwerk müssen über die IP- Adresse ( http: //192.168.1 . X ) zugreifen, oder Sie können Ihre Hosts-Dateien bearbeiten und einen Namen zuweisen.

  • Es ist wichtig zu wissen, dass die meisten ISPs den Block-Port 80 (und andere gängige Ports) nicht als Webserver verwenden können. Selbst wenn Sie also alle konfigurierten Eigenschaften auf Ihrem Computer haben, kann Ihr Freund möglicherweise den Port 80 auf Ihrem Computer nicht erreichen . Dies geschieht in der Regel, damit ISP-Kunden mehr Geld für ihre "Business" -Angebote verdienen. Aus diesem Grund müssen Sie wahrscheinlich Ihren Router an einem anderen Port öffnen, wenn Ihr Freund wirklich auf Ihren Webserver zugreifen soll. Sie sollten sich von Ports mit geringer Anzahl fernhalten und vermeiden, den Port zu verwenden, für den Ihr Router konfiguriert ist.

Wenn Sie alle oben genannten Schritte korrekt ausführen, sollten Sie über eine stabile URL (z. B. http://meinbenutzername.dyndns.org:12345 ) verfügen , die Ihre Freunde als Lesezeichen speichern und nach Belieben verwenden können



1

Sie müssen Ihren Tomcat-Port an Ihren Router weiterleiten. Der Standard-Tomcat-Port ist 8080. Es ist besser, wenn Sie Ihren Tomcat-Port in 80 ändern. Befolgen Sie die folgenden Schritte, um Ihren Tomcat-Port zu ändern

  1. Öffnen Sie den Ordner tomcat \ conf auf Ihrem Computer
  2. Jetzt müssen Sie mit einem Texteditor die Datei server.xml öffnen und ändern. Hier müssen Sie die folgende Zeile (Zeile 184) identifizieren und sie so ändern, dass sie sich von:

zu:

<Http10Connector port="80"
secure="false"
maxThreads="100"
maxSpareThreads="50"
minSpareThreads="10" />
  1. Starten Sie den Webserver

Von Ihrem Router leiten Sie den Port 80 von Ihrem Router an die IP-Adresse Ihres PCs weiter. Sobald dies erledigt ist, teilen Sie Ihrem Freund mit, dass er auf Ihre Website zugreifen soll, indem Sie http: //xx.xx.xx.xx/webAppName verwenden . Hier ist xx.xx.xx.xx Ihre IP-Adresse und webAppName Ihr Website-Projekt.

Standardmäßig blockieren die ISPs Port 8080, sodass Sie den von Tomcat verwendeten Port ändern müssen.


ISPs blockieren Ports im Allgemeinen nicht standardmäßig. Das mag in Ihrer Stadt / Ihrem Land der Fall sein (ich vermute mal in den USA), aber im Allgemeinen ist das sicherlich nicht der Fall. In vielen Ländern haben ISPs tatsächlich recht faire Nutzungsbedingungen, ohne dass Port-Blockierungen (oder Bandbreitenbeschränkungen) erforderlich sind.
Mikael Auno

Mine blockiert Port 80, erlaubt aber 8080! Dies ist für jeden ISP anders.
Kevin Panko

0

Wenn Sie nicht an Portweiterleitung interessiert sind oder wenn es kompliziert klingt, haben die meisten Router die Einstellung DMZ. Stellen Sie Ihren Webserver (den Rechner, auf dem die Website gehostet wird) in die DMZ, damit er von außen gesehen werden kann. Wenn Sie dann noch keinen Domainnamen registriert haben, geben Sie Ihre IP-Adresse in den Browser Ihres Freundes ein.


Da das OP anscheinend kein Experte auf diesem Gebiet ist, würde ich vorschlagen, nicht alle Ports effektiv zu entsperren. Es gibt genug Exploits, und viele Leute, die Ports und IP-Adressen scannen, um diese Exploits zu verwenden, und jemand, der auf dieser Ebene Hilfe benötigt, weiß wahrscheinlich nicht, wie er sie stoppen kann. DMZ ist ein bisschen wie "PWN ME".
David Thornley

0

Sie müssen die "Portweiterleitung" auf dem Router von Port 80 (http) zu Ihrem PC einrichten. Außerdem empfehle ich die Einrichtung von "statischem DHCP", damit der Router Ihrem PC beim Booten immer die gleiche IP- Adresse zuweist.

Beachten Sie, dass Sie Ihren PC dabei der Welt der Hacker aussetzen. Stellen Sie sicher, dass Sie eine aktuelle Version von Apache / Tomcat installiert haben und regelmäßig Updates anwenden.

Wenn Ihr Router dies unterstützt, können Sie "dynamisches DNS" einrichten, um Ihrem Computer einen dauerhaften Namen im Internet zu geben (anstelle einer sich manchmal ändernden IP-Nummer).


0

Statische IP-Adresse ist ein Muss ... Wenn Sie eine dynamische IP-Adresse haben, ändert sich diese ständig und Sie müssen Ihrem Freund die neue IP-Adresse mitteilen

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.