• subscribe
March 22, 2007 12:00 AM

10 Steps to SQL Server 2005 Security

Layer on the protective measures before, during, and after SQL Server installation
SQL Server Pro
InstantDoc ID #95173

Microsoft's SQL Server 2005 is an enterprise-class database server, suitable for the toughest workloads and boasting some impressive security features. Yet enterprises might be placing themselves at risk if they simply deploy SQL Server and neglect to take advantage of the security features.

In general, Microsoft recommends a defense-in-depth approach to securing infrastructure components such as database servers. This approach focuses on perimeter, network, host, application, data, and physical defenses. Here are 10 steps to securing SQL Server 2005 that you should take before, during, and after installation, based on the defense-in-depth approach.

1. Preparing for SQL Server 2005 Installation: Remove Unnecessary Services
Properly preparing for an installation of SQL Server 2005 is one of the most important ways you can protect your databases and the data contained within them.

The first step is to carefully prepare the server on which you'll install SQL Server 2005. In particular, the server should be dedicated to running SQL Server 2005. It should not also be used to run other services such as Microsoft IIS, provide general Web-server functionality, serve applications, or be configured as a domain controller (DC). It's important that a server dedicated to SQL Server 2005 not run other services because if those other services become compromised, perhaps due to poor configuration, an attacker might be able to gain system-level access to the host OS and then to SQL Server 2005 and the databases it manages.

All unnecessary services and applications should be removed. For example, if you're repurposing an existing server that was a DHCP or DNS server, you shouldn't just disable those services, you should remove them by using the Optional Components Wizard that's part of Add/Remove Programs in Control Panel. Likewise, remove all third-party applications that aren't required, such as WinZip and Microsoft Office applications. You should also disable file and printer sharing. If you don't need them, I recommend that you also disable the administrative shares (e.g., C$, D$, ADMIN$).

Note that depending on what features of SQL Server 2005 you wish to install (e.g., Reporting Services), you might need to install IIS and .NET Framework 2.0. If this is the case, you should limit the use of these additional services and features to SQL Server 2005 only, and you should configure them as securely as possible by using the appropriate best practices for each. Security best practices and guidance for Microsoft technologies can be found at http://www.microsoft.com/technet/security/guidance/default.mspx. You might also want to check http://msdn.microsoft.com/security.

2. Apply All Service Packs and Security Updates to the Host OS
The second step in preparing for installation of SQL Server 2005 also concentrates on the host and is to ensure that all the latest service packs and software updates are applied to the OS on the server on which you'll install SQL Server 2005. This step is crucial to securing your SQL Server 2005 installation. Just as attackers can gain access to your system through services and applications running on it, they can get access to the host through vulnerabilities in the OS itself.

Visit http://update.microsoft.com to ensure that you have the latest service packs and updates, or use the Windows Update or Microsoft Update tool on the Start menu if you don't have an enterprise software update distribution mechanism such as Microsoft Systems Management Server (SMS).

3. Limit Access to the Host
The third step is a combination of focus on the host, perimeter, and physical environment and is to restrict access to the server. An attacker has several ways to gain access to a server, including interactively, over the network, and physically when the OS isn't running.

You limit interactive access to the host by ensuring that the local SAM database contains no unnecessary accounts and that only permitted domain accounts can be used to log on to the system. You can examine and remove accounts in the local SAM database by using the Microsoft Management Console (MMC) Computer Management snap-in (compmgmt.msc).

To prevent domain accounts from logging on interactively to the server and accessing a desktop, you can use Group Policy or the MMC Local Security Settings snap-in (secpol.msc) to set User Rights Assignment. If using Group Policy, expand Computer Configuration, Windows Settings, Security Settings, Local Policies, and User Rights Assignment. If using the Local Security Settings snap-in, expand Local Policies, User Rights Assignment.

Use the Allow log on locally and Deny logon locally settings to configure who is permitted to log on at the console. If you permit access to your server through Terminal Services, even if only for remote administration, you should also use the Allow log on through Terminal Services and Deny log on through Terminal Services settings to configure who can log on interactively.



ARTICLE TOOLS

Comments
    There are no comments to display. Be the first one!
You must log on before posting a comment.

Are you a new visitor? Register Here