CS로 알아보는 프로젝트 - Reverse Proxy

안녕하세요!

 

여러분들은 왜 Reverse Proxy를 사용하시는지 알고 계신가요?

 

알고 계신 만큼 속으로 생각해 보시고 스크롤을 내려보세요.

 

여러분들도 잘 알고 있듯 단일 포트를 통해 웹 서비스를 제공하기 위해 사용하고 있습니다. 

 

내부적으로 운영되고 있는 Origin Server에 직접적으로 접근하지 못하고 Web Server를 통한 Reverse Proxy로  Origin  Server에 접근이 가능한 것이죠 

 

 

 

그럼 왜 사용하고 어떤 장점들을 가져갈 수 있을까요? 

 

단일 포트로 여러가지 서비스를 제공할 수 있고 반드시 단일 포트로 제공되고 있는 Web Server를 거쳐야 하기 때문에 보안적으로 유리한 장점을 가져갈 수 있습니다.

 

또한, 부하를 여러 서버로 분산해주어 각 서버를 안정적으로 운영할 수 있다는 장점도 존재합니다.

 

 

 

그럼 보안 강화 측면에서 자세하게 접근해볼까요?

 

아래 이미지와 같이 방화벽에서 80, 443, 22번 포트만 open 시켜두고 서비스를 운영하고 있다고 가정해 보겠습니다.

Proxy Server로 사용되고 있는 Nginx는 80번과 443번으로 운영되고 있습니다. 

 

하지만 저희는 8080으로 돌아가고 있는 Spring Server와 5000으로 돌아가고 있는 Web Server, 8081로 돌아가고 있는 Jenkins까지 접근할 수 있습니다. 

 

즉, 방화벽에서 여러 서비스 포트를 Open 하지 않고 단일 포트를 통해 여러 가지 서비스를 운영할 수 있고 Proxy Server에서로깅이 가능하기 때문에 보안적으로 이점을 가져갈 수 있습니다. 

 

 

혹시라도 Web Server와 WAS(Spring)의 차이를 잘 모르겠다면 아래 포스팅 참고해 보시면 좋을 것 같습니다.

https://security-gom.tistory.com/58

 

1. NGINX란? (웹 서버 사용 이유)

NGINX Nginx 높은 성능과 안정성이 뛰어난 웹 서버로 현재 가장 많이 사용되고 있는 웹 서버임. Apache와 같은 웹 서버 대비 가볍고, 대규모 어플리케이션 처리에 적합 Apache 웹 서버의 성능 제한을 해

security-gom.tistory.com

 

 

만약 Docker를 사용하여 서비스를 운영할 계획이시라면 아래 포스팅을 꼭 참고해 보시면 좋을 것 같습니다!!!!!!! 

 

https://security-gom.tistory.com/65

 

CS로 알아보는 프로젝트 - Docker의 IPTABLES 접근 Feat:UFW

안녕하세요. 혹시 여러분들은 IPTABLES와 UFW의 차이 그리고 Docker의 IPTABLES 접근에 대해 알고 계신가요?? 오늘 해당 주제를 다루어보도록 하겠습니다. 먼저 IPTABLES란 리눅스 운영체제에서 네트워크

security-gom.tistory.com