Link 엔드포인트 및 Satellite 이해

Link 엔드포인트 및 Satellite 이해

Link 엔드포인트 및 Satellite 이해

Satellite 위치와 위치의 외부에서 실행되는 서비스, 서버 또는 앱 간의 네트워크 트래픽을 제어하고 감사하기 위해 Satellite 제어 플레인에서 IBM Cloud Satellite® 엔드포인트를 여십시오.

Satellite Link 엔드포인트를 사용하면 Satellite 위치에서 실행되는 클라이언트가 위치 외부에서 실행되는 서비스, 서버 또는 앱에 연결할 수 있도록 하거나, IBM Cloud 사설 네트워크에 연결된 클라이언트가 사용자의 위치에서 실행되는 서비스, 서버 또는 앱에 연결할 수 있도록 할 수 있습니다.

연결을 설정하려면 엔드포인트에 대상 리소스의 완전한 도메인 이름(FQDN) 또는 IP 주소, 포트, 연결 프로토콜 및 모든 인증 메소드를 지정해야 합니다. 이 엔드포인트는 사용자 위치의 Satellite 제어 플레인의 Satellite Link 컴포넌트에 등록되어 있습니다. 엔터프라이즈 보안을 유지하고 규제 준수를 감사하는 데 도움을 주기 위해, Satellite Link에서는 엔드포인트에 대한 클라이언트 액세스를 제한하고 엔드포인트를 통해 이동하는 트래픽을 감사하는 기본 제어를 제공합니다.

아키텍처

유스 케이스에 따라 두 가지 유형(클라우드 엔드포인트 또는 위치 엔드포인트)의 엔드포인트를 작성할 수 있습니다.

클라우드 엔드포인트
대상 리소스가 Satellite 위치 외부에서 실행됩니다. 클라우드 엔드포인트는 사용자가 Satellite 위치의 클라이언트로부터 위치 외부에서 실행되는 서비스, 서버 또는 앱에 안전한게 연결할 수 있게 해 줍니다.
위치 엔드포인트
대상 리소스가 Satellite 위치에서 실행됩니다. 위치 엔드포인트는 Satellite 사설 네트워크에 연결된 클라이언트로부터 IBM Cloud 위치에서 실행되는 서버, 서비스 또는 앱에 안전하게 연결할 수 있게 해 줍니다.

터널 서버와 커넥터는 클라우드 서비스와 Satellite 위치 내 리소스 간에 안전한 TLS 연결을 통해 네트워크 트래픽을 중계합니다. 이 Link 터널은 TCP 프로토콜과 포트 443을 사용하는 인터넷을 통한 통신 경로의 역할을 수행하며 TLS를 통해 페이로드를 암호화합니다. IBM Cloud 의 터널 서버와 해당 위치의 제어 플레인 노드에 있는 커넥터 사이에 세 개의 터널이 생성됩니다. 이와 같이 중복하면 사용자 위치의 가용성 구역이 세 개가 지원되며 단일 구역 장애의 경우 통신을 보장할 수 있습니다. 그러나 Link 엔드포인트를 사용하는 클라이언트가 단일 연결을 볼 수 있도록 세 개의 터널이 함께 조정됩니다. Satellite Link 컴포넌트에 대한 자세한 정보는 Satellite 아키텍처를 참조하십시오.

클라우드 엔드포인트

기본적으로, Satellite 위치 내에서는 대상 리소스의 IP 주소를 라우팅할 수 없으므로 위치에 있는 소스 클라이언트는 위치 외부에서 실행되는 대상 리소스에 연결할 수 없습니다. Satellite Link가 Satellite 엔드포인트를 통해 Satellite 위치로부터 위치 외부에서 실행되는 서비스로의 통신을 가능하게 하는 방법을 보여주는 다음 아키텍처 다이어그램 및 단계를 검토하십시오.

