Código "print.bat" para habilitar la detección de equipos compartidos en la red.
Te explico paso a paso qué hace cada función o elemento de este código, explicaré para qué sirve y qué hace, también explicaré cómo restaurar los valores originales en caso de haber usado ese código:
for %%i in (fdPhost FDResPub upnphost lmhosts iphlpsvc SSDPSRV) do (
sc config "%%i" start=auto > NUL 2>&1
net start "%%i" > NUL 2>&1
)
netsh advfirewall reset > NUL 2>&1
Powershell "Enable-WindowsOptionalFeature -Online -NoRestart -FeatureName SMB1Protocol"
Powershell "foreach ($Group in ('@FirewallAPI.dll,-28502','@FirewallAPI.dll,-32752')) {Set-NetFirewallRule -Group $Group -Profile Private, Public -Enabled True}"
Powershell "Get-NetConnectionProfile | Set-NetConnectionProfile -InterfaceAlias Ethernet* -NetworkCategory %red%"
Powershell "Get-NetConnectionProfile | Set-NetConnectionProfile -InterfaceAlias Wi-Fi* -NetworkCategory %red%"
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "EnablePlainTextPassword" /t REG_DWORD /d "0" /f > NUL 2>&1
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "EnableSecuritySignature" /t REG_DWORD /d "1" /f > NUL 2>&1
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "RequireSecuritySignature" /t REG_DWORD /d "0" /f > NUL 2>&1
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "AllowInsecureGuestAuth" /t REG_DWORD /d "1" /f > NUL 2>&1
Reg.exe add "HKLM\Software\Microsoft\Windows\CurrentVersion\NcdAutoSetup\Private" /v "AutoSetup" /t REG_DWORD /d "0" /f > NUL 2>&1
Descarga el SCRIPT desde: https://www.mediafire.com/file_premium/13wsc8ssufnrxhg/prints.7z/file
=====================================
Ahora vamos a desglosar cada parte del código y explicar su propósito y funcionamiento:
1. Bucle for
for %%i in (fdPhost FDResPub upnphost lmhosts iphlpsvc SSDPSRV) do (
sc config "%%i" start=auto > NUL 2>&1
net start "%%i" > NUL 2>&1
)
Propósito: Configura y arranca automáticamente una lista de servicios.
Funcionamiento:
for %%i in (...) do: Itera sobre cada servicio en la lista.
sc config "%%i" start=auto: Configura el servicio para que inicie automáticamente.
net start "%%i": Inicia el servicio.
> NUL 2>&1: Redirige la salida y los errores a NUL para que no se muestren en la consola.
2. Restablecer la configuración del firewall
netsh advfirewall reset > NUL 2>&1
Propósito: Restablece la configuración del firewall a sus valores predeterminados.
Funcionamiento: netsh advfirewall reset restablece todas las reglas y configuraciones del firewall.
3. Habilitar SMB1
Powershell "Enable-WindowsOptionalFeature -Online -NoRestart -FeatureName SMB1Protocol"
Propósito: Habilita el protocolo SMB1.
Funcionamiento: Usa PowerShell para habilitar la característica opcional SMB1 sin reiniciar el sistema.
4. Habilitar reglas de firewall
Powershell "foreach ($Group in ('@FirewallAPI.dll,-28502','@FirewallAPI.dll,-32752')) {Set-NetFirewallRule -Group $Group -Profile Private, Public -Enabled True}"
Propósito: Habilita reglas específicas del firewall para perfiles privados y públicos.
Funcionamiento: Itera sobre los grupos de reglas y las habilita para los perfiles de red privado y público.
5. Configurar el perfil de red
Powershell "Get-NetConnectionProfile | Set-NetConnectionProfile -InterfaceAlias Ethernet* -NetworkCategory %red%"
Powershell "Get-NetConnectionProfile | Set-NetConnectionProfile -InterfaceAlias Wi-Fi* -NetworkCategory %red%"
Propósito: Cambia la categoría de red de las interfaces Ethernet y Wi-Fi.
Funcionamiento: Usa PowerShell para obtener los perfiles de conexión y establecer la categoría de red (por ejemplo, Private o Public).
6. Modificar el registro de Windows
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "EnablePlainTextPassword" /t REG_DWORD /d "0" /f > NUL 2>&1
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "EnableSecuritySignature" /t REG_DWORD /d "1" /f > NUL 2>&1
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "RequireSecuritySignature" /t REG_DWORD /d "0" /f > NUL 2>&1
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "AllowInsecureGuestAuth" /t REG_DWORD /d "1" /f > NUL 2>&1
Reg.exe add "HKLM\Software\Microsoft\Windows\CurrentVersion\NcdAutoSetup\Private" /v "AutoSetup" /t REG_DWORD /d "0" /f > NUL 2>&1
Propósito: Configura varios parámetros de la red y la autenticación en el registro de Windows.
Funcionamiento:
EnablePlainTextPassword: Deshabilita las contraseñas en texto plano.
EnableSecuritySignature: Habilita la firma de seguridad.
RequireSecuritySignature: No requiere la firma de seguridad.
AllowInsecureGuestAuth: Permite la autenticación de invitados inseguros.
AutoSetup: Deshabilita la configuración automática de NcdAutoSetup.
Restaurar valores originales
Para restaurar los valores originales, deberías revertir cada cambio realizado. Aquí hay una guía general:
Servicios:
for %%i in (fdPhost FDResPub upnphost lmhosts iphlpsvc SSDPSRV) do (
sc config "%%i" start=demand > NUL 2>&1
net stop "%%i" > NUL 2>&1
)
Firewall:
netsh advfirewall reset > NUL 2>&1
SMB1:
Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol
Reglas de firewall:
Powershell "foreach ($Group in ('@FirewallAPI.dll,-28502','@FirewallAPI.dll,-32752')) {Set-NetFirewallRule -Group $Group -Profile Private, Public -Enabled False}"
Perfil de red:
Powershell "Get-NetConnectionProfile | Set-NetConnectionProfile -InterfaceAlias Ethernet* -NetworkCategory Public"
Powershell "Get-NetConnectionProfile | Set-NetConnectionProfile -InterfaceAlias Wi-Fi* -NetworkCategory Public"
Registro de Windows:
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "EnablePlainTextPassword" /t REG_DWORD /d "1" /f > NUL 2>&1
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "EnableSecuritySignature" /t REG_DWORD /d "0" /f > NUL 2>&1
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "RequireSecuritySignature" /t REG_DWORD /d "1" /f > NUL 2>&1
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "AllowInsecureGuestAuth" /t REG_DWORD /d "0" /f > NUL 2>&1
Reg.exe add "HKLM\Software\Microsoft\Windows\CurrentVersion\NcdAutoSetup\Private" /v "AutoSetup" /t REG_DWORD /d "1" /f > NUL 2>&1
El código que has compartido realiza varias configuraciones en el sistema relacionadas con servicios de red, firewall, y ajustes del registro de Windows.
Aquí hay algunas consideraciones sobre su uso:
Posibles Riesgos y Efectos
Servicios de Red:
Riesgo: Cambiar el estado de inicio de los servicios a automático y arrancarlos puede afectar el rendimiento del sistema si no son necesarios.
Efecto: Puede mejorar la conectividad de red si estos servicios son esenciales para tu entorno.
Restablecer el Firewall:
Riesgo: Restablecer el firewall puede eliminar reglas personalizadas, lo que podría exponer el sistema a riesgos de seguridad.
Efecto: Puede solucionar problemas de conectividad relacionados con configuraciones de firewall incorrectas.
Habilitar SMB1:
Riesgo: SMB1 es un protocolo antiguo y tiene vulnerabilidades conocidas. Habilitarlo puede aumentar el riesgo de ataques.
Efecto: Puede ser necesario para compatibilidad con dispositivos o sistemas antiguos.
Reglas de Firewall:
Riesgo: Habilitar reglas de firewall sin una comprensión clara de su propósito puede abrir puertos innecesarios.
Efecto: Puede mejorar la funcionalidad de aplicaciones que dependen de estas reglas.
Cambiar Categoría de Red:
Riesgo: Cambiar la categoría de red a Private o Public puede afectar la visibilidad y accesibilidad de tu dispositivo en la red.
Efecto: Ajustar la categoría de red puede mejorar la seguridad o la funcionalidad según el entorno.
Modificar el Registro:
Riesgo: Cambiar valores en el registro puede tener efectos no deseados si no se hace correctamente.
Efecto: Las modificaciones pueden mejorar la seguridad o la funcionalidad de la red.
Recomendaciones
Realiza una copia de seguridad: Antes de ejecutar el código, haz una copia de seguridad de tu sistema y del registro.
Prueba en un entorno controlado: Si es posible, prueba el código en un entorno de prueba antes de aplicarlo en un sistema de producción.
Comprende cada cambio: Asegúrate de entender cada configuración y su impacto en tu sistema.
El código puede ser útil para configurar la red, pero también puede tener riesgos si no se usa con cuidado al modificar valore importantes o críticos. Es importante evaluar cada cambio y su necesidad en tu entorno específico. Si tienes dudas, consultar con un profesional de TI puede ser una buena idea ya que pueden adaptarlo o mejorarlo según sus necesidades, pero hazlo con alguien que realmente sepa del tema ya que algunos podrían configurarlo mal al entender incorrectamente las instrucciones.
Mejorando el Código:
Para mejorar el código y asegurar que no se expongan puertos innecesarios ni se comprometa la seguridad del sistema, podemos hacer algunos ajustes. Aquí tienes una versión mejorada del código, seguida de una explicación de las diferencias:
Código Mejorado
@echo off
REM Configurar y arrancar servicios necesarios
for %%i in (fdPhost FDResPub upnphost lmhosts iphlpsvc SSDPSRV) do (
sc config "%%i" start=auto > NUL 2>&1
net start "%%i" > NUL 2>&1
)
REM Restablecer configuración del firewall a valores seguros
netsh advfirewall reset > NUL 2>&1
REM Habilitar SMB1 solo si es absolutamente necesario
Powershell "Enable-WindowsOptionalFeature -Online -NoRestart -FeatureName SMB1Protocol -LimitAccess"
REM Habilitar reglas de firewall específicas para detección de red
Powershell "Set-NetFirewallRule -DisplayGroup 'File and Printer Sharing' -Profile Private,Public -Enabled True"
Powershell "Set-NetFirewallRule -DisplayGroup 'Network Discovery' -Profile Private,Public -Enabled True"
REM Configurar perfil de red a privado para mayor seguridad
Powershell "Get-NetConnectionProfile | Set-NetConnectionProfile -InterfaceAlias Ethernet* -NetworkCategory Private"
Powershell "Get-NetConnectionProfile | Set-NetConnectionProfile -InterfaceAlias Wi-Fi* -NetworkCategory Private"
REM Modificar el registro para mejorar la seguridad de la red
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "EnablePlainTextPassword" /t REG_DWORD /d "0" /f > NUL 2>&1
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "EnableSecuritySignature" /t REG_DWORD /d "1" /f > NUL 2>&1
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "RequireSecuritySignature" /t REG_DWORD /d "1" /f > NUL 2>&1
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "AllowInsecureGuestAuth" /t REG_DWORD /d "0" /f > NUL 2>&1
Reg.exe add "HKLM\Software\Microsoft\Windows\CurrentVersion\NcdAutoSetup\Private" /v "AutoSetup" /t REG_DWORD /d "0" /f > NUL 2>&1
Descarga el SCRIPT desde: https://www.mediafire.com/file_premium/n70tctnatou4kj1/prints_mejorado.7z/file
Diferencias y Mejoras del código en relación al primero.
Servicios de Red:
Original: Configura y arranca servicios sin cambios.
Mejorado: Sin cambios en esta sección, ya que los servicios son necesarios para la detección de red.
Restablecer el Firewall:
Original: Restablece todas las configuraciones del firewall.
Mejorado: Mantiene el restablecimiento, pero se asegura de que las configuraciones sean seguras.
Habilitar SMB1:
Original: Habilita SMB1 sin restricciones.
Mejorado: Habilita SMB1 con la opción -LimitAccess para minimizar la exposición.
Reglas de Firewall:
Original: Habilita reglas de firewall sin especificar.
Mejorado: Habilita solo las reglas necesarias para la detección de red (File and Printer Sharing y Network Discovery).
Perfil de Red:
Original: Cambia la categoría de red según una variable (%red%).
Mejorado: Establece explícitamente la categoría de red a Private para mayor seguridad.
Registro de Windows:
Original: Permite la autenticación de invitados inseguros y otras configuraciones.
Mejorado: Deshabilita la autenticación de invitados inseguros (AllowInsecureGuestAuth a 0) y asegura que la firma de seguridad sea requerida (RequireSecuritySignature a 1).
Estas mejoras aseguran que el sistema pueda detectar redes y equipos compartidos sin comprometer la seguridad, minimizando la exposición de puertos y configuraciones inseguras.
=====================================
RESTABECIENDO CONFIGURACIONES ORIGINALES.
Si usaste cualquiera de los scripts anteriores y deseas restablecer todas las configuraciones de Windows a de fábrica tal cuál Microsoft tiene su sistema operativo, te dejo estas instrucciones
Aquí tienes un código que restablece todas las configuraciones modificadas por tu código original, devolviendo el sistema a su estado predeterminado:
Código para Restablecer Configuraciones
@echo off
REM Detener y configurar servicios a inicio manual
for %%i in (fdPhost FDResPub upnphost lmhosts iphlpsvc SSDPSRV) do (
net stop "%%i" > NUL 2>&1
sc config "%%i" start=demand > NUL 2>&1
)
REM Restablecer configuración del firewall a valores predeterminados
netsh advfirewall reset > NUL 2>&1
REM Deshabilitar SMB1
Powershell "Disable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol"
REM Deshabilitar reglas de firewall específicas para detección de red
Powershell "Set-NetFirewallRule -DisplayGroup 'File and Printer Sharing' -Profile Private,Public -Enabled False"
Powershell "Set-NetFirewallRule -DisplayGroup 'Network Discovery' -Profile Private,Public -Enabled False"
REM Configurar perfil de red a público (valor predeterminado)
Powershell "Get-NetConnectionProfile | Set-NetConnectionProfile -InterfaceAlias Ethernet* -NetworkCategory Public"
Powershell "Get-NetConnectionProfile | Set-NetConnectionProfile -InterfaceAlias Wi-Fi* -NetworkCategory Public"
REM Restaurar valores del registro a predeterminados
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "EnablePlainTextPassword" /t REG_DWORD /d "1" /f > NUL 2>&1
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "EnableSecuritySignature" /t REG_DWORD /d "0" /f > NUL 2>&1
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "RequireSecuritySignature" /t REG_DWORD /d "1" /f > NUL 2>&1
Reg.exe add "HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters" /v "AllowInsecureGuestAuth" /t REG_DWORD /d "0" /f > NUL 2>&1
Reg.exe add "HKLM\Software\Microsoft\Windows\CurrentVersion\NcdAutoSetup\Private" /v "AutoSetup" /t REG_DWORD /d "1" /f > NUL 2>&1
Descarga el SCRIPT desde:
https://www.mediafire.com/file_premium/nuvb46wgkcuv87h/prints_restablecer_original_Microsoft.7z/file
=====================================
En este código al igual que en los anteriores se puede ver para qué sirve y que realiza cada sección, de esa manera tendrás la seguridad de qué estás modificando o restaurando.
Explicación de las Diferencias
Servicios de Red:
Original: Configura los servicios para que inicien automáticamente y los arranca.
Restauración: Detiene los servicios y los configura para que inicien manualmente (start=demand).
Restablecer el Firewall:
Original: Restablece todas las configuraciones del firewall.
Restauración: Mantiene el restablecimiento del firewall a sus valores predeterminados.
SMB1:
Original: Habilita SMB1.
Restauración: Deshabilita SMB1.
Reglas de Firewall:
Original: Habilita reglas específicas para la detección de red.
Restauración: Deshabilita esas reglas de firewall.
Perfil de Red:
Original: Cambia la categoría de red a un valor específico (%red%).
Restauración: Establece la categoría de red a Public, que es el valor predeterminado.
Registro de Windows:
Original: Modifica varios valores del registro para la configuración de red.
Restauración: Restaura los valores del registro a sus configuraciones predeterminadas.
Este código debería ayudarte a revertir todas las configuraciones realizadas por el código original.
_________________________________________
Tecno PC Sistemas Ecuador
Laboratorio Técnico