Wie deaktiviere ich die Funktion, die den Port 445 auf dem Windows-Server geöffnet hat?


13

Ich versuche, nicht benötigte Dienste zu deaktivieren, um die Latenz und die Sicherheit zu verbessern.

Ich habe festgestellt, dass Port 445 immer noch offen ist, indem ich auf localhost und Port 445 Telnet ausgeführt habe. Da ich Port 445 nicht benötige, würde ich es vorziehen, ihn zu schließen.

Wie kann ich herausfinden, wer Port 445 abhört und wie kann ich ihn deaktivieren?

Beachten Sie, dass ich Port 445 nicht mithilfe der Firewall oder dergleichen blockieren möchte, sondern das Programm deaktivieren möchte, für das Port 445 geöffnet ist.


2
Und nach 4 Jahren ist der Tag dieser Frage gekommen.
BlackPanda

1
Für Nicht-Geek-Leute: BlackPanda bezieht sich auf die WannaCry-Ransomware .
Gras Double

Antworten:


7

Das Folgende ist nur ein Zitat von zwei verschiedenen Quellen, die ich verwendet habe, um Port 445 auf Windows XP-Rechnern erfolgreich zu deaktivieren. Ich habe die Ports 445 und 135, 137 - 139 geschlossen, also habe ich alle Anweisungen im Artikel befolgt und es hat bei mir funktioniert.

Allgemeine Informationen zu Port 445 (Archivlink)

Unter den neuen von Windows 2000 verwendeten Ports befindet sich der TCP-Port 445, der für SMB über TCP verwendet wird. Das SMB-Protokoll (Server Message Block) wird unter anderem für die Dateifreigabe unter Windows NT / 2000 / XP verwendet. In Windows NT lief es auf NetBT (NetBIOS über TCP / IP), das die berühmten Ports 137, 138 (UDP) und 139 (TCP) verwendete. In Windows 2000 / XP hat Microsoft die Möglichkeit hinzugefügt, SMB direkt über TCP / IP ohne die zusätzliche NetBT-Schicht auszuführen. Dafür verwenden sie den TCP-Port 445.

Im einfachsten Fall ist NetBIOS in Ihrem LAN möglicherweise nur ein notwendiges Übel für ältere Software. NetBIOS in Ihrem WAN oder über das Internet ist jedoch ein enormes Sicherheitsrisiko. Alle Arten von Informationen wie Domänen-, Arbeitsgruppen- und Systemnamen sowie Kontoinformationen können über NetBIOS abgerufen werden. Es ist wirklich in Ihrem besten Interesse, sicherzustellen, dass NetBIOS niemals Ihr Netzwerk verlässt.

Wenn Sie einen mehrfach vernetzten Computer verwenden, dh mehr als eine Netzwerkkarte, sollten Sie NetBIOS auf jeder Netzwerkkarte oder DFÜ-Verbindung unter den TCP / IP-Eigenschaften deaktivieren, die nicht Teil Ihres lokalen Netzwerks sind.

So deaktivieren Sie Port 445

So deaktivieren Sie Port 445:

Fügen Sie den folgenden Registrierungsschlüssel hinzu:

Schlüssel: HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ NetBT \ Parameters Name: SMBDeviceEnabled Typ: DWORD (REG_DWORD) Daten: 0

Vergessen Sie nicht, Ihren Computer neu zu starten, nachdem Sie die oben genannten Ports deaktiviert haben. Um zu überprüfen, ob diese Ports deaktiviert sind, können Sie eine Eingabeaufforderung öffnen und netstat -an eingeben, um zu bestätigen, dass Ihr Computer diese Ports nicht mehr überwacht.

(Die Registrierungsschlüssel sind ab Windows 7 unterschiedlich. Weitere Informationen finden Sie in diesem Microsoft-Artikel. )


Wäre das Deaktivieren von Port 445 nicht dasselbe wie das Verwenden einer Firewall? Anstelle der Ursache ein Symptom beheben. Würde das Deaktivieren von NetBIOS das Öffnen von Port 445 verhindern? Nur Fragen. (Wenn nicht, muss das OP den Port möglicherweise wirklich deaktivieren)
nixda

Ich habe Computer im Netzwerk daran gehindert, über Windows-Netzwerkzukünfte miteinander zu kommunizieren. Sie kennen das Windows-Netzwerk - es ist schrecklich unsicher. Ein Computer ist mit Viren infiziert und verbreitet sich (ja, über die oben genannten Ports). In meinem Fall brauche ich diese Computer nicht einmal, um voneinander zu wissen, aber ich brauche sie immer noch, um im selben Netzwerksegment zu sein. Firewall war also keine Lösung für mich.
VL-80

Ich habe das ausprobiert und es funktioniert auch auf Windows Server 2008 R2 SP1.
Javapowered

Ich habe auch diesen nützlichen Artikel gefunden ssj100.fullsubject.com/…
javapowered