Satellite 링크를 통한 네트워크 트래픽. 위치의 소스에서 링크를 통해 의 대상 리소스로 흐르는 네트워크 트래픽
IBM Cloud Satellite Satellite IBM Cloud

  1. 대상 리소스에 대한 엔드포인트를 생성하면, Satellite 제어 평면 노드에서 ‘ Satellite Link’ 커넥터를 위해 포트가 열립니다. Satellite 위치에 있는 소스로부터의 요청은 Satellite Link 커넥터 호스트 이름과 이 포트(예: nae4dce0eb35957baff66-edfc0a8ba65085c5081eced6816c5b9c-c000.us-east.satellite.appdomain.cloud:30819)에 대해 이뤄집니다. 이 Link 호스트 이름 및 포트는 대상 리소스의 도메인 및 포트에 맵핑됩니다.

  2. Satellite Link 커넥터는 보안이 적용된 TLS 연결을 통해 Satellite 관리 평면상의 Satellite Link 터널 서버로 요청을 전달합니다.

  3. Satellite Link 터널 서버는 요청을 대상의 IP 주소 및 포트로 해석하고 대상 리소스에 전달합니다.

위치 엔드포인트

기본적으로, IBM Cloud 위치에서 실행되는 대상 리소스의 IP 주소는 위치 외부에서 라우팅할 수 없으므로 Satellite 사설 네트워크에 연결된 소스 클라이언트는 이 대상 리소스에 연결할 수 없습니다. Satellite Link가 IBM Cloud 엔드포인트를 통해 Satellite 사설 네트워크에 연결된 서비스로부터 위치로의 통신을 가능하게 하는 방법을 보여주는 다음 아키텍처 다이어그램 및 단계를 검토하십시오.

Satellite 링크를 통한 네트워크 트래픽. 소스에서 링크를 통해 사용자의 위치에 있는 대상 리소스로 흐르는 네트워크 트래픽
IBM Cloud Satellite

  1. Satellite 위치에서 실행되는 리소스에 대한 엔드포인트를 작성하면 Satellite Link 터널에서 포트가 열리고 이 포트가 엔드포인트 구성에 추가됩니다. IBM Cloud 사설 네트워크에 연결된 소스로부터의 요청은 Satellite Link 터널 서버 호스트 이름과 이 포트(예: c-01.us-east.link.satellite.cloud.ibm.com:30819)에 대해 이뤄집니다. 이 Link 호스트 이름 및 포트는 대상 리소스의 도메인 및 포트에 맵핑됩니다.

  2. Satellite Link 터널 서버는 요청을 Satellite Link 커넥터 호스트 이름 및 엔드포인트 포트로 해석하고 안전한 TLS 연결을 통해 이 요청을 Satellite Link 커넥터에 전달합니다.

  3. Satellite Link 커넥터는 요청을 대상의 IP 주소 및 포트로 해석하고 대상 리소스에 전달합니다.

Satellite Link를 사용할 수 없게 되면 어떻게 됩니까?
사용자의 위치에 있는 워크로드는 IBM Cloud에 대한 위치의 연결이 사용 불가능해지는 경우에도 계속해서 독립적으로 실행됩니다. 그러나 IBM Cloud와 통신하기 위해 Link 엔드포인트를 사용하는 애플리케이션이 있는 경우, 이러한 앱과 IBM Cloud 간의 통신은 중단됩니다. 또한 호스트 추가나 Cloud Identity and Access Management를 통한 IBM 서비스에 대한 액세스 제어 요청과 같이 Satellite 위치에 대해 요청된 변경이 중단됩니다. 연결이 복구되면 로그와 이벤트가 IBM Cloud Logs 인스턴스로 전송됩니다. Satellite Link는 호스트의 로컬 네트워크의 기반 연결에 의존하여 Satellite 위치의 관리 서비스를 모니터하고 유지보수한다는 점을 유의하십시오.

외부 네트워크 요구사항 및 보안

