2017-12-19 21 views
0

역방향 프록시 서버가 유용한 이유에 대해 배우려고합니다. 방금 읽은 내용은 ...역방향 프록시 서버는 보안을 어떻게 향상합니까?

보안 및 익명 - 역방향 프록시 서버는 사용자의 백엔드 서버로 향하는 요청을 가로 채고 보안 공격에 대한 추가 방어책 역할을합니다. 또한 로컬 영역 네트워크의 구조와 관계없이 단일 레코드 위치 지정자 또는 URL에서 여러 서버에 액세스 할 수 있습니다. https://www.nginx.com/resources/glossary/reverse-proxy-server/

왜이 도움이 백엔드 서버의 신원이 숨겨져 있는지? 앱을 방문하는 일반 클라이언트가 액세스하는 것과 같이 리버스 프록시 서버를 통해 공격 할 수는 없습니까?

+0

프록시는 해당 서버의 모든 항목에 대한 액세스를 허용하지 않습니다. 특히 www가 아닌 ​​리소스. –

+0

@SamKuhmonen 그래서 기본적으로 프록시는 모든 통신이 HTTP 또는 HTTPS를 통해 이루어 지도록 보장하며 백엔드 서버의 신원이 숨겨져 있기 때문에 다른 유형의 트래픽을 자유롭게 허용하도록해도 안전합니까? – MattGoldwater

+0

이것이 장점 중 하나입니다. 그러나 이것이 프로그래밍보다 보안 및 네트워크 문제에 관한 것이기 때문에 이것이 실제로 중요한 것인지 확실하지 않습니다. –

답변

1

모든 요청에 ​​대해 액세스 제한을 미세 조정하고 속도 제한 및 부하 분산을 적용하여 공격이 전체 인프라를 파괴하지 않을 수도 있습니다. 특히로드 밸런싱 측면이 중요합니다. 또한 인터넷에서 볼 수있는 유일한 서버는 역방향 프록시이므로 모든 서버 구조를 노출 한 것처럼 전체 서버 구조를 매핑하는 것은 쉬운 작업이 아닙니다.

일반적으로 방화벽 뒤에서 HTTP를 통해 통신 할 수 있도록 SSL 게이트웨이로 역방향 프록시를 설정합니다. 응답이없는 서버의 장애 조치도 가능합니다. 설치에 서버를 추가하는 것은 쉬운 일이 아닙니다.

이와 별도로 방화벽 뒤에있는 모든 서버에 대해 복제 할 필요가없는 중앙 집중식 설치가 즉시 가능합니다. 또한 역방향 프록시를 사용하면 하나의 외부 IP 주소에 대해 HTTP/HTTPS 포트만 표시 할 수 있지만 원하는 위치로 라우팅 할 수있는 로컬 IP로 여러 서비스가 실행됩니다.

이 질문은 네트워크 및 서버 인프라와 관련되어 있기 때문에 Server Fault에 속할 가능성이 있습니다.

+0

@herrOkay. 기본적으로 설정하기가 쉽습니다. 서버의 ID가 숨겨져 있기 때문에 아무도 서버를 찾을 수 없으므로 서버가 공격자에 의해 과부하되지 않습니다. 2. 통신을 암호화 할 필요가 없습니다. 끝 서비스. – MattGoldwater

+0

@herrOkay 서버 오류에 대해 알지 못했습니다. 감사! – MattGoldwater

+0

@MattGoldwater : 기본적으로. 단일 서버 설정에서도 라우팅을 크게 단순화합니다. Python, Node.js 또는 이와 유사한 응용 프로그램을 실행하는 경우 웹 서버는 웹 컨텐트를 제공하는 데 매우 뛰어나지 만 최소한 이러한 프레임 워크의 서버 구현은 그렇지 않기 때문에 항상 역방향 프록시를 앞에 두어야합니다. NAXSI의 도움으로 Nginx를 일종의 웹 방화벽으로 설정할 수 있습니다. 비교 : https://n0where.net/nginx-web-application-firewall-naxsi/ – herrbischoff