Procedura: Configurazione di Windows Firewall per l'accesso al Motore di database

I sistemi firewall contribuiscono a impedire l'accesso non autorizzato alle risorse del computer. Per accedere a un'istanza del Motore di database di SQL Server attraverso un firewall, è necessario configurare il firewall nel computer in cui viene eseguito SQL Server in modo che consenta l'accesso.

Per ulteriori informazioni sulle impostazioni predefinite di Windows Firewall e per una descrizione delle porte TCP che interessano il Motore di database, Analysis Services, Reporting Services e Integration Services, vedere Configurazione di Windows Firewall per consentire l'accesso a SQL Server e Connessione a SQL Server tramite Internet. Sono disponibili numerosi sistemi firewall diversi. Per informazioni specifiche per il sistema in uso, vedere la documentazione del firewall.

Nota importanteImportante

L'apertura di porte nel firewall potrebbe esporre il server ad attacchi dannosi. Prima di aprire una porta, assicurarsi di comprenderne le implicazioni per un sistema firewall. Per ulteriori informazioni, vedere Considerazioni sulla sicurezza per un'installazione di SQL Server.

Di seguito sono elencati i passaggi principali necessari per consentire l'accesso:

  1. Configurare Motore di database per l'utilizzo di una porta TCP/IP specifica. Nell'istanza predefinita del Motore di database viene utilizzata la porta 1433, ma questa impostazione può essere modificata. La porta utilizzata dal Motore di database è elencata nel registro errori di SQL Server. Nelle istanze di SQL Server Express, SQL Server Compact 3.5 SP2 e nelle istanze denominate del Motore di database vengono utilizzate porte dinamiche. Per configurare queste istanze per l'utilizzo di una porta specifica, vedere Procedura: Configurazione di un server per l'attesa su una porta TCP specifica (Gestione configurazione SQL Server).

  2. Configurare il firewall in modo che consenta l'accesso a tale porta per utenti o computer autorizzati.

Nota

Il servizio SQL Server Browser consente agli utenti di connettersi a istanze di Motore di database che non sono in attesa sulla porta 1433, senza conoscere il numero di porta. Per utilizzare SQL Server Browser, è necessario aprire la porta UDP 1434. Per garantire la massima sicurezza per l'ambiente, non attivare il servizio SQL Server Browser e configurare i client affinché eseguano la connessione utilizzando il numero della porta.

Nota

In Microsoft Windows XP Service Pack 2 Windows Firewall è abilitato per impostazione predefinita e, di conseguenza, la porta 1433 è chiusa per impedire connessioni Internet a un'istanza predefinita di SQL Server nel computer. Le connessioni all'istanza predefinita tramite TCP/IP non sono possibili se la porta 1433 non viene riaperta. Nelle procedure seguenti vengono illustrati i passaggi di base che consentono di configurare il firewall di Windows XP. Per ulteriori informazioni, vedere la documentazione di Windows.

In alternativa alla configurazione di SQL Server per attivare l'attesa su una porta fissa e aprire la porta, è possibile elencare l'eseguibile di SQL Server (Sqlservr.exe) come un'eccezione ai programmi bloccati. Utilizzare questo metodo quando si desidera continuare a utilizzare le porte dinamiche. In questo modo è possibile accedere a una sola istanza di SQL Server.

Windows Vista e Windows Server 2008 e versioni successive

Le procedure seguenti consentono di configurare Windows Firewall tramite lo snap-in di Microsoft Management Console (MMC) Windows Firewall con sicurezza avanzata. Questo snap-in è disponibile a partire da Windows Vista e Windows Server 2003. Windows Firewall con sicurezza avanzata consente di configurare solo il profilo corrente. Per ulteriori informazioni su Windows Firewall con sicurezza avanzata, vedere Configurazione di Windows Firewall per consentire l'accesso a SQL Server

Per aprire una porta in Windows Firewall per l'accesso TCP

  1. Dal menu Start scegliere Esegui, digitare WF.msc, quindi fare clic su OK.

  2. Nel riquadro sinistro di Windows Firewall con sicurezza avanzata fare clic con il pulsante destro del mouse su Regole in entrata, quindi scegliere Nuova regola nel riquadro azioni.

  3. Nella finestra di dialogo Tipo di regola selezionare Porta, quindi fare clic su Avanti.

  4. Nella finestra di dialogo Protocollo e porte selezionare TCP. Selezionare Porte locali specifiche, quindi digitare il numero di porta dell'istanza del Motore di database, ad esempio 1433 per l'istanza predefinita. Fare clic su Avanti.

  5. Nella finestra di dialogo Azione selezionare Consenti la connessione, quindi fare clic su Avanti.

  6. Nella finestra di dialogo Profilo selezionare tutti i profili che descrivono l'ambiente di connessione del computer quando si desidera eseguire la connessione al Motore di database, quindi fare clic su Avanti.

  7. Nella finestra di dialogo Nome digitare un nome e una descrizione per questa regola, quindi fare clic su Fine.

