How to expose SQL 2008 database to the world through the Internet?

My web hosting provider allows me to setup an SQL Server 2008 database from their web pages and then provides with an address of the form "tcp:domain.bla.net" that I can use to connect from anywhere. I can even use SS Management Studio!

My question is, how can I expose my own database in that way from my own server? (assuming I already have a fixed IP).


Solution 1:

Open port 1443 on your firewall and it should be accessible by IP.

Solution 2:

Just a word of caution here: port 1433 (the default SQL Server port) is subject to frequent port scans and brute sa password attacks on the internet. Your instance will be discovered in a matter of hours and will be subject to several automated attacks per day (I'm not kidding). I would highly recommend:

  1. Use a non default port
  2. Harden your SQL Server instance. Make sure you have a very strong sa password, expire and rotate your password, disable non-used logins, use a non sysadmin login when connecting from internet, enforce the SSL encryption requirement on the server side.