원격 서버Remote Servers

SQL ServerSQL Server 에서는 이전 버전과의 호환성을 위해서만 원격 서버를 지원합니다.Remote servers are supported in SQL ServerSQL Server for backward compatibility only. 새 응용 프로그램은 그 대신 연결된 서버를 사용해야 합니다.New applications should use linked servers instead. 자세한 내용은 연결된 서버(데이터베이스 엔진)를 참조하세요.For more information, see Linked Servers (Database Engine).

원격 서버를 구성하면 별도의 연결을 설정하지 않고 SQL ServerSQL Server 의 인스턴스에 연결된 클라이언트가 SQL ServerSQL Server 의 다른 인스턴스에서 저장 프로시저를 실행할 수 있습니다.A remote server configuration allows for a client connected to one instance of SQL ServerSQL Server to execute a stored procedure on another instance of SQL ServerSQL Server without establishing a separate connection. 대신 클라이언트가 연결된 서버는 클라이언트 요청을 수락하고 해당 클라이언트를 대신해서 원격 서버에 요청을 전송합니다.Instead, the server to which the client is connected accepts the client request and sends the request to the remote server on behalf of the client. 원격 서버는 요청을 처리하고 원래 서버에 결과를 보냅니다.The remote server processes the request and returns any results to the original server. 원래 서버는 클라이언트에 다시 결과를 전송합니다.This server in turn passes those results to the client. 원격 서버 구성을 설정할 때는 보안을 설정하는 방법도 고려해야 합니다.When you set up a remote server configuration, you should also consider how to establish security.

다른 서버에서 저장 프로시저를 실행하기 위해 서버 구성을 설정할 때 기존의 원격 서버 구성이 없는 경우 원격 서버 대신에 연결된 서버를 사용합니다.If you want to set up a server configuration to execute stored procedures on another server and do not have existing remote server configurations, use linked servers instead of remote servers. 저장 프로시저와 분산 쿼리는 둘 다 연결된 서버에 대해 허용되지만 원격 서버에 대해서는 저장 프로시저만이 허용됩니다.Both stored procedures and distributed queries are allowed against linked servers; however, only stored procedures are allowed against remote servers.

원격 서버 정보Remote Server Details

원격 서버는 쌍으로 설정합니다.Remote servers are set up in pairs. 한 쌍의 원격 서버를 설정하려면 양쪽 서버가 서로를 원격 서버로 인식하도록 구성해야 합니다.To set up a pair of remote servers, configure both servers to recognize each other as remote servers.

대개 원격 서버에 대한 구성 옵션은 설정할 필요가 없습니다.Most of the time, you should not have to set configuration options for remote servers. SQL ServerSQL Server Set은 로컬 및 원격 컴퓨터 모두에 기본값을 설정하여 원격 서버 연결을 허용합니다. Set sets the defaults on both the local and remote computers to allow for remote server connections.

원격 서버에 액세스하려면 remote access 구성 옵션을 로컬 컴퓨터와 원격 컴퓨터에서 1로 설정해야 합니다.For remote server access to work, the remote access configuration option must be set to 1 on both the local and remote computers. 이것은 기본 설정입니다. 원격 액세스 는 원격 서버로부터의 로그인을 제어합니다.(This is the default setting.) remote access controls logins from remote servers. Transact-SQLTransact-SQL sp_configure 저장 프로시저 또는 SQL Server Management StudioSQL Server Management Studio를 사용하여 이 구성 옵션을 다시 설정할 수 있습니다.You can reset this configuration option by using either the Transact-SQLTransact-SQL sp_configure stored procedure or SQL Server Management StudioSQL Server Management Studio. SQL Server Management StudioSQL Server Management Studio에서 옵션을 설정하려면 서버 속성 연결 페이지에서 이 서버에 대한 원격 연결 허용을 사용합니다.To set the option in SQL Server Management StudioSQL Server Management Studio, on the Server Properties Connections page, use Allow remote connections to this server. 서버 속성 연결 페이지에 접근하려면 개체 탐색기에서 서버 이름을 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다.To reach the Server Properties Connections page, in Object Explorer, right-click the server name, and then click Properties. 서버 속성 페이지에서 연결 페이지를 클릭합니다.On the Server Properties page, click the Connections page.