Satellite 위치 인프라는 로컬 네트워크(온프레미스 호스트) 또는 다른 클라우드 제공자 네트워크의 일부이지만 IBM Cloud로부터의 안전한 액세스를 통해 원격으로 관리됩니다. Satellite Link 네트워크 보안에 대한 다음 자주 질문되는 내용(FAQ)을 검토하십시오. IBM Cloud Satellite의 모든 보안 옵션에 대한 자세한 정보는 Satellite의 보안 및 규제 준수를 참조하십시오.

인터넷 연결 포트로부터 방화벽을 통해 내 위치로 전송되는 고유 인바운드 트래픽을 허용해야 합니까?

아니오. Satellite Link는 표준 웹 보안 포트를 사용하여 위치 관리를 위해 사용자 위치에서 IBM Cloud로의 암호화된 통신을 시작합니다. Satellite는 IBM Cloud가 대상 주소를 예측 가능하게 해석할 수 있도록 각 위치에 대해 고유 공용 DNS 항목을 작성하고 TCP에 대해 32768 - 52768 범위의 포트를 지정합니다. Satellite 위치와 IBM Cloud 간의, Link 엔드포인트를 통한 통신 채널은 호스트에 대한 기존 아웃바운드 방화벽 정책을 통해 허용됩니다.

IBM이 Link 터널을 소유하는 경우 내 데이터에 액세스할 수 없는지 어떻게 유효성 검증할 수 있습니까? 내 조직의 보안 정책이 조직 네트워크에서 시작되는 터널을 허용하지 않습니다.

Satellite Linkk는 제로 트러스트 모델을 사용하므로 IBM Cloud에는 기본적으로 사용자의 워크로드에 대한 액세스 권한이 없습니다. IBM 사이트 신뢰성 엔지니어가 Satellite Link를 통해 시작하는 사용자 위치의 인프라 관리는 사용자의 워크로드 및 네트워크 연결(예: 워크로드가 사용하는 Link 엔드포인트)로부터 격리됩니다. IBM Cloud가 Satellite 위치에 대해 보유하는 액세스 권한의 유형에 대한 자세한 정보는 IBM 운영 액세스를 참조하십시오. 애플리케이션이 필요로 하는, 사용자의 위치에 대한 기타 연결에 대해서는 위치에 있는 각 대상 리소스에 대한 엔드포인트를 설정함으로써 Satellite Link를 사용하여 계층 4 통신을 설정할 수 있습니다. 엔드포인트를 완전히 사용 안함으로 설정하는 것을 포함하여 엔드포인트를 통한 모든 연결은 언제나 사용자가 제어할 수 있습니다.

내 데이터를 전송 중에 보호하려면 어떻게 합니까?

위치와 IBM Cloud 간의 Link 엔드포인트는 두 가지 레벨의 암호화(IBM에서 제공하는 위치의 커넥터에서 IBM Cloud로의 강력한 보안의 암호화와 소스 및 대상 리소스 간의 선택적 추가 암호화 계층)를 통해 보호됩니다.

Satellite Link를 통해 전송되는 모든 데이터는 TLS 1.3 표준을 사용하여 암호화됩니다. 이 레벨의 암호화는 IBM에서 관리합니다.

엔드포인트를 작성할 때는 선택적으로 클라이언트 소스와 대상 리소스 간의 엔드포인트 연결에 대해 데이터 암호화 프로토콜을 지정하여 또 다른 레벨의 암호화를 제공할 수 있습니다. 예를 들면 트래픽이 소스 측에서 암호화되지 않더라도 사용자가 인터넷을 통한 연결에 대해 TLS 암호화를 지정할 수 있습니다. 자체 서명 인증서를 제공하여 데이터 컨텐츠를 노출하지 않고 내부 보안과 운영 감사 가능성을 둘 다 보장할 수 있습니다. IBM에서는 암호화된 연결을 전송하기만 하며, 사용자의 리소스는 사용자가 지정하는 데이터 암호화 프로토콜을 사용하도록 구성되어야 합니다.