Zustimmen! Dieser Artikel ist in meiner Antwort (: Zweiter Link.
VL-80

10

Ich möchte diese Antwort gerne erweitern

Port 445 in Windows wird standardmäßig vom "Server" -Dienst verwendet (der tatsächliche Name lautet "Lanmanserver"), um die gemeinsame Nutzung von Dateien über das SMB-Protokoll zu ermöglichen. Um zu verhindern, dass Windows diesen Port überwacht, müssen Sie diesen Dienst beenden und deaktivieren.

  1. Sie müssen über Administratorrechte verfügen oder zum Administrator aufsteigen können.
  2. Öffnen Sie die Eingabeaufforderung als Administrator.
  3. Typ sc stop lanmanserver, drücken Sie die Eingabetaste.
  4. Aus irgendeinem Grund wird der Hafen zu diesem Zeitpunkt noch aktiv sein (nach meiner Erfahrung heute). Sie müssen das System neu starten, um zu verhindern, dass es den Port überwacht. Der Dienst wird jedoch nach dem Neustart neu gestartet, sodass Sie den Start deaktivieren müssen:
  5. Typ sc config lanmanserver start=disabled, drücken Sie die Eingabetaste.
  6. Starten Sie neu.
  7. Überprüfen Sie in der Eingabeaufforderung mit netstat -n -a | findstr "LISTENING" | findstr ":445", ob eine leere Zeile ausgegeben werden soll, was bedeutet, dass der Port nicht überwacht wird. (Der Befehl kann für nicht englische Windows-Versionen variieren. Sie sind sich nicht sicher, ob Sie "LISTENING" in eine übersetzte Variante ändern müssen.)

Es gibt verschiedene Gründe, um Port 445 in Windows freizugeben. Einer davon ist sehr interessant und es ist, SMB-Tunneling durch SSH zuzulassen. Wenn Windows den Port nicht verwendet, können Sie Putty / Cygwin'ed SSH jetzt anweisen, ihn zu verwenden und weiterzuleiten über eine sichere Verbindung zu einem Remote-Host - dann können Sie sicher über auf das Remote-Fileshare zugreifen \\localhost.


1
Das Deaktivieren des Serverdienstes kann unerwartete Folgen haben. Auf meinem System hat es Notepad ++ mit installiertem Light Explorer- Plugin beschädigt. Beim Versuch, das Programm zu starten, wurde kein sichtbares Fenster mehr angezeigt (obwohl es ausgeführt wurde, wie im Task-Manager zu beobachten).
Gras Double

1

Starten Sie "run-services.msc" und deaktivieren Sie den Serverdienst.


1
Ich habe es geschafft, aber ich konnte immer noch eine Verbindung zu Port 445 auf localhost herstellen
javapowered

1

Verwenden Sie TCPView , um herauszufinden, welches Programm Port 445 überwacht .

Wenn der Listener svchost.exe ist, ist dies ein Systemdienst. Um zu erraten, welche, notieren Sie sich die PID, gehen Sie zum Task-Manager, Registerkarte Dienste und klicken Sie auf PID, um danach zu sortieren. Es wird mehrere Dienste mit dieser PID geben, und alle von ihnen sind Kandidaten. Wenn Sie sich nicht entscheiden können, geben Sie die Namen der Bewerberdienste an, damit wir sie kommentieren können.

Bitte beachten Sie, dass ein offener Port keinen Listener haben muss. Ein Port wird als "offen" bezeichnet, wenn er nicht von der Firewall blockiert wird.


Ein offener Port an einer Firewall unterscheidet sich von einem offenen Port an einem Computer. Ein Port ist offen, wenn ein Listener anwesend ist und diesen Port auf Datenverkehr überwacht. Es ist geschlossen, wenn kein Listener existiert. Eine Firewall fügt eine weitere Ebene hinzu, die das Blockieren (Zurückgeben eines Pakets, das angibt, dass es geschlossen ist) oder das unbeaufsichtigte Verwerfen (Ignorieren) eines Pakets zulässt. Dies ist jedoch unabhängig davon, ob ein Port am Betriebssystem offen oder geschlossen ist.
NetworkLlama

0

Port 445 = SMB = Drucker- und Dateifreigabe. Deaktivieren Sie daher die Dateifreigabe in den Netzwerkverbindungsoptionen, um den Port zu schließen.


2
Ich habe die Drucker- und Dateifreigabe deaktiviert, aber der Port ist noch geöffnet.
Javapowered

Entsprechend der folgenden Liste: en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers 445 wird auch für Active Directory verwendet. Hostest du das?
magicandre1981

1
Nein, ich brauche nichts und ich möchte alles deaktivieren, ich benutze Server für den Handel.
javapowered

0

Power Shell:

$netBTParametersPath = "HKLM:\SYSTEM\CurrentControlSet\Services\NetBT\Parameters" 
IF(Test-Path -Path $netBTParametersPath) { 
    Set-ItemProperty -Path $netBTParametersPath -Name "SMBDeviceEnabled" -Value 0 
} 
Set-Service lanmanserver -StartupType Disabled 
Stop-Service lanmanserver -Force

Weitere Details Deaktivieren der Funktion, die Port 445 unter Windows von PowerShell geöffnet hat


Bitte posten Sie nicht die gleiche Antwort auf mehrere Fragen. Wenn dieselben Informationen tatsächlich beide Fragen beantworten, sollte eine Frage (normalerweise die neuere) als Duplikat der anderen geschlossen werden. Sie können dies anzeigen, indem Sie abstimmen, um es als Duplikat zu schließen, oder, wenn Sie nicht genug Reputation dafür haben , ein Flag setzen, um anzuzeigen, dass es sich um ein Duplikat handelt. Passen Sie andernfalls Ihre Antwort auf diese Frage an und fügen Sie dieselbe Antwort nicht an mehreren Stellen ein.
DavidPostill
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.