포트가 하나만 열려 있는 소형 장치에 방화벽이 필요합니까?

포트가 하나만 열려 있는 소형 장치에 방화벽이 필요합니까?

저는 단 하나의 목적으로만 사용되는 Raspberry Pi를 구축할 계획입니다.

  • 포트가 1개만 열려있습니다
  • 모든 사람이 이 포트에 연결할 수 있어야 합니다.
  • 이 포트를 수신하는 애플리케이션에는 루트 권한이 없습니다.
  • 라우팅되지 않습니다. 즉, 이 Raspberry Pi를 통해 연결할 수 있는 다른 PC가 없습니다.
  • 아웃바운드 연결이 없습니다. 즉, Raspberry Pi는 다른 PC에 적극적으로 연결되지 않습니다.
  • 다른 포트가 열려 있지 않은지 확인하기 위해 포트 스캔을 수행하겠습니다.

그렇다면 이 장치에서 실행되는 방화벽이 필요합니까?

답변1

글쎄요, 공용 네트워크에 있는 경우에는 (물론 기존의) 넷필터 방화벽을 계속 설정하겠습니다.

즉, ICMP 등과 같은 다른 트래픽 유형을 차단합니다. 또한 대부분의 포트/시스템 스캐너는 모든 종류의 오류 응답("포트 도달 불가") 등을 통해 시스템 유형을 감지하므로 공격 표면을 확실히 줄입니다. 귀하의 목표는 시스템에 대한 정보를 가능한 한 적게 유출하는 것입니다.

또한 ICMP 응답("ping")은 적극적으로 차단하지 않으면 반환됩니다. 그리고 나는 당신도 이것을 원하지 않는다고 생각합니다(적어도 나는 원합니다).

답변2

방화벽 작업은 Linux의 netfilter/iptables에 의해 수행됩니다.

따라서 방화벽은 단순히 iptables 구성으로 인해 들어오는 모든 TCP 연결을 삭제하게 됩니다. (그리고 나가는 연결을 차단할 수도 있습니다.)

저는 개인적으로 그러한 방화벽 구성을 만들지 않을 것입니다. 단일 서버 응용 프로그램만 실행되고 있다는 것을 알고 있다면 필요하지 않습니다.

달리다

netstat -ltw

TCP 연결을 수신하는 애플리케이션이 하나만 있는지 확인하세요. 제거하고 싶은 사전 설치된 서버 응용 프로그램이 있을 수도 있습니다.

-l means listen
-t means tcp
-w means raw (will show the ping server)

바인딩 IP 주소도 확인해야 합니다. 동일한 LAN에 있는 클라이언트만 허용하고 인터넷(예, 인터넷)의 클라이언트는 무시할 수도 있습니다.

관련 정보