리버스 프록시 궁금한게 있습니다
NAS랑 웹 공부 겸 웹서버를 여는 용도로 홈서버를 구축해 보려는 늅늅이입니다.
서버를 열 때 포트포워딩을 하면 열린 포트를 통해 공격이 들어올 수도 있고, 이를 방지하기 위해서는 리버스 프록시를 이용하라는 것이 좋다는 내용을 봤습니다.
저 내용을 보고 리버스 프록시에 대해 찾아본 결과, "리버스 프록시 서버에서 요청 내용을 먼저 받고, 요청 도메인에 맞는 서버랑 연결해 준다"라고 이해했습니다.
그럼 결국 프록시 서버에 들어오는 포트들은 외부에 열어줘야 하니 이쪽으로도 공격이 들어올 수 있으니 똑같이 위험한 거 아닌가요?
아니면 공격은 프록시 서버가 받고, 프록시 뒷편에 있는 웹서버, 파일서버는 공격을 받지 않으니 더 안전하다는 건가요??
리버스프록시를 위한 포트는 열려있으니 아예 안전한건 아니지만
리버스프록시하면서 보통 ssl등 암호화를 거치니까
원 서버 포트를 열어두는거보단 훨씬 안전해지죠
저도 처음에는 그렇게 생각했는데
뭐... 작정하고 털려고 하면 털 수 있겠죠. 그런데 그건 사실 구글이고 네이버고 다 털리는거라 의미가 없구요.
여튼 상대방이 제 ddns를 알고 있는게 아니라면 제가 알고 있는 선에서는 리버스프록시가 훨씬 안전합니다.
제 ip가 예를들어 123.123.123.123이라고 할때
80,443 포트를 열어두더라도 일반적인 ip를 통한 접속 123.123.123.123(:80) 또는 123.123.123.123(:443)은 리버스 프록시단에서 그냥 차단을 때려버립니다. (단순히 접속 요청에도 헤더로 생각보다 많은 정보를 보내더군요...)
파일을 이상한거 받았거나 진짜 위험한 포트들 죄다 리버스로 열어두신게 아니라면 리버스 프록시만 걸려있어도 공격 자체가 불가능합니다.
일반적인 시놀로지 사서 리버스프록시 없이 포트 열어두신 분들이 훨씬 많을텐데, 그분들 다 털고 나서 제꺼 털 궁리를 할테니까요.
nas.mayeon.duckdns.org 식으로 접근하지 않으면 애초에 열어주지를 않고, 열어주더라도 리버스프록시 시스템이 특정 포트 외에는 정보를 아예 건내주지를 않으니까 상대적으로 훨씬 안전하죠
아 도메인이 아닌 IP를 통안 직접적인 연결은 다 차단되군요 이건 첨음알았네요
감사합니다!
리버스 프록시를 쓰면 포트포워딩은 필요 없는건가요?
리버스 프록시 프로그램을 위한 80, 443 포트
혹은 인증서 문제를 해결한다면 (txt 레코드, cname 등) 443 포트만 열고 다른 모든 포트를 닫아도 작동 가능합니다.
가능하다면 일반적인 단순 포트포워딩 말고 리버스로 적용하시는게 보안상 무조건 맞습니다.
답변 감사합니다^^
기본적으로 해커나공격자들이 공격하는 주요포트들은 정해져있고 타겟형 공격보다는
IP대역으로 스캔을 하면서 취약점을 찾게됩니다.
ssh를 사용하는 22번포트, RDP를 사용하는 3389, 시놀/헤놀의 DSM 포트로사용되는 5000번 포트가 대표적이지요.
해당 포트가 오픈되어있다면 버전이 노출되고 버전에 따라 취약점으로 얼마든지 공격할수있습니다.
하지만 리버스프록시로 오픈하고 80/443을 사용한다면 IP로 스캔을했을때는 해당 시스템에서 사용하고있는 Proxy 서버의 정보만 노출되기때문에 내부 시스템에서 어떤걸 사용하고있는지 노출되지않고 상대적으로 안전한편이라고 보시면됩니다.
결국 http, https 포트를 열고, 해당 포트로 공격당한다고 해도 프록시 서버만 공격을 받고 뒤에 있는 서버는 감춰지니 안전한 것이군요
감사합니다!
cmt alert