Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1052
  • Last Modified:

seting adress of SQL server to localhost or 127.0.0.1

Hi Experts

I have 2 servers, one (A) for asp application, the other (B) for sql server
when i connect A to B i use a SQL connection string  suck like :

GetConnection = "DRIVER={SQL Server}; Server=IP ADDRESS; Database=xxxxx; UID=yyyyyyy; PWD=zzzzzz"

The problem is revealing the IP in the connection string makes my server unsecure

I would like to set a connection string like that

GetConnection = "DRIVER={SQL Server}; Server=127.0.0.1; Database=xxxxx; UID=yyyyyyy; PWD=zzzzzz"

Knowing that 127.0.0.1 is the local host addresse of server A, how can i make it point to SQL server B

Thx
0
humer2000
Asked:
humer2000
1 Solution
 
NightmanCTOCommented:
You can't reference ANOTHER server by the localhost IP address. You can, however, reference it by named instance (SQLSERVERNAME\INSTANCENAME)

Why don't you encrypt the connection string, and decrypt it before you use it?
If you are using ASP.NET, there are many ways to do this in the web.config
http://www.codersource.net/asp_net_security_connection_string.aspx
http://gridviewguy.com/ArticleDetails.aspx?articleID=143

If you are using classic ASP and VB (in a dll) there are literally hundreds of examples on the internet on how to do this.
If you are not using a dll, create one - storing the logic for encryption/decryption in the page would be a really bad idea.

Cheers
Night
0
 
humer2000Author Commented:
i  want to use this method because my old ISP was using it and it works.
This method allows connection to SQL server only by members of the network (Servers)
Preventing people from connecting to SQL directly from their PC
0
 
hbzCommented:

It will work for computers on the same network, of course.  The IP addresses were likely something like 192.168.1.10.  You say that you don't want to expose the IP of the server (but you are comfortable exposing the username and password).  There are a few solutions:

1) Set up a DSN on your application server
2) If the machine is not on the same network, then set up an entry in the HOSTS file to resolve an arbitrary computer name to any IP you choose
3) There may be other solutions with VPN?

- hbz
0
 
Guy Hengel [angelIII / a3]Billing EngineerCommented:
>i  want to use this method because my old ISP was using it and it works.
it will ONLY work if the web server and the sql server are on the same computer, otherwise it cannot work.
127.0.0.1 is a reserved ip address that means "myself" for the computer.
usually, an entry in the hosts files resolved localhost to that ip address, but that is not necessary.

as hbz noted, you need to use a IP address or Name of a server, where you can play with the hosts file
usuaally, the web server is in a DMZ, while the sql server is behind the DMZ (if you don't know what it is, ask a network admin: DMZ is a De-Militarized Zone, special term in networking)
and a firewall that explicitely opens the route between the web server and the sql server for only those ports that the sql server will need (usually 1, and the port is configurable).


0
 
humer2000Author Commented:
Hi hbz

i have follwoed solution 1,  Seting up a DSN on my application server
and it works fine
thx
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Tackle projects and never again get stuck behind a technical roadblock.
Join Now