프록시 패턴

Gwonyeong·2023년 3월 24일
0

cs-note

목록 보기
5/8

프록시 패턴은 대상 객체에 접근하기 전 그 접근에 대한 흐름을 가로채 대상 객체 앞단의 인터페이스 역할을 하는 패텅.

프록시 서버

  • 서버와 클라이언트 사이에서 클라이언트가 자신을 통해 다른 네트워크 서비스에 간접적으로 접속 할 수 있게 해주는 컴퓨터 시스템이나 응용 프로그램.
    • nginx : 비동기 이벤트 기반의 구조와 다수의 연결을 효과적으로 처리 가능한 웹서버.
    • 주로 Node js 서버 앞단의 프록시 서버로 활용.
    • 톨게이트라고 볼 수 있을 것 같음!

좋은 프록시 서버 예시가 NginX!

  • Node js의 창시자인 라이언 달은 Node.js의 버퍼 오버플로우 취약점을 예방하기 위해 nginx를 프록시 서버로 앞단에 놓고 node서버를 뒤쪽에 놓는 것이 좋다. 라고 했음.
  • 현재는 교과서처럼 참고되어 많은 사람들이 nginx를 앞단에 두는 방식으로 서버를 구축함.
    • 익명 사용자의 직접적인 서버로의 접근을 차단하고 간접적으로 한 단계를 더 거침으로써 보안성을 더욱 강화할 수 있음!

버퍼 오버플로우

  • 버퍼는 보통 데이터가 저장되는 메모리 공간으로, 메모리 공간을 벗어나는 경우를 말함.
  • 이때 사용되지 않아야 할 영역에 데이터가 덮어씌워져 주소, 값을 바꾸는 공격이 발생하기도 함.

또 다른 예시인 CloudFlare

  • 전 세계적으로 분산된 서버가 있고 이를 통해 어떠한 시스템의 콘텐츠 전달을 빠르게 할 수 있는 CDN서비스

    • 클라우드 플레어는 DDOS 공격의 방어, HTTPS 구축들의 장점도 가짐.
    • 이런 장점은 웹 서버 앞단에 두어 프록시 서버로 사용하기 때문에 가능한 것!
  • DDOS공격 방어?

    • 짧은 기간동안 많은 요청을 보내 네트워크를 마비시켜 웹 사이트의 가용성을 방해하는 사이버 공격 유형.
    • CloudFlare는 의심스러운 트랙픽, 특히 사용자가 접속하는 것이 아닌 시스템을 통해 오는 트래픽을 자동으로 차단해서 DDOS공격으로부터 보호함.
  • HTTPS?
    보통은 HTTPS를 구형할 때 인증서를 기반으로 하지만 CloudFlare를 사용하면 별도의 인증서 설치 없이 좀 더 쉽게 HTTPS를 구축할 수 있음!

profile
부동의 첫사랑

0개의 댓글