I need some help i am working on a project and need to deploy my application which currently has a database running on SQL Server 2008 and my software is developed in VB.Net, The client needs to deploy the application to various regions and inter-connect the application. I found it tricky how can i inter-connect my application over the internet or rather place SQL Server online on the internet as the client is NOT interested with SQl Azure or any of those kind of services.

As per my application i know i can play with a few setting and get it connected online i have tested it and it worked! But how to make SQL Server online? Do i need to get a domain? and how to configure it?

I have researched online and didn't get much help so thought to put up this post in case someone would help me.


  • 1
    I'm not sure, if I understand the core of the problem. But I try to explain it how I understood it and my solution. You have a SQL Server you need to make accessible somewhere on the internet? And your application needs to access there?
    – Martin
    Commented Aug 24, 2012 at 13:15
  • 1
    You might consider hosting your SQL database at a service provider - there are a lot of security concerns you need to address and a provider is likely to have more experience.
    – StuartLC
    Commented Aug 24, 2012 at 13:20

5 Answers 5


As long as you have the TCP/IP protocol enabled for the instance, and you have created an exception on your firewall for the port that SQL Server uses (I hope you are using a firewall!) then connecting to it would be no different to how you would connect to it normally.

However, just remember that as soon as you make it publicly available you are opening yourself up to a world of hurt. Not everyone out there is as honest as you might like and people will try and break in - so be prepared.

An alternative solution is to use some type of connection layer such as VPN or Citrix or any other type of private connection topology. Only as a last resort should you make it publicly available - and if you do, make sure you lock it down.

I hope this helps you.


Basically for security reason Database server is internally connected to the application server. All the data insert or update request comes to it through port-80 enabled application server(IIS). Hope through diag. you are able to understand the arrangement of application and database server over the internet.

enter image description here


You really need to change the port from 1433 to something else. There are far too many port scanners that will look for 1433.

SQL Server Configuration Manager -> SQL Server Network Configuration -> TCP/IP -> IP Addresses and change from 1433 to something else.

You don't need an domain - just an outside IP address work but make sure that you have a firewall to block out all other traffic

  • 3
    Port scanners will scan every open port, so obscuring the port by changing it won't improve securty at all.
    – user1822
    Commented Nov 1, 2013 at 12:43

MSSQL uses port 1433 as far as I know. And your app can access to an IP adress with the port 1433 --> xxx.xxx.xxx.xxx:1433. You just need to make this port accessible through routers and firewalls - that's it!


Personally I would look at doing an api application rather than connecting a database directly to the internet. This makes the application more secure and does not directly expose your database server. I know this would require a new api application and rewriting of your current application, but this is the route I would take. It is better to put in more work now, than deal with a breach later.

At the very least look at setting up some sort of vpn to protect the traffic. This allows you to keep your current infrastructure and also at the same time creates a much more secure solution for you and your client.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.