IT, 보안 지식

방화벽은 무엇인가|통신 허용·차단 원리와 적용 범위

방화벽은 서로 다른 보안 수준의 네트워크나 호스트 사이에서 통신 흐름을 정책에 따라 허용하거나 차단합니다. 규칙이 보는 정보, 상태 추적, 배치 위치, 로그와 정책 운영 순서를 실제 통신 흐름으로 설명합니다.

네트워크 경계에서 통신을 허용하거나 차단하는 방화벽 개념 이미지
네트워크 경계에서 통신을 허용하거나 차단하는 방화벽 개념 이미지

사내 서버가 외부 사이트에 접속하거나 사용자의 PC가 업무 서버에 연결될 때, 통신은 출발지에서 목적지로 곧장 전달되는 것처럼 보입니다. 실제 운영 환경에서는 그 사이에 허용해도 되는 통신인지 판단하는 지점이 놓입니다. 업무에 필요한 연결은 통과시키고 정책에 맞지 않은 연결은 막은 장치 또는 프로그램이 방화벽입니다.

NIST는 방화벽을 보안 수준이 다른 네트워크 또는 호스트 사이의 네트워크 트래픽 흐름을 제어하는 장치나 프로그램으로 정의합니다. 여기서 중요한 말은 ‘공격을 모두 찾아내는 장비’가 아니라 ‘정해진 정책에 따라 통신 흐름을 제어하는 지점’이라는 점입니다. 방화벽의 성능은 규칙을 얼마나 많이 넣었는지가 아니라 필요한 통신만 정확하게 표현하고 그 결과를 지속해서 관리하는 데서 드러납니다.

통신 경계의 문지기

건물 출입구를 떠올리면 이해가 쉽습니다. 출입증에 적힌 소속과 출입 가능 구역을 확인한 뒤 문을 열어 주듯, 방화벽은 통신에 담긴 주소와 포트, 프로토콜, 방향 같은 조건을 규칙과 대조합니다. 조건이 맞으면 통과시키고, 맞지 않으면 차단합니다. 출입구를 아무 곳에나 만들면 통제가 되지 않듯이 방화벽도 실제 통신이 지나가는 경계에 배치되어야 합니다.

경계는 인터넷과 사내망 사이에만 있은 것이 아닙니다. 사용자망과 서버망, 운영망과 개발망처럼 관리 목적이 다른 구간 사이에도 생길 수 있습니다. 한 대의 PC나 서버 자체에도 호스트 기반 방화벽이 들어갈 수 있습니다. 네트워크 방화벽은 여러 장비가 공유하는 경계를 통제하고, 호스트 방화벽은 해당 장비로 들어오거나 나가는 연결을 그 장비의 규칙으로 판단합니다. 두 형태 모두 같은 개념을 따르지만 적용되는 위치와 보호 범위가 다릅니다.

외부 네트워크, 네트워크 방화벽, 내부 네트워크, 호스트 방화벽의 배치
경계별 방화벽 배치

규칙이 확인하는 정보

기본적인 방화벽 규칙은 통신을 구분할 수 있은 여러 조건을 조합합니다. 출발지 IP 주소는 누가 통신을 시작했는지, 목적지 IP 주소는 어디로 가는지 나타냅니다. TCP나 UDP 같은 프로토콜과 포트 번호는 어떤 방식과 서비스로 연결하려는지 구분하는 데 쓰입니다. 들어오는 연결인지 나가는 연결인지, 어느 네트워크 인터페이스를 지나는지도 규칙 조건이 될 수 있습니다.

  • 출발지: 통신을 시작한 IP 주소 또는 네트워크 구간
  • 목적지: 연결하려는 서버·장비의 IP 주소 또는 구간
  • 서비스 조건: TCP·UDP 같은 프로토콜과 목적지 포트
  • 통신 방향: 외부에서 내부, 내부에서 외부, 구간 간 이동
  • 적용 범위: 인터페이스, 네트워크 프로필, 프로그램 또는 서비스

