¿Cómo deshabilitar la función que abrió el puerto 445 en el servidor de Windows?

13

Estoy tratando de deshabilitar servicios que no necesito, para mejorar la latencia y mejorar la seguridad.

Descubrí que el puerto 445 todavía está abierto al hacer telnet en localhost y el puerto 445. Como no necesito el puerto 445, preferiría cerrarlo.

¿Cómo puedo saber quién está escuchando en el puerto 445 y cómo lo deshabilito?

Tenga en cuenta que no quiero bloquear el puerto 445 usando el firewall o algo así, pero quiero deshabilitar el programa que tiene el puerto 445 abierto.

javapowered
fuente
2
Y después de 4 años, ha llegado el día de esta pregunta.
BlackPanda
1
Para personas no geek: BlackPanda se refiere al ransomware WannaCry .
Gras Double

Respuestas:

7

La siguiente es solo una cita de dos fuentes diferentes que usé para deshabilitar con éxito el puerto 445 en máquinas con Windows XP. Estaba cerrando los puertos 445 y 135, 137 - 139, así que seguí todas las instrucciones del artículo y funcionó para mí.

Información general sobre el puerto 445 (enlace de archivo)

Entre los nuevos puertos usados ​​por Windows 2000 se encuentra el puerto TCP 445 que se usa para SMB sobre TCP. El protocolo SMB (Server Message Block) se usa, entre otras cosas, para compartir archivos en Windows NT / 2000 / XP. En Windows NT se ejecutaba sobre NetBT (NetBIOS sobre TCP / IP), que utilizaba los famosos puertos 137, 138 (UDP) y 139 (TCP). En Windows 2000 / XP, Microsoft agregó la posibilidad de ejecutar SMB directamente sobre TCP / IP, sin la capa adicional de NetBT. Para esto utilizan el puerto TCP 445.

En su forma más simple, NetBIOS en su LAN puede ser un mal necesario para el software heredado. NetBIOS en su WAN o por Internet, sin embargo, es un riesgo de seguridad enorme (tonto ...). Se puede obtener todo tipo de información, como los nombres de su dominio, grupo de trabajo y sistema, así como la información de la cuenta a través de NetBIOS. Realmente le conviene asegurarse de que NetBIOS nunca abandone su red.

Si está utilizando una máquina de alojamiento múltiple, es decir, más de 1 tarjeta de red, debe deshabilitar NetBIOS en cada tarjeta de red o conexión de acceso telefónico bajo las propiedades TCP / IP, que no forma parte de su red local.

Cómo deshabilitar el puerto 445

Para deshabilitar el puerto 445:

Agregue la siguiente clave de registro:

Clave: HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ NetBT \ Nombre de parámetros: SMBDeviceEnabled Tipo: DWORD (REG_DWORD) Datos: 0

No olvide reiniciar su computadora después de deshabilitar los puertos anteriores para que surta efecto. Además, para verificar que esos puertos estén deshabilitados, puede abrir un símbolo del sistema y escribir netstat -an para confirmar que su computadora ya no escucha esos puertos.

(las claves de registro son diferentes para Windows 7 en adelante, consulte este artículo de Microsoft )

