본문 바로가기

Network

Application Level Gateway 란?

728x90
반응형

NAT Slipstreaming 공부중 내가 네트워크 머저리였음을 깨달았다.
Application Level Gateway 조차도 제대로 설명하지 못해 정리해보았다.

Application Level Gateway란 말 그대로 Application Level에서 패킷을 처리하는 Gateway라는 말이다.

[OSI 7 Layer]

여러분들 모두가 아는 OSI 7 Layer다.

Application Level Gateway는 여기서 7계층 Application Layer에서 동작한다고 말할 수 있다.
여기서 Gateway는 스위치나 뭐 방화벽이나 될 수 있다. 
방화벽에서 처리한다면 Application Level Firewall 이라고 표현하면 된다. 
이름이 중요한게 아니다.

[출처 : https://networkencyclopedia.com/firewall/]

일반적인 Packet Filtering 방식의 경우 3 4 계층에서 TCP/UDP 패킷에 대해 IP와 PORT 기반 필터링만을 수행한다.
지극이 기본적이며, 많은 트래픽이 들어와도 큰 무리없이 처리할 수 있다는 장점이있지만...
정말 극히 제한적으로 처리가 가능하다. 
그도 그럴것이 필터링 규칙이 그저 IP와 PORT 뿐이니... 뭔가 세부적인 정책을 넣을 수 없다.

Application Level Gateway7계층에서 HTTP, FTP, SIP 등등의 Protocol들을 처리한다.
기존처럼 IP, Port를 보는게 아니라, 패킷 내용을 보고 정책에 대조하는 방식이라고 생각하면 된다.
여기서 차이가 있다면 아무래도 세부적인 내용을 볼 수 있어 탐지율이나 보안성에서는 좋지만... 
반대로 보는게 너무많아, 많은 트래픽을 받게되면 뻗을 확률이 높다.

그.래.서
보통은 Packet Filtering 방식의 방화벽을 1차 벽으로 세우고, 그 뒤에 2차벽으로 Application Level Gateway 기능을 가진 방화벽을 넣는다. (사실 요즘 방화벽들은 대부분 두가지 기능을 모두 수행할 수 있다)

또한 Application Level Gateway는 Proxy Server 형태로 동작한다.
장점이라면 일반적인 방화벽이 Deny, Allow만을 할 수 있다면, Application Level Gateway 기능을 사용할 시, 패킷에 대한 변조도 가능해 진다는 것이다.
(Proxy server처럼 동작하기에 신뢰할 수 없는 데이터를 삭제한다던가... 필터링 한다던가...가 가능하다)

하지만 단점도 있다.
만약 FTP를 처리하고 싶다면 FTP Proxy Server기능을 지원해야하며, HTTP를 처리하고 싶다면 HTTP Proxy Server를 지원해야한다.
즉 네트워크 통신 시 필터링 할 프로토콜을 지원해야만, 필터링을 수행할 수 있다.
만약 지원하지 않는다면? Proxy Server는 당연히 relay를 시키지 못하고 패킷은 자동으로 DROP 되고, 통신이 불가하게 된다.

UTM장비나 NGFW 장비들도 Application Level Gateway 를 지원하며, 요즘엔 Application Level Gateway의 단점인 성능을 보완하기 위해, 하드웨어를 많이 업그레이드 시킨다고 한다.

정리를 이렇게 해봤는데...
아직 몇가지 의문이 든다.

  1. WAF는 그러면... HTTP에 특화된 Application Level Gateway 기능을 수행하는 Firewall이라고 보면 되는가..?
  2. Application Level Gateway 기능을 가진 방화벽 제품을 쓰는 이유는 무엇인가...? IPS와의 차이는...?

뭐 요런 잡다한 의문이 드는데...
네트워크 장비를 다뤄보지않았고, 지식도 매우 적어 하나씩 풀어나가며 포스트를 업그레이드 하도록 하겠다.

728x90
반응형

'Network' 카테고리의 다른 글

NAT의 종류?  (4) 2021.03.14