로컬 서버에서 원격 서버 구성을 해제하여 쌍을 이루는 원격 서버의 사용자가 해당 로컬 서버에 액세스하는 것을 차단할 수 있습니다.From the local server, you can disable a remote server configuration to prevent access to that local server by users on the remote server with which it is paired.

원격 서버의 보안Security for Remote Servers

원격 서버에 대한 RPC(원격 프로시저 호출)를 설정하려면 해당 원격 서버 및 SQL ServerSQL Server인스턴스가 실행되는 로컬 서버에서 로그인 매핑을 설정해야 합니다.To enable remote procedure calls (RPC) against a remote server, you must set up login mappings on the remote server and possibly on the local server that is running an instance of SQL ServerSQL Server. SQL ServerSQL Server에서 RPC는 기본적으로 해제되어 있습니다.RPC is disabled by default in SQL ServerSQL Server. 이 구성은 공격 받을 수 있는 노출 영역을 줄여 서버의 보안을 향상시킵니다.This configuration enhances the security of your server by reducing its attackable surface area. RPC를 사용하기 전에 이 기능을 설정해야 합니다.Before using RPC you must enable this feature. 자세한 내용은 sp_configure (Transact-SQL)를 참조하세요.For more information see sp_configure (Transact-SQL).

원격 서버 설정Setting Up the Remote Server

원격 서버에서 원격 로그인 매핑을 설정해야 합니다.Remote login mappings must be set up on the remote server. 원격 서버에서는 이 매핑을 사용하여 지정된 서버와의 RPC 연결에 대한 수신 로그인을 로컬 로그인으로 매핑합니다.Using these mappings, the remote server maps the incoming login for an RPC connection from a specified server to a local login. 원격 로그인 매핑은 원격 서버에서 sp_addremotelogin 저장 프로시저를 사용하여 설정할 수 있습니다.Remote login mappings can be set up by using the sp_addremotelogin stored procedure on the remote server.

참고

에서는 sp_remoteoption trusted SQL ServerSQL Server옵션이 지원되지 않습니다.The trusted option of sp_remoteoption is not supported in SQL ServerSQL Server.

로컬 서버 설정Setting Up the Local Server

SQL ServerSQL Server 인증 로컬 로그인에 대해서는 로컬 서버에 로그인 매핑을 설정할 필요가 없습니다.For SQL ServerSQL Server authenticated local logins, you do not have to set up a login mapping on the local server. SQL ServerSQL Server 는 원격 서버 연결에 로컬 로그인과 암호를 사용합니다. uses the local login and password to connect to the remote server. Windows 인증 로그인에 대해서는 SQL ServerSQL Server 의 인스턴스가 원격 서버에 RPC 연결을 할 때 사용할 로그인과 암호를 정의하는 로컬 로그인 매핑을 로컬 서버에 설정합니다.For Windows authenticated logins, set up a local login mapping on a local server that defines what login and password are used by an instance of SQL ServerSQL Server when it makes an RPC connection to a remote server.

Windows 인증에서 만든 로그인의 경우 사용자는 sp_addlinkedservlogin 저장 프로시저를 사용하여 로그인 이름 및 암호에 대한 매핑을 만들어야 합니다.For logins created by Windows Authentication, you must create a mapping to a login name and password by using the sp_addlinkedservlogin stored procedure. 이 로그인 이름과 암호는 원격 서버에서 예상하는 sp_addremotelogin이 만든 수신 로그인 및 암호와 일치해야 합니다.This login name and password must match the incoming login and password expected by the remote server, as created by sp_addremotelogin.

참고