예를 들어 사용자가 웹 서버의 HTTPS 서비스에 접속해야 한다면 ‘사용자망에서 웹 서버로 향하는 TCP 443 통신 허용’처럼 업무 흐름을 규칙으로 표현할 수 있습니다. 서버 전체, 모든 포트, 모든 출발지를 한꺼번에 허용하면 작성은 편하지만 통제 범위가 지나치게 넓어집니다. 필요한 출발지와 목적지, 서비스, 방향을 구체적으로 좁히는 이유가 여기에 있습니다.

규칙 판정 순서

트래픽이 방화벽에 도착하면 먼저 통신의 속성을 읽습니다. 그다음 적용 대상 규칙을 정해진 순서와 우선순위에 따라 대조합니다. 일치하는 허용 규칙이 있으면 전달하고, 차단 규칙에 일치하거나 허용 근거가 없으면 막습니다. 제품마다 규칙 평이 방식과 우선순위 표현은 다를 수 있으므로 운영자는 해당 장비의 공식 문서와 실제 정책 순서를 함께 확인해야 합니다.

  1. 트래픽의 출발지·목적지·프로토콜·포트·방향 확인
  2. 해당 구간과 인터페이스에 적용되는 정책 선택
  3. 규칙의 조건과 우선순위 대조
  4. 허용·차단 결과 적용과 로그 기록
  5. 허용된 연결의 상태 정보 유지
트래픽 수신, 조건 확인, 규칙 대조, 허용·차단의 방화벽 판정 흐름
규칙 판정과 상태 추적

상태 기반 통신 추적

상태 기반 방화벽은 개별 패킷만 따로 보지 않고 연결의 진행 상태를 함께 기억합니다. 내부 사용자가 외부 서버에 정상적으로 연결을 시작했다면, 그 요청에 대한 응답인지 상태 정보와 대조해 되돌아오는 트래픽을 처리할 수 있습니다. 이미 허용된 연결의 응답과 외부에서 갑자기 시작된 새 연결을 구분하는 데 이 정보가 쓰입니다.

상태 정보에는 연결을 식별하는 주소와 포트, 프로토콜, 진행 상태, 마지막 활동 시각 등이 포함될 수 있습니다. 세션이 끝나거나 일정 시간 동안 활동이 없으면 항목이 정리됩니다. 동시 연결이 급격히 늘거나 상태 테이블 자원이 부족해지면 정상 통신에도 영향을 줄 수 있으므로, 운영자는 허용·차단 규칙뿐 아니라 연결 수와 자원 사용 추세도 살펴야 합니다.

기본 정책과 예외 범위

방화벽 정책을 설계할 때는 일치하는 규칙이 없을 경우 어떻게 처리할지 정해야 합니다. 업무에 필요한 통신을 명시적으로 허용하고 나머지를 차단하는 방식은 허용 범위를 분명하게 만들 수 있습니다. 반대로 광범위하게 허용한 뒤 일부만 차단하면 새 서비스나 예상하지 못한 경로가 정책 밖으로 빠져나가기 쉽습니다.

다만 ‘나머지 모두 차단’만 적용하면 업무가 자동으로 안전해지는 것은 아닙니다. 필요한 통신 흐름을 먼저 조사하고, 변경 전에 영향 범위를 확인하며, 적용 뒤 실제 연결과 로그를 검증해야 합니다. 서비스가 동작하지 않는다는 이유만으로 임시 전체 허용 규칙을 맨 위에 추가하면 이후 규칙들이 사실상 평가되지 않을 수 있습니다. 예외는 출발지·목적지·서비스·기간·담당자를 함께 기록해야 관리 가능한 정책이 됩니다.

정책 변경과 운영 주기

방화벽 규칙은 한 번 만들고 끝나는 설정이 아닙니다. 서비스 개통, 서버 이전, 외부 연계, 유지보수처럼 업무 변화에 따라 규칙도 달라집니다. 요청 단계에서는 통신 목적과 출발지·목적지·포트, 필요한 기간을 확인하고, 승인 단계에서는 범위가 업무 목적보다 넓지 않은지 검토합니다. 적용 단계에서는 변경 전 정책 백업과 복구 방법, 테스트 방법을 준비합니다.

