Condividi tramite


Plan security hardening for SharePoint Server

SI APPLICA A:yes-img-132013 yes-img-162016 yes-img-192019 yes-img-seSubscription Edition no-img-sopSharePoint in Microsoft 365

Snapshot sicuri dei server

In un ambiente server farm, i singoli server hanno ruoli specifici. I consigli relativi alla sicurezza avanzata per tali server dipendono dal ruolo di ogni server. Questo articolo contiene snapshot sicuri per due categorie di ruoli dei server:

Gli snapshot sono divisi in categorie di configurazione comuni. Le caratteristiche definite per ogni categoria rappresentano lo stato di protezione avanzata ottimale per SharePoint Server. Questo articolo non include indicazioni sulla protezione avanzata per altri software nell'ambiente.

Oltre a proteggere i server per ruoli specifici, è importante proteggere la farm di SharePoint inserendo un firewall tra i server della farm e le richieste esterne. È possibile utilizzare le indicazioni in questo articolo per configurare un firewall.

Server SharePoint

Questa sezione identifica le caratteristiche di protezione avanzata per i server SharePoint. Alcune indicazioni riguardano applicazioni di servizio specifiche; in questi casi è necessario applicare le caratteristiche corrispondenti solo ai server che eseguono i servizi associati alle applicazioni di servizio specificate.

