기본 Site-to-Site VPN(S2S VPN) 구성

SummerToday·2024년 9월 8일
1

AWS 아키텍처 관련

목록 보기
2/7
post-thumbnail
post-custom-banner

Site-to-Site VPN?

출처: https://yoo11052.tistory.com/171

두 개 이상의 네트워크(예: 본사와 지사, 또는 온프레미스 네트워크와 클라우드 네트워크)를 인터넷을 통해 안전하게 연결하는 VPN(Virtual Private Network) 기술이다.

  • 네트워크 간 연결
    Site-to-Site VPN은 물리적으로 떨어져 있는 두 개 이상의 네트워크를 안전하게 연결한다. 예를 들어, AWS VPC와 온프레미스의 네트워크를 연결하여 내부 네트워크처럼 사용할 수 있게 해준다.

  • 고정된 터널
    Site-to-Site VPN은 두 네트워크 간에 항상 연결된 고정된 터널을 설정한다. 해당 터널을 통해 데이터를 전송할 때, 인터넷과 같은 공용 네트워크를 경유하더라도 데이터는 암호화되어 안전하게 전송된다.

  • 라우팅
    Site-to-Site VPN은 두 네트워크 간의 트래픽을 라우팅하여, 마치 두 네트워크가 하나의 LAN(Local Area Network)인 것처럼 작동한다. 사용자는 서로 다른 위치에 있는 네트워크 리소스에 로컬 네트워크에 접근하듯이 접근할 수 있다.

  • 암호화
    Site-to-Site VPN은 전송되는 모든 데이터를 암호화하여, 중간에 데이터가 가로채지거나 변조되지 않도록 보호함. 일반적으로 IPsec(Internet Protocol Security)과 같은 암호화 프로토콜을 사용한다.

  • CGW와 VGW
    AWS 환경에서 Site-to-Site VPN을 설정할 때, Customer Gateway(CGW)와 Virtual Private Gateway(VGW)를 사용한다. CGW는 온프레미스 네트워크 측의 VPN 장치나 소프트웨어를 나타내고, VGW는 AWS VPC 측에서 VPN 연결을 처리하는 가상 게이트웨이이다.
    이 두 게이트웨이 간에 VPN 터널이 설정되어 안전한 통신을 가능하게 한다.


Site-to-Site VPN의 장점

  • 보안성
    데이터가 암호화되어 안전하게 전송된다.

  • 비용 절감
    물리적인 전용 회선 대신 인터넷을 통해 네트워크를 연결할 수 있어 비용이 저렴하다.

  • 유연성
    다양한 네트워크 환경과 호환 가능하며, 확장이 쉽다.


Site-to-Site VPN의 단점

  • 인터넷 의존성
    인터넷 품질에 따라 연결 성능이 영향을 받을 수 있다.

  • 복잡성
    여러 지점을 연결할 때 설정과 관리가 다소 복잡할 수 있다.


Site-to-Site VPN 구성 요소 설명

UTM(Unified Threat Management)

  • 방화벽(Firewall)
    네트워크 트래픽을 필터링하고, 허용된 트래픽만 통과시키는 역할을 한다. UTM은 상태 기반 방화벽(Stateful Inspection)을 제공하여, 패킷의 상태와 연결 정보를 기반으로 트래픽을 제어한다.

  • 침입 방지 시스템(IPS, Intrusion Prevention System)
    네트워크에 들어오는 트래픽을 실시간으로 분석하여, 공격으로 의심되는 활동을 탐지하고 차단한다. 침입 탐지 시스템(IDS, Intrusion Detection System)과의 차이점은 IPS는 탐지만 하는 것이 아니라 탐지된 공격을 차단한다는 것이다.

  • VPN(Virtual Private Network)
    안전한 원격 접속을 위해 VPN 기능을 제공한다. Site-to-Site VPN이나 원격지 사용자 VPN을 통해 네트워크 간의 안전한 통신을 가능하게 한다.

  • 안티바이러스/안티멀웨어(Antivirus/Antimalware)
    네트워크 트래픽 내의 악성 소프트웨어(바이러스, 웜, 트로이목마 등)를 탐지하고 제거한다. 이는 실시간으로 네트워크를 통해 유입되는 위협을 막는 중요한 기능이다.

  • 웹 필터링(Web Filtering)
    특정 웹사이트나 웹 콘텐츠에 대한 접근을 제어한다. 이를 통해 사용자가 악성 웹사이트나 비업무용 사이트에 접근하는 것을 방지할 수 있다.

  • 스팸 방지(Anti-Spam)
    이메일 시스템을 보호하기 위해 스팸 메일을 필터링한다. 해당 기능은 사용자에게 유해한 이메일이 전달되는 것을 막아준다.

  • 애플리케이션 제어(Application Control)
    특정 애플리케이션의 네트워크 사용을 제어한다. 예를 들어, 비업무용 애플리케이션이나 잠재적인 보안 위협이 되는 애플리케이션을 차단할 수 있다.

  • 데이터 손실 방지(DLP, Data Loss Prevention)
    민감한 정보가 네트워크를 통해 유출되는 것을 방지한다. 이를 통해 회사의 중요한 데이터가 외부로 유출되는 것을 막을 수 있다.


