We’re on our insane crunch period trying to push out the latest release of our case management software for the Kentucky Department of Public Advocacy. We finally got a build together after many long hours, late nights, and weekend toil. A very frustrating and work-intensive time. So, today we finally start deploying our software to the client’s SQL Server environment, and all is going very well. The software is prepped, the environment is set up, files are transfered, and the databases are installed. We are moments away from showing the customer the software they’ve been patiently waiting on for many months.
Then, as is typical in software development, the last minute blockade appears. In this case, it was TCP port 1433. The SQL Server instance, despite being rigged to listen to TCP port 1433, would not listen to TCP port 1433. Was it the firewall? No. Some kind of network configuration error? No. SQL Server’s error logs show nothing. I keep looking, and looking, and still nothing. Valuable time drips away. The customer’s still waiting. I conference in with their network administrators, who are as baffled as me about what could possibly be causing this problem. I read several troubleshooting guides. Nothing. Then, I decide to look in the Event Viewer, and I find this gem:
You are running a version of Microsoft SQL Server 2000 or Microsoft SQL Server 2000 Desktop Engine (also called MSDE) that has known security vulnerabilities when used in conjunction with the Microsoft Windows Server 2003 family. To reduce your computer’s vulnerability to certain virus attacks, the TCP/IP and UDP network ports of Microsoft SQL Server 2000, MSDE, or both have been disabled. To enable these ports, you must install a patch, or the most recent service pack for Microsoft SQL Server 2000 or MSDE from http://www.microsoft.com/sql/downloads/default.asp
Our little software development army was pressed up against tiny, insignificant port 1433, simply because Microsoft had enough foresight to realize that maybe they shouldn’t allow their own virus-vulnerable product to sit naked on port 1433 inviting malware to feast on the server. Which, of course, made it useless to our app, since we need to connect to that port.