Planeación de la protección de seguridad (SharePoint Foundation 2010)
Se aplica a: SharePoint Foundation 2010
Última modificación del tema: 2016-11-30
En este artículo se describe cómo reforzar la seguridad de los roles de servidor web, servidor de aplicaciones y servidor de base de datos de Microsoft SharePoint Foundation 2010 y proporciona información detallada acerca de los requisitos específicos para reforzar los puertos, protocolos y servicios de Productos de Microsoft SharePoint 2010.
En este artículo:
Instantáneas de servidor seguras
En un entorno de granja de servidores, los servidores individuales desempeñan roles específicos. Las recomendaciones para la protección de seguridad de estos servidores dependen del rol que desempeña cada uno.
Las instantáneas se dividen en categorías de configuración comunes. Las características definidas para cada categoría representan el estado de refuerzo óptimo de Productos de Microsoft SharePoint 2010. Este artículo no incluye información para reforzar otro software del entorno.
Roles del servidor web y del servidor de aplicaciones
En esta sección se identifican las características de refuerzo de servidores web y servidores de aplicaciones. Parte de la información se aplica a aplicaciones de servicio específicas; en estos casos, las características correspondientes deben aplicarse solo a los servidores que ejecutan los servicios asociados a las aplicaciones de servicio específicas.
Categoría |
Característica |
Servicios enumerados en el complemento Servicios de MMC |
Habilite los siguientes servicios:
Asegúrese de que estos servicios no estén deshabilitados:
Asegúrese de que estos servicios no estén deshabilitados en los servidores que hospedan los roles correspondientes:
|
Puertos y protocolos |
|
Registro |
No hay información adicional |
Auditoría y registro |
Si los archivos de registro se reubican, asegúrese de que sus ubicaciones se actualicen para que coincidan. Además, actualice las listas de control de acceso (ACL) a directorios. |
Seguridad de acceso a código |
Asegúrese de que tiene un conjunto mínimo de permisos de seguridad de acceso a código habilitado para la aplicación web. El elemento <trust> del archivo Web.config de cada aplicación web debe establecerse en WSS_Minimal (donde WSS_Minimal tiene sus valores mínimos predeterminados como se definen en 14\config\wss_minimaltrust.config o en el archivo de directiva personalizado, que está establecido en el mínimo). |
Web.config |
Siga estas recomendaciones para cada archivo Web.config que se crea tras ejecutar el programa de instalación:
|
Rol de servidor de bases de datos
La recomendación principal de Productos de SharePoint 2010 es proteger la comunicación entre granjas de servidores mediante el bloqueo de los puertos predeterminados usados para la comunicación con Microsoft SQL Server y el establecimiento de puertos personalizados para esta comunicación en su lugar. Para obtener más información acerca de cómo configurar los puertos para la comunicación con SQL Server, vea Bloqueo de los puertos estándar de SQL Server, más adelante en este artículo.
Categoría |
Característica |
Puertos |
|
En este artículo no se describe cómo proteger SQL Server. Para obtener más información acerca de cómo proteger SQL Server, vea el tema sobre la protección de SQL Server (https://go.microsoft.com/fwlink/?linkid=186828&clcid=0xC0A).
Información específica sobre puertos, protocolos y servicios
En el resto de este artículo se describen más detalladamente los requisitos específicos de protección de Productos de SharePoint 2010.
En esta sección:
Requisitos de protección del servicio de perfiles de usuario
Requisitos de servicios para la integración de correo electrónico
Bloqueo de los puertos estándar de SQL Server
Los puertos específicos usados para conectarse a SQL Server se ven afectados en función de si las bases de datos se instalan en una instancia predeterminada de SQL Server o en una instancia con nombre de SQL Server. La instancia predeterminada de SQL Server atiende solicitudes de cliente en el puerto TCP 1433. Una instancia con nombre de SQL Server atiende un número de puerto asignado aleatoriamente. Además, el número de puerto para una instancia con nombre se puede reasignar si la instancia se reinicia (en función de si el número de puerto asignado previamente está disponible).
De forma predeterminada, los equipos cliente que se conectan a SQL Server primero se conectan mediante el puerto TCP 1433. Si esta comunicación no se realiza correctamente, los equipos cliente consultan el servicio de resolución de SQL Server que atiende el puerto UDP 1434 para determinar en qué puerto está atendiendo la base de datos.
El comportamiento predeterminado de comunicación con los puertos de SQL Server presenta varios problemas que afectan al refuerzo de la seguridad de los servidores. En primer lugar, los puertos usados por SQL Server son puertos bien publicitados y el servicio de resolución de SQL Server ha sido objeto de ataques de saturación del búfer y de denegación del servicio, incluido el virus de gusano "Slammer". A pesar de que SQL Server se ha actualizado para mitigar los problemas de seguridad en el servicio de resolución de SQL Server, los puertos bien conocidos siguen siendo un objetivo. En segundo lugar, si las bases de datos están instaladas en una instancia con nombre de SQL Server, el puerto de comunicación correspondiente se asigna de forma aleatoria y puede cambiar. Este comportamiento puede impedir potencialmente la comunicación entre servidores en un entorno con seguridad reforzada. La capacidad de controlar qué puertos TCP están abiertos o bloqueados es fundamental para proteger el entorno.
Por lo tanto, la recomendación para una granja de servidores es asignar números de puerto estáticos a instancias con nombre de SQL Server y bloquear el puerto UDP 1434 para evitar que los posibles atacantes tengan acceso al servicio de resolución de SQL Server. Además, considere la posibilidad de reasignar el puerto usado por la instancia predeterminada y de bloquear el puerto TCP 1433.
Existen varios métodos que puede usar para bloquear puertos. Puede bloquear estos puertos mediante un firewall. Sin embargo, a menos que esté seguro de que no hay otras rutas al segmento de red y de que no hay usuarios malintencionados con acceso al segmento de red, se recomienda bloquear estos puertos directamente en el servidor que hospeda SQL Server. Esto se puede conseguir mediante el Firewall de Windows en el Panel de control.
Configuración de las instancias de base de datos de SQL Server para escuchar en un puerto no estándar
SQL Server permite reasignar los puertos usados por la instancia predeterminada y las instancias con nombre. En SQL Server 2005 y SQL Server 2008, se pueden reasignar puertos mediante el Administrador de configuración de SQL Server.
Configuración de alias de cliente SQL Server
En una granja de servidores, todos los servidores front-end web y los servidores de aplicaciones son equipos cliente de SQL Server. Si bloquea el puerto UDP 1434 en el equipo con SQL Server o cambia el puerto predeterminado para la instancia predeterminada, deberá configurar un alias de cliente de SQL Server en todos los servidores que se conecten al equipo con SQL Server.
Para conectarse a una instancia de SQL Server 2005 o SQL Server 2008, puede instalar componentes de cliente de SQL Server en el equipo de destino y configurar el alias de cliente de SQL Server mediante el Administrador de configuración de SQL Server. Para instalar los componentes de cliente de SQL Server, ejecute el programa de instalación y seleccione únicamente uno de los siguientes componentes de cliente para instalar:
Componentes de conectividad
Herramientas de administración (incluye el Administrador de configuración de SQL Server)
Si desea conocer los pasos de protección de seguridad específicos para bloquear los puertos estándar de SQL, vea Protección de SQL Server para entornos de SharePoint (SharePoint Foundation 2010).
Comunicación con la aplicación de servicio
De forma predeterminada, la comunicación entre los servidores web y las aplicaciones de servicio dentro de una granja de servidores se lleva a cabo mediante HTTP con un enlace al puerto 32843. Al publicar una aplicación de servicio, se puede seleccionar HTTP o HTTPS con los siguientes enlaces:
Enlace HTTP: puerto 32843
Enlace HTTP: puerto 32844
Además, los terceros que desarrollan aplicaciones de servicio pueden implementar una tercera opción:
- Enlace net.tcp: puerto 32845
Puede cambiar el protocolo y el enlace de puerto para cada aplicación de servicio. En la página Aplicaciones de servicio de Administración central, seleccione la aplicación de servicio y, a continuación, haga clic en Publicar.
La comunicación entre las aplicaciones de servicio y SQL Server se lleva a cabo a través de los puertos estándar de SQL Server o los puertos configurados para la comunicación con SQL Server.
Requisitos del servicio Compartir archivos e impresoras
Varias características principales dependen del servicio Compartir archivos e impresoras y los protocolos y puertos correspondientes. Estos incluyen pero no se limitan a los siguientes:
Consultas de búsqueda Todas las consultas de búsqueda requieren el servicio Compartir archivos e impresoras.
Rastreo e indización de contenido Para rastrear contenido, los servidores que incluyen componentes de rastreo envían solicitudes a través del servidor front-end web. El servidor front-end web se comunica directamente con la bases de datos de contenido y envía los resultados de vuelta a los servidores que incluyen componentes de rastreo. Esta comunicación requiere el servicio Compartir archivos e impresoras.
El servicio Compartir archivos e impresoras requiere el uso de canalizaciones con nombre. Las canalizaciones con nombre se comunican mediante protocolos NetBT o SMB hospedados directamente. Para obtener un entorno seguro, se recomienda usar SMB hospedado directamente en lugar de NetBT. En las recomendaciones para reforzar la seguridad proporcionadas en este artículo se asume que se usará SMB.
En la tabla siguiente se describen los requisitos para el endurecimiento de la seguridad introducidos por la dependencia en el servicio Compartir archivos e impresoras.
Categoría |
Requisitos |
Notas |
Servicios |
Compartir archivos e impresoras |
Requiere el uso de canalizaciones con nombre. |
Protocolos |
Canalizaciones con nombre que usan SMB hospedado directamente Deshabilitar NBT |
Las canalizaciones con nombre pueden usar NetBT en lugar de SMB hospedado directamente. Sin embargo, se considera que NetBT es menos seguro que SMB hospedado directamente. |
Puertos |
Alguno de los siguientes elementos:
|
Deshabilitar NetBT (puertos 137, 138 y 139) si no está en uso |
Para obtener más información acerca de cómo deshabilitar NetBT, vea el artículo de Microsoft Knowledge Base 204279 sobre el hospedaje directo de SMB a través de TCP/IP (https://go.microsoft.com/fwlink/?linkid=76143&clcid=0xC0A).
Requisitos de servicios para la integración del correo electrónico
La integración del correo electrónico requiere el uso de dos servicios:
Servicio SMTP
La integración del correo electrónico requiere usar el servicio SMTP al menos en uno de los servidores front-end web de la granja de servidores. El servicio SMTP es obligatorio para el correo electrónico entrante. Para el correo electrónico saliente, se puede usar el servicio SMTP o enrutarlo a través de un servidor de correo electrónico dedicado en la organización, como un equipo con Microsoft Exchange Server.
Servicio de administración de directorios de Microsoft SharePoint
Productos de SharePoint 2010 incluye un servicio interno, el servicio de administración de directorios de Microsoft SharePoint, para crear grupos de distribución de correo electrónico. Al configurar la integración de correo electrónico, tiene la opción de habilitar la característica del servicio de administración de directorios, que permite a los usuarios crear listas de distribución. Cuando los usuarios crean un grupo de SharePoint y seleccionan la opción de crear una lista de distribución, el servicio de administración de directorios de Microsoft SharePoint crea la lista de distribución de Active Directory correspondiente en el entorno de Active Directory.
En entornos con protección de seguridad, se recomienda restringir el acceso al servicio de administración de directorios de Microsoft SharePoint mediante la protección del archivo asociado con este servicio: SharePointEmailws.asmx. Por ejemplo, podría permitir el acceso a este archivo sólo mediante la cuenta de la granja de servidores.
Además, este servicio requiere permisos en el entorno de Active Directory para crear objetos de lista de distribución de Active Directory. Se recomienda configurar una unidad organizativa (UO) independiente en Active Directory para los objetos de Productos de SharePoint 2010. Solo esta UO debería permitir el acceso de escritura a la cuenta usada por el servicio de administración de directorios de Microsoft SharePoint.
Servicios de Productos de SharePoint 2010
No deshabilite los servicios instalados por Productos de SharePoint 2010 (enumerados anteriormente en la instantánea).
Si su entorno no permite servicios que se ejecutan como sistema local, puede considerar deshabilitar el servicio de administración de SharePoint 2010 sólo si es consciente de las consecuencias y puede evitarlas. Este servicio es un servicio Win32 que se ejecuta como servicio local.
El servicio de temporizador de SharePoint 2010 usa este servicio para realizar acciones que requieren permisos administrativos en el servidor, como crear sitios web de Internet Information Services (IIS), implementar código y detener o iniciar servicios. Si deshabilita este servicio, no podrá completar tareas relacionadas con la implementación desde el sitio de Administración central. Debe usar Windows PowerShell para ejecutar el cmdlet Start-SPAdminJob (o usar la herramienta de línea de comandos Stsadm.exe para ejecutar la operación execadmsvcjobs) para completar las implementaciones de varios servidores para Productos de SharePoint 2010 y ejecutar otras tareas relacionadas con la implementación.
Archivo Web.config
.NET Framework, y ASP.NET en particular, usa archivos de configuración con formato XML para configurar las aplicaciones. Para definir las opciones de configuración, .NET Framework emplea archivos de configuración, que son archivos XML basados en texto. En un mismo sistema pueden existir varios archivos de configuración, lo que ocurre a menudo.
En .NET Framework, los parámetros de configuración de todo el sistema están definidos en el archivo Machine.config. Este archivo se encuentra en la carpeta %SystemRoot%\Microsoft.NET\Framework\%VersionNumber%\CONFIG\. La configuración predeterminada que se encuentra en el archivo Machine.config se puede modificar para cambiar el comportamiento de las aplicaciones que usan .NET Framework en todo el sistema.
Puede cambiar los parámetros de configuración de ASP.NET para una única aplicación si crea un archivo Web.config en la carpeta raíz de la aplicación. Al hacerlo, la configuración del archivo Web.config sobrescribe la configuración del archivo Machine.config.
Al extender una aplicación web mediante Administración central, Productos de SharePoint 2010 crea automáticamente un archivo Web.config para la aplicación web.
En la instantánea de servidor de aplicaciones y de servidor web presentada anteriormente en este artículo se enumeran las recomendaciones para configurar los archivos Web.config. Estas recomendaciones se deben aplicar a cada archivo Web.config que se cree, incluido el archivo Web.config para el sitio de Administración central.
Para obtener más información acerca de los archivos de configuración de ASP.NET y la modificación de un archivo Web.config, vea la configuración de ASP.NET (https://go.microsoft.com/fwlink/?linkid=73257&clcid=0xC0A).