Any time I've needed to connect to a remote MSSQL database I have set up named pipes. Usually I create an SQL user on the database and in most of my applications I give the user read-only permissions. I also set the authentication to SQL rather than Windows credentials so that it's a simple username/password connection to get connected without any Windows account problems.
See if this article helps: