Sie sollten Port 80 nicht sperren. Stattdessen sollten Sie Ihren Server so konfigurieren, dass er HTTP-Port 80 auf HTTPS-Port 443 umleitet, um TLS zu verwenden. Sie können optional HSTS (HTTP Strict Transport Security) verwenden, um Browsern mitzuteilen, dass sie sich daran erinnern sollen, in Zukunft nur noch TLS zu verwenden, wenn sie sich mit Ihrer Website verbinden.
Es ist nichts Unsicheres daran, dass Port 80 offen ist. Sicherheitsprobleme treten nur auf, wenn der Webserver Anfragen über eine unverschlüsselte Verbindung bedient, insbesondere wenn diese Anfragen vertrauliche Daten enthalten. Wenn Port 80 offen ist und nichts weiter als eine HTTP-Umleitung sendet, ist das absolut sicher.
Google, die wichtigste Suchmaschine des Internets (die sowohl Bing als auch Yahoo in den Schatten stellt) und der Browser, der von der Mehrheit der Internetnutzer verwendet wird, hat auf eine reine HTTPS-Welt gedrängt, indem sie den Seitenrang für Websites, die kein HTTPS verwenden, verringert und hinzugefügt hat eine Browser-Warnung, wenn eine Website nicht ist sicher. Das Verhältnis von HTTPS-Sites zu Nicht-HTTPS-Sites ist jedoch immer noch viel zu niedrig, um eine HTTPS-First-Richtlinie für alle zu empfehlen, da Benutzer ziemlich ständig beängstigende „Zertifikatsfehler“-Meldungen oder „Verbindung abgelehnt“-Fehler erhalten würden.
Bis Google also eine HTTPS-First-Richtlinie für Browserverbindungen empfiehlt, ist es unwahrscheinlich, dass Firefox, Apple oder Microsoft solche Richtlinien empfehlen werden, und das ist nicht wahrscheinlich, bis eine anständige Mehrheit (vielleicht 70 % oder mehr) der Top-Sites vorhanden ist sind HTTPS-fähig, was eine enorme Steigerung gegenüber den etwa 50 % der Top-Sites wäre, die heute HTTPS haben.
Die meisten Benutzer, die Ihre HTTP-Site absichtlich oder versehentlich besuchen, werden wahrscheinlich zu einer anderen Site wechseln, wenn sie mit dem Fehler „Verbindung abgelehnt“ begrüßt werden. Ich habe keine gute Möglichkeit, hier konkrete Zahlen zu bekommen, aber es ist wahrscheinlich, dass 70-90% der Internetnutzer wahrscheinlich nicht herausfinden würden, dass die Seite keinen HTTP-Port ohne eine automatische Weiterleitung hat; der Rest ist wahrscheinlich entweder technisch kompetent genug, um zu erkennen, dass er HTTPS benötigt, oder er verwendet HTTPS Everywhere und würde es sowieso nicht bemerken.
Verwenden Sie auf jeden Fall HSTS, leiten Sie auf jeden Fall 301 zu HTTPS-Ressourcen um (der 301 weist auf einen dauerhaften Wechsel zu Browsern hin, sodass sie sich an diese Einstellung „erinnern“). Raten Sie Ihren Benutzern auf jeden Fall, sicherzustellen, dass sie ein Vorhängeschloss sehen und das Zertifikat überprüfen usw Blockieren Sie an dieser Stelle Port 80, da das Internet dafür einfach noch nicht bereit ist.
Soweit ich weiß, gibt es keine größeren Websites, die HTTP und deaktiviert haben blockiert Port 80. Wenn Sie dies tun, werden Sie die Erwartung der Benutzer brechen (dass die Site Sie auf eine sichere Site weiterleitet), und da die meisten Benutzer nicht wissen, was sie hier tun sollen, weil sie keine freundliche Antwort erhalten Fehlermeldung, geht einfach davon aus, dass Ihre Website defekt ist, und fährt fort.
Kurz gesagt:Halten Sie es normalerweise offen und verwenden Sie es, um alles umzuleiten zu HTTPS.
Nun zu den komplizierten Sachen :Das Wegnehmen von Port 80 kann Cookie-Diebe stoppen, die passiv nach Straggle http://corp.com/some/forgotten/thing
suchen Anfragen. Die TCP-Verbindung ist nicht erfolgreich, der Browser sendet kein GET und keine Cookies, und der Angreifer kann sie nicht lesen.
Manchmal ist es sinnvoll, sich davor zu schützen, insbesondere wenn man an Unternehmensumgebungen denkt:Legacy-Apps, HSTS nur teilweise implementiert, Cookies, denen das sichere Flag oder Pfad- oder Hostbeschränkungen fehlen, von Drittanbietern gehostet oder geproxyt, ...
Sollten Sie blockiere es? Wahrscheinlich nicht.
Wie bereits erwähnt, würde dies die Einrichtung von Let's Encrypt erschweren und Weiterleitungen verhindern (einschließlich Benutzer, die nur your.com
eingeben in der Adressleiste). Wenn Sie domänenweites HSTS eingerichtet haben, kann das Entfernen von Weiterleitungen sogar als kontraproduktiv angesehen werden (vielleicht möchten Sie eine riskieren einfache HTTP-Verbindung, damit alle geschützt werden zukünftige).
Beachten Sie auch, dass aktive Angreifer nicht gestoppt werden (sie können die Verbindung künstlich herstellen, MITM-Proxy-Tools können dies sogar standardmäßig tun), es gibt Ausnahmefälle (einfache HTTP-Proxys, delegierte Domänen außerhalb Ihrer Firewall) und Sie können nur Betrachten Sie den passiven Angriff als zu kompliziert für Ihr Modell.
Zu guter Letzt sollten Sie hinzufügen Port 80 auf einen neuen Server übertragen? Nun, es sei denn, Sie haben bereits einen Grund, es zu öffnen (siehe oben), nein.