암호화 프로토콜

Satellite Link를 통한 모든 통신은 IBM에서 암호화됩니다. 엔드포인트를 작성할 때는 선택적으로 클라이언트 소스와 대상 리소스 간의 엔드포인트 연결에 대해 추가 데이터 암호화 프로토콜을 지정할 수 있습니다. 예를 들면 트래픽이 소스 측에서 암호화되지 않더라도, 사용자가 인터넷을 통한 연결에 대해 자신의 추가 TLS 암호화를 지정할 수 있습니다. 사용자의 리소스는 사용자가 지정하는 데이터 암호화 프로토콜을 사용하도록 구성되어야 한다는 점을 유의하십시오.

Satellite Link가 각 연결 프로토콜 유형을 처리하는 방법에 대해 다음 정보를 검토하십시오.

Satellite 콘솔을 사용하여 엔드포인트를 작성하는 경우에는 대상 프로토콜이 선택된 소스 프로토콜로부터 상속됩니다. 대상 프로토콜을 지정하려면 CLI를 사용하여 엔드포인트를 작성하고 ibmcloud sat endpoint create 명령에 --dest-protocol 옵션을 포함시키십시오.

TCP 및 TLS

대상 리소스에 특정 HTTP 또는 HTTPS 호스트 이름 헤더가 포함된 요청이 필요하지 않거나 호스트 이름 대신 해당 IP 주소에 대한 직접 요청을 수락할 수 있는 경우에는 TCP 또는 TLS 프로토콜을 사용하십시오. Satellite Link는 요청과 동일한 프로토콜을 사용하여 요청 패킷을 대상에 전달합니다.

HTTP 및 HTTPS

대상 리소스가 특정 HTTP 또는 HTTPS 호스트 이름 헤더를 청취하도록 구성된 경우에는 HTTP 또는 HTTPS 프로토콜을 사용하십시오. HTTP 및 HTTPS 헤더 재맵핑을 사용하면 Satellite Link가 여러 대상 리소스에 대한 요청을 TCP 포트 80(HTTP) 및 443(HTTPS)을 통해 올바르게 라우팅할 수 있습니다.

클라우드 엔드포인트
Satellite 위치로부터 위치의 외부에서 실행되는 대상 리소스로의 소스 요청은 linkconnector_hostname:port와 같은 HTTP 헤더를 포함합니다. 요청이 Satellite Link 커넥터에서 Satellite Link 터널 서버로 전송되면, Satellite Link 터널 서버는 요청의 HTTP 헤더를 dest_hostname:dest_port와 같은 대상 호스트 이름 및 포트로 변경합니다. 그 후 Satellite Link 터널 서버는 대상의 호스트 이름 및 포트를 사용하여 요청을 올바른 대상 리소스에 전달합니다.
위치 엔드포인트
Satellite 위치 외부에서 실행되는 클라이언트로부터 위치 내부의 대상 리소스로의 소스 요청은 linkserver_hostname:endpoint_port와 같은 HTTP 헤더를 포함합니다. Satellite Link 터널 서버는 요청의 HTTP 헤더를 dest_hostname:dest_port와 같은 대상 호스트 이름 및 포트로 변경하고 요청을 Satellite Link 커넥터에 전송합니다. 그 후 Satellite Link 커넥터는 대상의 호스트 이름 및 포트를 사용하여 요청을 올바른 대상 리소스에 전송합니다.

HTTP 터널

상호 인증을 위해 대상에 인증서를 전달하려는 경우와 같이 TLS 연결이 소스로부터 대상 리소스로 인터럽트되지 않고 전달되도록 하려는 경우에는 HTTP 터널 프로토콜을 사용하십시오.

클라이언트 소스는 대상이 Satellite 위치의 외부에서 실행되는지 또는 내부에서 실행되는지에 따라 Satellite Link 터널 서버 또는 커넥터 컴포넌트에 HTTP 연결 요청을 전송합니다. 그 후 Link 컴포넌트는 대상 리소스에 대한 연결을 수행합니다. 초기 연결이 설정되고 나면 Link 컴포넌트는 소스와 대상 간에 인터럽트 없이 TCP 연결을 프록시합니다.

Satellite Link 컴포넌트는 암호화된 트래픽의 TLS 종료에 관련되어 있지 않으므로 대상 리소스가 TLS 연결을 종료해야 합니다. 예를 들어, 대상 리소스가 상호 인증을 필요로 하는 경우 HTTP 터널 프로토콜은 클라이언트 소스가 필요한 인증 인증서를 대상으로 직접 전달할 수 있게 해 줍니다.

TLS 및 HTTPS의 서버 측 인증서 인증

TLS 또는 HTTPS 프로토콜을 선택하는 경우에는 선택적으로 대상의 인증서에 대한 서버 측 확인을 요구할 수 있습니다. 이 인증서는 대상의 호스트 이름에 대해 유효해야 하며 신뢰할 수 있는 인증 기관에 의해 서명되어야 합니다.

대상 리소스에 인증서가 있는 경우에는 엔드포인트를 작성할 때 인증서를 제공할 필요가 없습니다. 그러나 아직 개발 중인 대상 리소스에 대한 액세스를 테스트하는 중이며 신뢰할 수 있는 인증서가 없는 경우에는 확인을 위해 자체 서명 인증서를 업로드할 수 있습니다. 이 ssl.crt 파일은 사용자 리소스의 호스트 이름에 대한, Base64로 인코딩된 공용 인증서를 포함해야 하며 개인용 ssl.key 인증서 키를 포함하지 않아야 합니다. OpenSSL, 를 사용하여 테스트용 자체 서명 인증서를 생성하려면, 이 자체 서명 SSL 인증서 튜토리얼을 참조하십시오.

액세스 및 감사 제어

Satellite Link는 엔드포인트에 액세스할 수 있는 클라이언트를 제한하고 Link 엔드포인트에 대한 사용자 시작 이벤트를 감사하는 데 도움을 주는 기본 제어를 제공합니다.

소스 목록을 사용한 액세스 제한

기본적으로, 엔드포인트를 설정한 후에는 모든 클라이언트가 해당 엔드포인트를 통해 대상 리소스에 연결할 수 있습니다. 예를 들어, 위치 엔드포인트의 경우 IBM Cloud 사설 네트워크에 연결된 모든 클라이언트는 엔드포인트를 사용하여 Satellite 위치에서 실행되는 대상 리소스에 연결할 수 있습니다. 대상 리소스에 대한 액세스를 제한하려는 경우에는 신뢰할 수 있는 클라이언트만 엔드포인트에 액세스할 수 있도록 소스 IP 범위의 목록을 지정할 수 있습니다. 현재는 location 유형의 엔드포인트에 대해서만 소스 목록을 작성할 수 있으며 cloud 유형의 엔드포인트에 대해서는 소스 목록을 작성할 수 없다는 점을 유의하십시오.

사용자 시작 이벤트 감사

엔드포인트에 대한 소스 목록을 설정한 후에는, Link 엔드포인트에서 사용자가 시작한 이벤트를 모니터링하도록 감사 기능을 구성할 수 있습니다. ‘ IBM Cloud Satellite ’은 ‘ IBM Cloud Logs ’과 연동되어, 해당 위치에 있는 모든 Link 엔드포인트에 대한 감사 이벤트를 수집하여 ‘ IBM Cloud Logs ’ 인스턴스로 전송합니다. 감사를 시작하려면 엔드포인트 조치에 대한 감사 이벤트를 참조하십시오.

유스 케이스

Satellite Link 엔드포인트에 대한 다음 일반 유스 케이스 및 유스 케이스 예 목록을 검토하십시오.

Link 엔드포인트를 사용하여...