Categoria Caratteristica
Servizi elencati nello snap-in MMC Servizi
Attivare i servizi seguenti:
ASP.NET State Service (se si usa InfoPath Forms Services o Project Server 2016)
Visualizzare il servizio stato (se si usa InfoPath Forms Services)
Servizio Pubblicazione sul Web
Assicurarsi che questi servizi non siano disabilitati:
Attestazioni per il servizio token Windows
Amministrazione di SharePoint
Servizio timer di SharePoint
Servizio di traccia di SharePoint
SharePoint VSS Writer
Assicurarsi che questi servizi non siano disabilitati nei server che ospitano i ruoli corrispondenti:
Servizio di memorizzazione nella cache di AppFabric
Host codice utente di SharePoint
Controller host del servizio di ricerca di SharePoint
Servizio di ricerca di SharePoint Server
Porte e protocolli
TCP 80, TCP 443 (SSL)
Porte personalizzate per la ricerca per indicizzazione della ricerca, se configurata (ad esempio, la ricerca per indicizzazione di una condivisione file o un sito Web su una porta non predefinita)
Porte utilizzate dal componente di indicizzazione della ricerca - TCP 16500-16519 (solo all'interno della farm)
Porte necessarie per il Servizio di memorizzazione nella cache di AppFabric - TCP 22233-22236
Porte necessarie per le comunicazioni Windows Communication Foundation - TCP 808
Porte necessarie per la comunicazione tra server SharePoint e applicazioni di servizio (l'impostazione predefinita è HTTP):
Binding HTTP: TCP 32843
Binding HTTPS: TCP 32844
Binding net.tcp: TCP 32845 (solo se questa opzione è stata implementata da terzi per un'applicazione di servizio)
Se l'ambiente di rete del computer usa Windows Server 2012, Windows Server 2008, Windows Server 2008 R2, Windows 7 o Windows Vista insieme alle versioni di Windows precedenti a Windows Server 2012 e Windows Vista, è necessario abilitare la connettività su entrambi gli intervalli di porte seguenti:
Intervallo di porte di numero alto da 49152 a 65535
Intervallo di porte di numero basso da 1025 a 5000
Porte predefinite per le comunicazioni di SQL Server: TCP 1433, UDP 1434. Se queste porte sono bloccate nel computer SQL Server e i database vengono installati in un'istanza denominata, configurare un alias client di SQL Server per la connessione all'istanza denominata.
Servizio codice utente di Microsoft SharePoint Foundation (per soluzioni sandbox) - TCP 32846. Questa porta deve essere aperta per le connessioni in uscita in tutti i front-end e front-end con server cache distribuita. Questa porta deve essere aperta per le connessioni in ingresso in Front-end e Front-end con server cache distribuita in cui il servizio è attivato.
Verificare che le porte rimangano aperte per le applicazioni Web accessibili all'utente.
Bloccare l'accesso esterno alla porta utilizzata per il sito Amministrazione centrale.
SMTP per l'integrazione della posta elettronica: TCP 25 o una porta TCP personalizzata se la posta elettronica in uscita è stata configurata per l'uso di una porta non predefinita.
ICMP per la richiesta echo: ogni server cache distribuita deve avere regole del firewall in ingresso/in uscita per abilitare ICMP per la richiesta echo.
Registro di sistema
Nessuna indicazione aggiuntiva
Controllo e registrazione
Se i file di log vengono spostati, verificare che i percorsi corrispondenti vengano aggiornati. Aggiornare inoltre gli elenchi di controllo di accesso alle directory (ACL).
Web.config
Attenersi ai consigli seguenti per ogni file Web.config creato dopo l'esecuzione del programma di installazione:
Non consentire la compilazione o lo scripting di pagine di database tramite gli elementi PageParserPaths.
Assicurarsi <che SafeMode> CallStack="false" e AllowPageLevelTrace="false".
Verificare che i limiti delle web part relativi al numero massimo di controlli per area siano impostati su valori bassi.
Verificare che l'elenco SafeControls sia impostato sull'insieme minimo di controlli necessari per i siti.
Verificare che l'elenco SafeTypes del flusso di lavoro sia impostato sul livello minimo di SafeTypes necessari.
Assicurarsi che customErrors sia attivato (<customErrors mode="On"/>).
Considerare le impostazioni del proxy Web in base alle esigenze (<system.net>/<defaultProxy>).
Impostare il limite di Upload.aspx sulle dimensioni più elevate che si prevede ragionevolmente vengano caricate dagli utenti. Le prestazioni possono essere influenzate da caricamenti che superano i 100 MB.

Ruolo del server di database

Nota

Con l'aggiunta della funzionalità MinRole in SharePoint Server 2016, il concetto di ruoli è cambiato. Per informazioni sui ruoli, vedere Pianificazione della distribuzione di un server MinRole in SharePoint Server 2016.

La raccomandazione principale per SharePoint Server consiste nel proteggere le comunicazioni tra farm bloccando le porte predefinite usate per la comunicazione di SQL Server e stabilendo invece porte personalizzate per questa comunicazione. Per altre informazioni su come configurare le porte per le comunicazioni di SQL Server, vedere Blocco delle porte standard di SQL Server, più avanti in questo articolo.

Categoria Caratteristica
Porte
Bloccare la porta UDP 1434.
Valutare la possibilità di bloccare la porta TCP 1433.

Questo articolo non descrive come proteggere SQL Server. Per altre informazioni su come proteggere SQL Server, vedere Protezione di SQL Server (https://go.microsoft.com/fwlink/p/?LinkId=186828).

Indicazioni specifiche su porte, protocolli e servizi

Il resto di questo articolo descrive in modo più dettagliato i requisiti di protezione avanzata specifici per SharePoint Server.

Contenuto della sezione:

Blocco delle porte standard di SQL Server

Le porte specifiche usate per connettersi a SQL Server sono interessate dal fatto che i database siano installati in un'istanza predefinita di SQL Server o in un'istanza denominata di SQL Server. L'istanza predefinita di SQL Server è in ascolto delle richieste client su TCP 1433. Un'istanza denominata di SQL Server è in ascolto di un numero di porta assegnato in modo casuale. Il numero di porta per un'istanza denominata può essere inoltre riassegnato in caso di riavvio dell'istanza, a seconda della disponibilità del numero di porta assegnato in precedenza.

Per impostazione predefinita, i computer client che si connettono a SQL Server si connettono prima tramite TCP 1433. Se questa comunicazione non riesce, i computer client eseguono query sul servizio di risoluzione di SQL Server in ascolto su UDP 1434 per determinare la porta su cui è in ascolto l'istanza del database.

Il comportamento predefinito di comunicazione delle porte di SQL Server introduce diversi problemi che influiscono sulla protezione avanzata del server. In primo luogo, le porte usate da SQL Server sono porte ben pubblicizzate e il servizio di risoluzione di SQL Server è stato il bersaglio di attacchi di sovraccarico del buffer e attacchi denial-of-service, incluso il virus worm "Slammer". Anche se SQL Server viene aggiornato per attenuare i problemi di sicurezza nel servizio di risoluzione di SQL Server, le porte ben pubblicizzate rimangono una destinazione. In secondo luogo, se i database vengono installati in un'istanza denominata di SQL Server, la porta di comunicazione corrispondente viene assegnata in modo casuale e può cambiare. Questo comportamento potrebbe impedire la comunicazione tra server in un ambiente con protezione avanzata. La possibilità di controllare quali porte TCP debbano essere aperte o bloccate è essenziale per la protezione dell'ambiente.

Nota

È consigliabile usare le porte SQL standard, ma assicurarsi che il firewall sia configurato in modo da consentire la comunicazione solo con i server che devono accedere a SQL Server. Ai server che non richiedono l'accesso a SQL Server deve essere impedito di connettersi a SQL Server tramite la porta TCP 1433 e la porta UDP 1444.

Sono disponibili diversi metodi per il blocco delle porte. È possibile bloccare le porte utilizzando un firewall. Tuttavia, a meno che non si possa essere certi che non ci siano altre route nel segmento di rete e che non ci siano utenti malintenzionati che hanno accesso al segmento di rete, è consigliabile bloccare queste porte direttamente nel server che ospita SQL Server. A tale scopo, utilizzare Windows Firewall nel Pannello di controllo.

Configurazione delle istanze del database di SQL Server per l'ascolto su una porta non standard

In SQL Server è possibile riassegnare le porte utilizzate dall'istanza predefinita e da qualsiasi istanza denominata. In SQL Server è possibile riassegnare le porte usando Gestione configurazione SQL Server.

Configurazione di alias per client di SQL Server

In una server farm tutti i server Web front-end e i server applicazioni sono computer client di SQL Server. Se si blocca UDP 1434 nel computer SQL Server o si modifica la porta predefinita per l'istanza predefinita, è necessario configurare un alias client di SQL Server in tutti i server che si connettono al computer SQL Server. In questo scenario, l'alias client di SQL Server specifica la porta TCP su cui è in ascolto l'istanza denominata.

Per connettersi a un'istanza di SQL Server, installare i componenti client di SQL Server nel computer di destinazione e quindi configurare l'alias client di SQL Server usando Gestione configurazione SQL Server. Per installare i componenti client di SQL Server, eseguire il programma di installazione e selezionare solo i componenti client seguenti da installare:

  • Componenti di connettività

  • Strumenti di gestione (include Gestione configurazione SQL Server)

Per i passaggi di protezione avanzata specifici per bloccare le porte standard di SQL Server, vedere Configurare la sicurezza di SQL Server per SharePoint Server.

Comunicazione con le applicazioni di servizio

Per impostazione predefinita, la comunicazione tra server SharePoint e applicazioni di servizio all'interno di una farm avviene tramite HTTP con un'associazione a TCP 32843. Quando si pubblica un'applicazione di servizio, è possibile selezionare HTTP o HTTPS con i binding seguenti:

  • Binding HTTP: TCP 32843

  • Binding HTTPS: TCP 32844

Le terze parti che sviluppano applicazioni di servizio possono inoltre implementare una terza opzione:

  • Binding net.tcp: TCP 32845

È possibile modificare il binding tra protocollo e porta per ogni applicazione di servizio. Nella pagina Applicazioni di servizio in Amministrazione centrale selezionare l'applicazione di servizio e quindi selezionare Pubblica.

È anche possibile visualizzare e modificare le associazioni HTTP/HTTPS/net.tcp usando i cmdlet Di Microsoft PowerShell Get-SPServiceHostConfig e Set-SPServiceHostConfig .

La comunicazione tra le applicazioni di servizio e SQL Server avviene tramite le porte standard di SQL Server o le porte configurate per le comunicazioni di SQL Server.

Connessioni a server esterni

È possibile configurare diverse funzionalità di SharePoint Server per accedere ai dati che si trovano nei computer server esterni alla server farm. Se si configura l'accesso a dati che si trovano in server esterni, assicurarsi di consentire le comunicazioni tra i computer appropriati. Nella maggior parte dei casi, le porte, i protocolli e i servizi utilizzati dipendono dalla risorsa esterna. Ad esempio:

  • Per le connessioni a condivisioni file viene utilizzato il servizio Condivisione file e stampanti.

  • Per le connessioni a database di SQL Server esterni si utilizzano le porte predefinite o personalizzate per le comunicazioni con SQL Server.

  • Per le connessioni a database Oracle si utilizza in genere OLE DB.

  • Per le connessioni a servizi Web si utilizzano i protocolli HTTP e HTTPS.

Nella tabella seguente sono elencate le caratteristiche che è possibile configurare per l'accesso a dati memorizzati in computer server all'esterno della server farm.

Caratteristica Descrizione
Ricerca per indicizzazione del contenuto
È possibile configurare regole di ricerca per indicizzazione per eseguire la ricerca per indicizzazione di dati che risiedono in risorse esterne, inclusi siti Web, condivisioni file, cartelle pubbliche di Exchange e applicazioni per dati business. Quando si esegue la ricerca per indicizzazione di origini dati esterne, il ruolo ricerca per indicizzazione comunica direttamente con tali risorse esterne.
Per altre informazioni, vedere Gestire la ricerca per indicizzazione in SharePoint Server.
Connessioni al servizio di integrazione applicativa dei dati
I server Web e i server applicazioni comunicano direttamente con i computer configurati per le connessioni al servizio di integrazione applicativa dei dati.

Requisiti del servizio per l'integrazione della posta elettronica

Per l'integrazione della posta elettronica è necessario utilizzare i due servizi seguenti:

Servizio SMTP

L'integrazione della posta elettronica richiede l'utilizzo del servizio SMTP (Simple Mail Transfer Protocol) in almeno uno dei server Web front-end della server farm. Il servizio SMTP è necessario per la posta in arrivo. Per la posta in uscita, è possibile utilizzare il servizio SMTP oppure instradare la posta in uscita attraverso un server di posta elettronica dedicato nell'organizzazione, ad esempio un computer che esegue Microsoft Exchange Server.

Servizio di gestione directory di Microsoft SharePoint

SharePoint Server include un servizio interno, Microsoft SharePoint Directory Management Service, per la creazione di gruppi di distribuzione di posta elettronica. Durante la configurazione dell'integrazione della posta elettronica è possibile attivare la caratteristica Servizio di gestione directory, che consente agli utenti di creare liste di distribuzione. Quando gli utenti creano un gruppo di SharePoint e quindi selezionano l'opzione per la creazione di una lista di distribuzione, il Servizio di gestione directory di Microsoft SharePoint crea la lista di distribuzione di Active Directory corrispondente nell'ambiente Active Directory.

Negli ambienti con protezione avanzata è consigliabile limitare l'accesso al Servizio di gestione directory di Microsoft SharePoint proteggendo il file associato a tale servizio, ovvero SharePointEmailws.asmx. Ad esempio, è possibile consentire l'accesso a questo file solo all'account della server farm.

Inoltre, questo servizio richiede le autorizzazioni nell'ambiente Active Directory per creare oggetti della lista di distribuzione di Active Directory. È consigliabile configurare un'unità organizzativa separata in Active Directory per gli oggetti di SharePoint Server. Solo questa unità organizzativa deve consentire l'accesso in scrittura all'account usato dal servizio di gestione directory di Microsoft SharePoint.

Requisiti del servizio per lo stato della sessione

Sia Project Server 2016 che InfoPath Forms Services mantengono lo stato della sessione. Se si distribuiscono queste funzionalità o prodotti all'interno della server farm, non disabilitare il servizio stato ASP.NET. Inoltre, se si distribuisce InfoPath Forms Services, non disabilitare il servizio Visualizza stato.

Servizi prodotti SharePoint Server

Non disabilitare i servizi installati da SharePoint Server (elencati nello snapshot in precedenza).

Se l'ambiente non consente i servizi eseguiti come sistema locale, è possibile disabilitare il servizio Amministrazione SharePoint solo se si è a conoscenza delle conseguenze e può risolverli. Si tratta di un servizio Win32 eseguito come sistema locale.

Questo servizio viene utilizzato dal servizio Timer di SharePoint per eseguire azioni che necessitano di autorizzazioni amministrative nel server, ad esempio la creazione di siti Web Internet Information Services (IIS), la distribuzione di codice e l'arresto e l'avvio di servizi. Se si disabilita questo servizio, non è possibile completare le attività correlate alla distribuzione dal sito Amministrazione centrale. È necessario usare Microsoft PowerShell per eseguire il cmdlet Start-SPAdminJob o usare lo strumento da riga di comando Stsadm.exe per eseguire l'operazione execadmsvcjobs ) per completare distribuzioni a più server per SharePoint Server ed eseguire altre attività correlate alla distribuzione.

File Web.config

In .NET Framework e in particolare in ASP.NET vengono utilizzati file di configurazione in formato XML per la configurazione di applicazioni. I file di configurazione vengono utilizzati in .NET Framework per definire le opzioni di configurazione. Si tratta di file XML basati su testo. In genere, in un singolo sistema esistono più file di configurazione.

Le impostazioni di configurazione a livello di sistema per .NET Framework sono definite nel file Machine.config. Il file Machine.config si trova nella cartella %SystemRoot%\Microsoft.NET\Framework%VersionNumber%\CONFIG\. Le impostazioni predefinite contenute nel file Machine.config possono essere modificate in modo da influire sul comportamento delle applicazioni che usano .NET Framework nell'intero sistema.

Se si crea un file Web.config nella cartella radice dell'applicazione, è possibile modificare le impostazioni di configurazione di ASP.NET per una singola applicazione. Quando si esegue tale operazione, le impostazioni nel file Web.config sostituiscono le impostazioni incluse nel file Machine.config.

Quando si estende un'applicazione Web tramite Amministrazione centrale, SharePoint Server crea automaticamente un file di Web.config per l'applicazione Web.

Lo snapshot del server Web e del server applicazioni presentato in precedenza in questo articolo elenca le raccomandazioni per la configurazione dei file Web.config. Queste raccomandazioni devono essere applicate a ogni file Web.config creato, incluso il file Web.config per il sito Amministrazione centrale.

Per altre informazioni sui file di configurazione ASP.NET e sulla modifica di un file Web.config, vedere ASP.NET Configuration (https://go.microsoft.com/fwlink/p/?LinkID=73257).

Vedere anche

Concetti

Sicurezza per SharePoint Server