Ubuntu - 선택된 몇 가지 애플리케이션을 제외한 모든 애플리케이션에 대한 인터넷 액세스를 차단합니다.

Ubuntu - 선택된 몇 가지 애플리케이션을 제외한 모든 애플리케이션에 대한 인터넷 액세스를 차단합니다.

저는 선택한 1~2개의 애플리케이션을 제외하고 모든 애플리케이션이 인터넷에 액세스하지 못하도록 차단하는 방법을 찾고 있었습니다.

저는 복잡하지 않은 방화벽(ufw)과 해당 Gui(gufw)를 살펴보았습니다.

여기에 이미지 설명을 입력하세요

하지만 gufw에는 특정 프로그램이 인터넷에 액세스하는 것을 차단하는 옵션이 없는 것 같습니다(Windows 방화벽은 아웃바운드 규칙을 사용하여 수행함).

질문:내가 어떻게 그 일을 할 수 있는지 아는 사람 있나요?

답변1

gufw및 기타 기본 제공 방화벽은 애플리케이션별로 필터링하도록 설계되지 않았습니다. gufw에 대한 복잡하지 않은 GUI 프런트엔드 ufw이고 애플리케이션 수준에서 필터링하도록 설계되지 않았습니다. IP 기반 기본 필터링 규칙을 설정하기 위한 복잡하지 않은 프런트엔드일 뿐입니다. , 포트 등

ufw당신이 찾고 있는 것은 수용할 수 있고 수용할 수 있는 표준 Linux 내 방화벽 규칙 세트를 뛰어넘는 것입니다 gufw. 있다몇 가지 제안 방법(연결된 것은 그룹 기반 컨트롤이므로 '네트에 액세스하려는 애플리케이션을 특정 그룹에 추가해야 합니다), 다음과 같은 다른 애플리케이션도 있습니다.두안, 애플리케이션 계층에서도 이 작업을 수행할 수 있습니다.

답변2

인터넷 접속을 차단할 수 있는 방법 중 하나애플리케이션 기준"샌드박싱"입니다.

애플리케이션에 대한 네트워크 액세스는 방화벽 규칙을 사용하여 간접적으로 제어되는 경우가 많습니다. 일반적으로 애플리케이션은 일관된 방식으로 통신을 시도합니다(둘 중 하나).에게특정 포트/주소, 또는~에서특정 포트/주소), 방화벽을 사용하면 인터넷(또는 다른 컴퓨터)에 액세스하는 애플리케이션의 기능을 비활성화하기 위한 노력의 일환으로 특정 포트나 주소에 대한 액세스를 차단할 수 있습니다. 그러나 응용 프로그램이 일관된 방식으로 통신하지 않으면 방화벽 규칙을 작성하기가 매우 어려워지며 모든 네트워킹이 확실히 차단됩니다. 작업하려는 응용 프로그램도 동일한 포트/주소를 사용하여 통신하고 방화벽이 두 응용 프로그램을 모두 차단할 수도 있습니다.

샌드박싱은 애플리케이션에 대한 별도의 환경을 생성하기 위한 모든 전략을 가리키는 일반적인 용어입니다. 이에 대한 일반적인 이유 중 하나는 응용 프로그램이 상호 작용하는 대상을 완전히 인식하는 것입니다. 왜냐하면 기본적으로 일반적으로애플리케이션은 특별히 허용하지 않는 한 "샌드박스" 외부의 어떤 항목에도 액세스할 수 없습니다..

완전한 설정에 대해 설명하지는 않겠지만 Docker 및 Kubernetes와 같은 소프트웨어는 정확히 이를 염두에 두고 설계되었습니다. "컨테이너"(샌드박스라고도 함)에서 실행되는 소프트웨어에 대한 네트워크 액세스를 최대한 적게 또는 많이 허용할 수 있습니다.

말할 필요도 없이 실행해야 할 작업이 훨씬 더 많습니다.모든 것컨테이너 내부에 있지만 특히 우려되는 몇 가지 애플리케이션이 있는 경우에는 가치가 있을 수 있습니다.

답변3

GNU/Linux용 Douane 개인 방화벽

가능한 해결책을 하나 찾았습니다.GNU/Linux용 Douane 개인 방화벽-방문 페이지,새로운 홈페이지.

그러나 귀하의 Ubuntu용 패키지 버전을 찾지 못했습니다.


지원됨:

  • 애플리케이션/라이브러리에 의해 생성되는 모든 나가는 연결
  • 프로토콜 : 모두(NetFilter와 동일)
  • 방향 : 발신 - 듣기

지원되지 않음:

  • 비사용자 공간 연결: netbios/etc... (커널)
  • Iptables (douane에서는 사용하지 않으나, douane과 병행 사용을 권장함)
  • 방향 : 수신(이 경우 iptables 사용)

모든 것이 꽤 잘 설명되어 있기 때문에Douane - GitLab 편집 페이지, 컴파일 과정에는 아무런 문제가 없습니다.

관련 정보