UTM의 장점

  • 통합 관리
    여러 보안 기능을 하나의 플랫폼에서 관리할 수 있기 때문에, 보안 관리의 복잡성을 줄일 수 있다. 이를 통해 운영 비용을 절감하고, 관리 효율성을 높일 수 있다.

  • 비용 절감
    각각의 보안 솔루션을 개별적으로 도입할 필요 없이, 하나의 UTM 장비로 여러 보안 기능을 제공받을 수 있어 비용 효율적이다.

  • 확장성
    UTM은 필요에 따라 다양한 보안 기능을 추가하거나 확장할 수 있어, 조직의 보안 요구사항에 맞춰 쉽게 확장 가능하다.

  • 실시간 보안
    네트워크를 실시간으로 모니터링하여, 위협이 발생하는 즉시 대응할 수 있다.


UTM의 단점

  • 성능 저하
    모든 보안 기능을 통합적으로 처리하기 때문에, 트래픽이 많은 환경에서는 UTM 장비의 성능이 저하될 수 있다.

  • 단일 장애점
    모든 보안 기능이 하나의 장비에 통합되어 있기 때문에, UTM이 장애를 겪으면 전체 네트워크 보안에 문제가 발생할 수 있다.

  • 기능 제한
    모든 보안 기능이 통합되어 있어 개별 솔루션에 비해 각각의 기능이 제공하는 깊이나 세부 설정이 부족할 수 있다.


CGW(Customer Gateway)

  • CGW는 AWS의 VPC(Virtual Private Cloud)와 온프레미스(로컬) 네트워크를 연결하는 데 사용되는 장치 또는 소프트웨어 어플라이언스이다.

  • AWS 측에서는 VPN(가상 사설망) 연결을 설정하기 위해 CGW를 사용한다. CGW는 온프레미스 네트워크에 위치하며, AWS VPN의 한쪽 끝을 담당한다.

  • 온프레미스 네트워크와 AWS VPC 간의 트래픽을 암호화하여 안전하게 전송할 수 있도록 해주는 역할을 한다.

  • 동적 라우팅을 사용할 경우 ASN을 지정해 줘야한다.


CGD(Customer Gateway Device)

  • Site-to-Site VPN 설정에서 사용하는 Customer Gateway(CGW)의 구체적인 물리적 장치 또는 소프트웨어를 의미한다.

  • CGD는 온프레미스 네트워크와 AWS 클라우드의 Virtual Private Gateway (VGW) 간의 VPN 연결을 설정하고 유지하는 데 중요한 역할을 한다.

  • CGD가 BGP를 지원하지 않을 경우 VPN 연결시 동적 라우팅을 사용할 수 없다. 따라서 이 경우 정적 라우팅을 사용해야 한다.

  • VGW와 CGW의 설정을 모두 구성한 뒤 구성파일을 다운로드 받아 CGD에 설치하게 되면 VPC와 온프레미스 네트워크 간의 VPN Tunnel이 구성된다.

  • 여기서는 UTM이 CGD가 될 수 있다.


VGW(Virtual Private Gateway)

  • VGW는 AWS 측에서 운영되는 가상 게이트웨이로, VPC와 다른 네트워크(예: 온프레미스 네트워크) 간의 VPN 연결을 담당한다.

  • VGW는 AWS VPC의 한쪽 끝을 담당하며, CGW와의 연결을 통해 온프레미스 네트워크와 안전하게 통신할 수 있게 해준다.

  • VPC와 외부 네트워크 간의 트래픽을 처리하고, VPN 연결을 통해 암호화된 트래픽을 안전하게 전송한다.

  • VGW를 이용해 온프레스 네트워크와 연결하기 위해서는 온프레미스 네트워크 쪽에 CGW(Customer Gateway)를 구성해줘야 한다.

  • VGW는 하나의 VPC에만 연결할 수 있다.

  • Site-to-Site VPN, Direct Connect 연결을 통해 온프레미스 네트워크와 연결이 가능하다.

  • VGW 생성시 동적 라우팅을 사용할 경우 ASN(Autonomous System Number)를 지정해줘야 한다.

    • ASN(Autonomous System Number)
      인터넷 상에서 단일 행위자로 작동하는 네트워크 그룹, 즉 자율 시스템(Autonomous System, AS)을 식별하는 고유한 번호이다. AS는 동일한 라우팅 정책을 따르는 네트워크 집합으로 구성되며, 외부 네트워크와 통신할 때 BGP를 사용한다.

      ASN은 BGP를 사용한 동적 라우팅에서 네트워크 그룹(AS)을 식별하기 위해 사용된다. ASN은 글로벌 ASN과 프라이빗 ASN으로 나뉘며, 일반적으로 퍼블릭 인터넷에서는 글로벌 ASN을, 사설 네트워크에서는 프라이빗 ASN을 사용한다.
  • VGW를 통해 CGW와 연결되어 VPN이 구성되게 되는데, 이 과정에서 둘 사이의 라우팅 테이블을 주고받기 위해서는 VPC의 라우팅 테이블에서 라우팅 전파 옵션을 활성화 시켜야한다.
    -> VGW는 온프레미스 네트워크에서 BGP를 통해 전송된 라우팅 정보를 받아들여, 이를 VPC의 라우팅 테이블에 자동으로 추가한다. 반대로 VPC 내부에서 사전에 구성된 라우팅 정보(예: VPC 내 서브넷 경로 등)가 BGP를 통해 온프레미스 네트워크로 전파될 수 있다.


CGW, VGW, UTM의 관계성

CGW와 VGW

  • AWS VPC와 온프레미스 네트워크 간의 VPN 연결을 설정하기 위한 중요한 구성 요소이다.

  • CGW는 온프레미스 네트워크 측에 위치하며, VGW는 AWS VPC 측에 위치한다.

  • 이 두 게이트웨이는 VPN 터널을 통해 상호 연결되어, 두 네트워크 간의 안전한 통신을 가능하게 한다.


UTM과 CGW/VGW

  • UTM은 네트워크 보안을 종합적으로 관리하는 장비로, CGW 또는 VGW와 함께 사용될 수 있다.

  • 온프레미스 네트워크에 UTM을 배치하여 네트워크 전체에 대한 보안 관리를 수행하면서, CGW를 통해 AWS VPC와 안전하게 연결될 수 있다.

  • UTM은 CGW와 VGW 사이의 통신을 보호하는 추가적인 보안 계층을 제공할 수 있다.


VPN Tunnel

출처: https://tech.cloudmt.co.kr/2022/09/30/인프라-엔지니어라면-꼭-알아야하는-네트워크-vpn/

  • VPC 터널은 일반적으로 AWS VPC(Virtual Private Cloud)와 온프레미스 네트워크 또는 다른 클라우드 네트워크 간에 안전하게 데이터를 전송하기 위해 설정된 VPN 터널을 의미한다.

  • IPsec (Internet Protocol Security) 프로토콜을 사용하여 데이터를 암호화하고, 이를 통해 공용 인터넷을 경유하더라도 데이터가 안전하게 전송될 수 있게 한다.

  • VPN 터널은 인터넷 연결을 위한 Public IP와 내부 연결을 위한 내부 CIDR로 구성된다.

  • VPN 터널이 생성될 때 AWS에서 기본값을 지정하게 되는데, 암호화, Dead Peer Detection(DPD) 시간 초과, IP 주소 등의 터널옵션을 직접 지정할 수 있다.

  • AWS에서 Site-to-Site VPN을 설정하면, VPN 터널이 두 개 생성된다. 각 터널은 다른 VPN 엔드포인트에 대해 백업 역할을 하여 고가용성을 제공하게 된다.

  • VPN 터널당 최대 대역폭은 1.25Gpbs이다.


Site-to-Site VPN Hands-On

https://yoo11052.tistory.com/171

위 링크를 참고한다.


Site-to-Site VPN 구성 단계 요약

  1. 퍼블릭 서브넷과 프라이빗 서브넷으로 구성된 VPC 생성

  2. CGW 생성

  3. VGW 생성

  4. VGW -> [Acction] -> [Attach to VPC] 버튼을 눌러 VGW에 1번에서 생성한 VPC 연결

  5. VPC와 온프레미스 네트워크 환경 간 라우팅 정보 공유를 위해 1번에서 생성한 VPC의 라우팅 테이블을 선택 후 [Route propagation] -> [Edit route propagation] 버튼을 눌러 3번에서 생성한 VGW의 라우팅 전파 옵션 활성화.

  6. Site-to-Site VPN Connection을 생성한다. 기본적으로 2개의 VPN 터널이 생성된다.
    Local IPv4 Network CIDR에는 온프레미스 네트워크의 IP 주소 범위를 지정한다. 이 범위에 속하는 IP 주소들만 AWS와의 VPN 터널을 통해 통신할 수 있다.
    Remote IPv4 Network CIDR에는 AWS VPC 측의 IP 주소 범위를 지정한다. 이 범위에 속하는 IP 주소들만 온프레미스 네트워크와 VPN 터널을 통해 통신할 수 있다.

    두 네트워크의 IP 주소 범위가 겹쳐서 네트워크 간의 라우팅에 문제가 발생하지 않도록 주의해야 한다.
    너무 광범위한 CIDR을 지정할 경우 불필요한 트래픽이 VPN을 통해 전송될 수 있기 때문에 필요한 네트워크 범위만 지정하는 것이 좋다.

  7. Site-to-Site VPN Connection의 구성을 CGD에 맞게 구성을 선택한 후 다운로드하여, 해당 파일을 기반으로 CGD(ex.UTM)를 설정한다.

    CGW에 기반하여 CGD를 설정할 수 잇는 파일이 다운로드 된다. 해당 파일을 통해 온프레미스에서 VPN을 구성하게 된다.

profile
IT, 개발 관련 정보들을 기록하는 장소입니다.
post-custom-banner

0개의 댓글