Per aprire l'accesso a SQL Server quando si utilizzano porte dinamiche

  1. Dal menu Start scegliere Esegui, digitare WF.msc, quindi fare clic su OK.

  2. Nel riquadro sinistro di Windows Firewall con sicurezza avanzata fare clic con il pulsante destro del mouse su Regole in entrata, quindi scegliere Nuova regola nel riquadro azioni.

  3. Nella finestra di dialogo Tipo di regola selezionare Programma, quindi fare clic su Avanti.

  4. Nella finestra di dialogo Programma selezionare Percorso programma. Fare clic su Sfoglia, spostarsi sull'istanza di SQL Server a cui si desidera accedere attraverso il firewall, quindi fare clic su Apri. Per impostazione predefinita SQL Server si trova in C:\Programmi\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn\Sqlservr.exe. Fare clic su Avanti.

  5. Nella finestra di dialogo Azione selezionare Consenti la connessione, quindi fare clic su Avanti.

  6. Nella finestra di dialogo Profilo selezionare tutti i profili che descrivono l'ambiente di connessione del computer quando si desidera eseguire la connessione al Motore di database, quindi fare clic su Avanti.

  7. Nella finestra di dialogo Nome digitare un nome e una descrizione per questa regola, quindi fare clic su Fine.

Windows XP e Windows Server 2003

Le procedure riportate di seguito consentono di configurare Windows Firewall tramite l'elemento Windows Firewall nel Pannello di controllo di Windows XP e Windows Server 2003 tramite cui è possibile configurare solo il firewall per il profilo del percorso di rete corrente. Inoltre, è possibile configurare Windows Firewall tramite lo snap-in di Microsoft Management Console (MMC) Windows Firewall con sicurezza avanzata e lo strumento della riga di comando netsh. Per ulteriori informazioni su questi strumenti, vedere Configurazione di Windows Firewall per consentire l'accesso a SQL Server.

Per aprire una porta in Windows Firewall per l'accesso TCP

  1. Dal menu Start scegliere Esegui, digitare firewall.cpl, quindi fare clic su OK.

  2. Nella finestra di dialogo Windows Firewall fare clic sulla scheda Eccezioni e quindi su Aggiungi porta.

  3. Nella casella di testo Nome della finestra di dialogo Aggiungi porta digitare SQL Server<instance name>.

  4. Nella casella di testo Numero di porta digitare il numero di porta dell'istanza di Motore di database, ad esempio 1433 per l'istanza predefinita.

  5. Verificare che l'opzione TCP sia selezionata e quindi fare clic su OK.

  6. Per aprire la porta ed esporre il servizio SQL Server Browser, fare clic su Aggiungi porta, digitare SQL Server Browser nella casella di testo Nome, digitare 1434 nella casella di testo Numero di porta, selezionare UDP e quindi fare clic su OK.

    Nota

    Per fare in modo che i named pipe non vengano bloccati dal firewall, è inoltre necessario fare sì che Condivisione di file e stampanti non venga bloccato dal firewall.

  7. Chiudere le finestre di dialogo Windows Firewall e Proprietà.

Nota

Per visualizzare opzioni aggiuntive, ad esempio per consentire l'accesso a programmi specifici e limitare l'accesso a determinati indirizzi IP o subnet di rete, fare clic su Aggiungi programma nella finestra di dialogo Windows Firewall. Per ulteriori informazioni, vedere la documentazione di Windows.

Per accedere a un programma attraverso Windows Firewall

  1. Nella finestra di dialogo Windows Firewall fare clic sulla scheda Eccezioni e quindi su Aggiungi programma.

  2. Fare clic su Sfoglia, spostarsi sull'istanza di SQL Server a cui si desidera accedere attraverso il firewall e quindi fare clic su Apri. Per impostazione predefinita SQL Server si trova in C:\Programmi\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\Binn\Sqlservr.exe.

  3. Per chiudere il programma Windows Firewall, fare clic su OK due volte.

Per una breve esercitazione sulla configurazione di una porta statica, sull'apertura del firewall e sulla connessione a Motore di database tramite SQL Server Management Studio, vedere Esercitazione: Introduzione al motore di database.