적용 후에는 실제 허용·차단 결과가 요청 내용과 일치하는지 확인합니다. 규칙 이름만 보고 완료로 판단하지 않고, 접속 테스트와 로그의 출발지·목적지·포트를 함께 대조해야 합니다. 일정 기간이 지난 임시 규칙, 담당자가 없은 규칙, 더 이상 사용하지 않은 서버를 가리키는 규칙은 검토 대상으로 올립니다. 사용 여부를 확인한 뒤 제거하면 정책이 짧아질 뿐 아니라 다음 장애 분석 때 판단해야 할 범위도 줄어듭니다.

업무 근거, 테스트, 로그, 미사용 규칙 제거로 이어지는 방화벽 정책 운영 주기
정책 검토와 정리 주기

로그에서 확인할 항목

로그는 방화벽이 어떤 판단을 했는지 보여 주는 운영 근거입니다. 일반적으로 발생 시각, 허용 또는 차단 결과, 출발지와 목적지 주소, 프로토콜, 포트, 적용 규칙 같은 정보를 확인합니다. 단순히 차단 건수가 많다는 사실보다 어떤 구간에서 어떤 서비스로 반복되는지, 변경 직후 특정 업무 통신이 거부되는지처럼 흐름으로 읽은 편이 유용합니다.

  • 정책 변경 전후 허용·차단 결과 차이
  • 업무 시간과 무관하게 반복되는 연결 시도
  • 예상하지 않은 출발지에서 관리 포트로 향하는 통신
  • 한 규칙에 과도하게 집중되는 트래픽
  • 로그가 남지 않거나 규칙명이 모호한 예외 정책

모든 허용 통신을 같은 수준으로 기록하면 로그 양이 빠르게 늘 수 있습니다. 반대로 차단만 기록하면 허용된 경로가 실제로 어떻게 사용되는지 놓칠 수 있습니다. 중요 구간과 관리 서비스, 임시 예외처럼 확인 가치가 높은 규칙을 우선하고 보관 기간과 조회 기준을 정해야 합니다. 로그 시간 동기화가 어긋나면 서버 기록과 연결하기 어려우므로 장비 시각도 함께 점검합니다.

방화벽의 한계

방화벽이 허용한 통신이라고 해서 그 내용까지 항상 안전한 것은 아닙니다. 업무상 열어 둔 포트로 잘못된 요청이 들어올 수 있고, 암호화된 연결은 설정과 기능 범위에 따라 내부 내용을 판별하기 어렵습니다. 이미 허용된 장비나 계정이 오용되면 정상 규칙을 통과할 수도 있습니다. 방화벽은 정책에 표현된 통신 경계를 집행하지만, 허용된 통신의 모든 행위와 파일 내용을 자동으로 보증하지는 않습니다.

가장 큰 운영 위험은 장비의 부재보다 부정확한 정책입니다. ‘임시’라고 적힌 전체 허용 규칙이 오랫동안 남거나, 목적을 모르는 규칙이 누적되거나, 실제 경로와 다른 위치에 정책을 적용하면 기대한 통제가 이루어지지 않습니다. 방화벽을 제대로 운영한다는 것은 장비를 켜 두는 일이 아니라 통신 흐름을 이해하고, 최소한의 허용 범위를 규칙으로 만들며, 로그와 만료일로 그 규칙을 계속 검증하는 일입니다.

운영 점검 기준

  1. 실제 통신 경로가 방화벽을 지나가는지 구성도와 라우팅으로 확인
  2. 출발지·목적지·서비스·방향이 업무 요청과 정확히 일치하는지 대조
  3. 광범위한 전체 허용 규칙과 중복 규칙의 우선순위 점검
  4. 임시 규칙의 담당자·근거·만료일 기록
  5. 변경 뒤 접속 결과와 허용·차단 로그 동시 확인
  6. 미사용 서버·종료 서비스·만료 예외를 정기적으로 정리

확인한 출처

  1. NIST CSRC Glossary: FirewallNIST · 공식 자료
  2. NIST SP 800-41 Rev. 1, Guidelines on Firewalls and Firewall PolicyNIST · 공식 자료
  3. Windows 방화벽 개요Microsoft · 공식 자료

사실관계와 수치는 연결된 자료에서 다시 확인할 수 있습니다.

독자 의견

의견을 남겨주세요

0

아직 등록된 댓글이 없습니다.

개인정보·광고·외부 연락처는 입력하지 마세요.