가능하면 Windows 인증을 사용하세요.When possible, use Windows Authentication.

원격 서버 보안 예Remote Server Security Example

SQL ServerSQL Server serverSend serverReceive 와 같은설치를 고려합니다.Consider these SQL ServerSQL Server installations: serverSend and serverReceive. serverReceiveserverSend로부터의 Sales_Mary라는 수신 로그인을 SQL ServerSQL Server serverReceive Alice 라는인증 로그인에 매핑하도록 구성되어 있습니다.serverReceive is configured to map an incoming login from serverSend, called Sales_Mary, to a SQL ServerSQL Server authenticated login in serverReceive, called Alice. serverSend로부터의 Joe라는 또 다른 수신 로그인은 SQL ServerSQL Server serverReceive ** Joe **라는인증 로그인에 매핑됩니다.Another incoming login from serverSend, called Joe, is mapped to a SQL ServerSQL Server authenticated login in serverReceive, called Joe.

다음 Transact-SQL 코드 예제는 serverSend 에 대해 RPC를 수행하도록 serverReceive를 구성합니다.The following Transact-SQL code example configures serverSend to perform RPCs against serverReceive.

--Create remote server entry for RPCs   
--from serverSend in serverReceive.  
EXEC sp_addserver 'serverSend';  
GO  

--Create remote login mapping for login 'Sales_Mary' from serverSend  
--to Alice.  
EXEC sp_addremotelogin 'serverSend', 'Alice', 'Sales_Mary';  
GO  
--Create remote login mapping for login Joe from serverReceive   
--to same login.  
--Assumes same password for Joe in both servers.  
EXEC sp_addremotelogin 'serverSend', 'Joe', 'Joe';  
GO  

serverSend에서 Windows 인증 로그인 Sales\Mary 에 대해 로그인 Sales_Mary으로의 로컬 로그인 매핑이 만들어집니다.On serverSend, a local login mapping is created for a Windows authenticated login Sales\Mary to a login Sales_Mary. 동일한 로그인 이름과 암호를 사용하는 것이 기본값이고 JoeserverReceive 에 대한 매핑을 가지고 있으므로 Joe에게는 로컬 매핑이 필요하지 않습니다.No local mapping is required for Joe, because the default is to use the same login name and password, and serverReceive has a mapping for Joe.

--Create a remote server entry for RPCs from serverReceive.  
EXEC sp_addserver 'serverReceive';  
GO  
--Create a local login mapping for the Windows authenticated login.  
--Sales\Mary to Sales_Mary. The password should match the  
--password for the login Sales_Mary in serverReceive.  
EXEC sp_addlinkedsrvlogin 'serverReceive', false, 'Sales\Mary',  
   'Sales_Mary', '430[fj%dk';  
GO  

로컬 서버 또는 원격 서버 속성 보기Viewing Local or Remote Server Properties

xp_msver 확장 저장 프로시저를 사용하여 로컬 서버 또는 원격 서버의 특성을 검토할 수 있습니다.You can use the xp_msver extended stored procedure to review server attributes for local or remote servers. 이러한 특성에는 SQL ServerSQL Server버전 번호, 컴퓨터의 프로세서 유형과 개수 및 운영 체제 버전이 포함됩니다.These attributes include the version number of SQL ServerSQL Server, the type and number of processors in the computer, and the version of the operating system. 로컬 서버에서는 원격 서버의 데이터베이스, 파일, 로그인 및 도구를 볼 수 있습니다.From the local server, you can view databases, files, logins, and tools for a remote server. 자세한 내용은 xp_msver(Transact-SQL)을 참조하세요.For more information, see xp_msver (Transact-SQL).

연결된 서버(데이터베이스 엔진)Linked Servers (Database Engine)

sp_configure (Transact-SQL)sp_configure (Transact-SQL)

remote access 서버 구성 옵션 구성Configure the remote access Server Configuration Option

RECONFIGURE(Transact-SQL)RECONFIGURE (Transact-SQL)