VL-80
fuente
¿Deshabilitar el puerto 445 no sería lo mismo que usar un firewall? Arreglando un síntoma en lugar de la causa. En cambio, ¿deshabilitar solo NetBIOS evitaría que se abriera el puerto 445? Sólo preguntaba. (Si no, tal vez el OP realmente tiene que deshabilitar el puerto)
nixda
Estaba evitando que las computadoras en la red se comuniquen entre sí utilizando futuros de la red de Windows. Conoces la red de Windows, es horrible insegura. Una computadora tiene virus y se propaga (sí, usando los puertos mencionados anteriormente). En mi caso, no necesito esas computadoras ni siquiera para saber acerca de la existencia de las otras, pero todavía necesito que estén en el mismo segmento de red. Entonces, el firewall no fue una solución para mí.
VL-80
He intentado eso y también funciona en Windows Server 2008 R2 SP1.
javapowered
También he encontrado este útil artículo ssj100.fullsubject.com/…
javapowered
¡De acuerdo! Este artículo está en mi respuesta (: Segundo enlace.
VL-80
10

Me gustaría extender esta respuesta

El puerto 445 en Windows se usa de manera predeterminada por el servicio "Servidor" (el nombre real es "lanmanserver") para proporcionar el intercambio de archivos a través del protocolo SMB. Para evitar que Windows escuche en este puerto, debe detener y deshabilitar este servicio.

  1. Debe tener derechos de administrador o poder pasar a administrador.
  2. Abra el símbolo del sistema como administrador.
  3. Escriba sc stop lanmanserver, presione Entrar.
  4. Por alguna razón en este punto, el puerto seguirá activo (desde mi experiencia, lo hice hoy). Debe reiniciar el sistema para evitar que escuche en el puerto, pero el servicio se reiniciará después del reinicio, por lo que debe deshabilitarlo para que no se inicie:
  5. Escriba sc config lanmanserver start=disabled, presione Entrar.
  6. Reiniciar.
  7. Verifique en el símbolo del sistema con netstat -n -a | findstr "LISTENING" | findstr ":445", debe imprimir una línea en blanco, lo que significa que nada está escuchando en el puerto. (el comando puede variar para versiones de Windows que no están en inglés, no estoy seguro, es posible que deba cambiar "ESCUCHAR" a una variante traducida)

Hay varias razones para liberar el puerto 445 en Windows, una de ellas es bastante interesante y es permitir que SMB haga un túnel a través de SSH: cuando Windows no usa el puerto, ahora puede decirle a Putty / Cygwin'ed SSH que lo use y reenvíe a un host remoto a través de una conexión segura, entonces puede acceder al recurso compartido de archivos remoto de forma segura a través de \\localhost.

Dmitrii Sutiagin
fuente
1
Deshabilitar el servicio del servidor puede tener consecuencias bastante inesperadas. En mi sistema, rompió Notepad ++ con el complemento Light Explorer instalado. Intentar iniciar el programa ya no daba ninguna ventana visible (aunque se estaba ejecutando, como se observa en el administrador de tareas).
Gras Double
1

Start-run-services.msc, deshabilita el servicio del servidor.

Damir
fuente
1
lo hice pero aún puedo conectarme al puerto 445 en localhost
javapowered
1

Use TCPView para averiguar qué programa está escuchando en el puerto 445.

Si el oyente es svchost.exe, este es un servicio del sistema. Para adivinar cuál, anote su PID, vaya al Administrador de tareas, pestaña Servicios y haga clic en PID para ordenar por él. Habrá varios servicios con este PID, y todos ellos son candidatos. Si no puede decidir cuál, publique los nombres de los servicios candidatos para que podamos comentarlos.

Tenga en cuenta que un puerto abierto no necesita tener un oyente. Un puerto se llama "abierto" cuando el firewall no lo bloquea.

harrymc
fuente
Un puerto abierto en un firewall es diferente de un puerto abierto en una computadora. Un puerto está abierto si un oyente está presente y observa ese puerto en busca de tráfico. Está cerrado si no existe un oyente. Un firewall agrega otra capa que puede permitir, bloquear (devolver un paquete que indica que está cerrado) o descartar (ignorar silenciosamente) un paquete, pero eso es independiente de si un puerto está abierto o cerrado en el sistema operativo.
NetworkLlama
0

Puerto 445 = SMB = Impresora y uso compartido de archivos. Así que deshabilite el uso compartido de archivos en las opciones de conexión de red para cerrar el puerto.

magicandre1981
fuente
2
He desactivado la impresora y el uso compartido de archivos, pero el puerto aún está abierto.
Desarrollado en Java el
De acuerdo con la siguiente lista: en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers 445 también se usa para Active Directory. ¿Alojas esto?
magicandre1981
1
no, no necesito nada y quiero deshabilitar todo, estoy usando el servidor para el comercio.
Java el
0

Potencia 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

Más detalles Cómo deshabilitar la función que abrió el puerto 445 en Windows por PowerShell

franco
fuente
No publique la misma respuesta a varias preguntas. Si la misma información realmente responde ambas preguntas, entonces una pregunta (generalmente la más nueva) debería cerrarse como un duplicado de la otra. Puede indicar esto votando para cerrarlo como un duplicado o, si no tiene suficiente reputación para eso, levante una bandera para indicar que es un duplicado. De lo contrario, adapte su respuesta a esta pregunta y no solo pegue la misma respuesta en varios lugares.
DavidPostill