동일한 Satellite 위치 내의 리소스를 연결할 수 있습니까?
아니오. Link 엔드포인트는 동일한 위치에 있는 리소스 간에 작성할 수 없습니다. 대신 리소스는 서로 직접 액세스할 수 있습니다. 예를 들어, Satellite 의 Red Hat OpenShift 클러스터에서 실행되는 앱은 동일한 위치에 있는 데이터베이스에 액세스하기 위해 Satellite Link를 통해 통신할 필요가 없으며, 대신 해당 위치의 사설 네트워크를 통해 해당 데이터베이스에 직접 액세스할 수 있습니다.
Red Hat OpenShift 클러스터에서 실행되는 앱이나 서비스를 Satellite 에 노출할 수 있나요?
사용 가능한 옵션을 보려면 Satellite 클러스터에서 앱 노출을 참조하십시오.
IBM Cloud 공용 네트워크 내의 네트워크를 브릿지할 수 있습니까(예: VPC 스패닝)?
아니오. 대신 자신의 네트워크 설정에 대해 권장되는 브릿지 솔루션을 사용하십시오. 예를 들면, Virtual Private Network (VPN) for VPC 또는 IBM Cloud® Direct Link를 사용할 수 있습니다.
다른 퍼블릭 클라우드에 연결할 수 있습니까?
예. Satellite Link를 사용하여 다른 퍼블릭 클라우드에서 실행되는 리소스에 대한 cloud 엔드포인트를 작성할 수 있습니다.

예: Satellite 위치에서 다른 클라우드 제공자의 서비스로 연결

사용자는 자신의 Satellite 위치에 있는 호스트에서 실행되는 서버로부터 Amazon Web Services에서 실행되는 서비스에 데이터를 전송하려 합니다. 이 서비스는 Satellite 네트워크에서 종료되는 IBM Cloud Link 터널이 AWS 네트워크에 있는 서비스에 액세스할 수 있도록 공용 액세스가 가능해야 합니다.

이 연결을 설정하려면 먼저 cloud 엔드포인트를 작성합니다. 그리고 AWS에서 실행되는 서비스를 대상 리소스로 지정합니다. 그런 다음, 온프레미스 호스트의 서버가 해당 위치의 제어 평면 노드에 있는 Satellite Link 커넥터의 호스트 이름에 직접 연결합니다. Satellite Link는 이 요청을 AWS 에서 실행되는 서비스를 위해 생성한 클라우드 엔드포인트로 전달합니다.

예: IBM Cloud에서 Satellite 위치로의 제한된 액세스를 사용으로 설정하고 감사

데이터베이스에 특정 국가의 온프레미스 데이터 센터에서 실행해야 한다는 법적 요구사항이 있어 사용자가 Satellite 대신 IBM Cloud 위치에서 데이터베이스를 실행합니다. 그러나 사용자는 여전히 Satellite 사설 네트워크로부터 IBM Cloud 위치의 데이터베이스에 연결할 수 있어야 합니다.

이 연결을 설정하려면 먼저 location 엔드포인트를 작성합니다. 그리고 Satellite 위치에서 실행되는 데이터베이스를 대상 리소스로 지정합니다. 이렇게 하면 IBM Cloud 사설 네트워크의 클라이언트가 Satellite Link 터널 서버의 호스트 이름에 직접 연결합니다. Satellite Link는 이 요청을 사용자의 위치에 있는 데이터베이스에 대해 작성된 위치 엔드포인트로 전달합니다.

마지막으로, 엔터프라이즈 보안을 유지하고 규제 준수를 감사하기 위해 공용 클라우드에서 신뢰할 수 있는 클라이언트만 엔드포인트를 통해 위치에 있는 데이터베이스에 액세스할 수 있도록 소스 IP 범위의 목록을 지정합니다. 그 후에는 IBM Cloud Logs 위치에 있는 모든 엔드포인트에 대해 감사 로그를 자동으로 수집할 수 있도록 Satellite 인스턴스를 설정합니다.