응용 프로그램을 실행하여 인터넷에 액세스하지 못하게하는 방법을 찾고 싶습니다. 아마도 특정 프로그램을 설치하지 않고도 가능합니다. 내가 찾은 대부분의 답변은 이 게시물 에 관한 것이므로이 솔루션을 사용해 보았습니다. 간단히 말해 인터넷 이 없는 그룹 (관련 ni 명령 사용)을 만들고이 그룹을 사용하여 응용 프로그램을 시작했습니다. 그러나 게시물이 2009 년 이후이고 iptables의 내용이 변경 되었기 때문에 완전히 작동하지 않습니다 (Ubuntu 14.04를 사용하고 있습니다). 예를 들어 ni "ping google.com"
출력을 실행 하면 is가 ping: sendmsg: Operation not permitted
효과적입니다. 그러나 Firefox 또는 wget과 같은 다른 프로그램 (예 🙂 ni firefox
에서는 인터넷 연결이 여전히 작동합니다. 어떻게 해결할 수 있습니까?
답변
apparmor
일부 응용 프로그램의 네트워크 트래픽을 거부 하는 데 사용할 수 있습니다 . 먼저 설치 apparmor
하고 apparmor-utils
..
sudo apt-get install apparmor*
그 후 당신은 당신에게 응용 프로그램에 프로필을 생성 할 수 있습니다 …
sudo aa-genprof /usr/bin/google-chrome
다음 단계는 Networking
프로파일의 부품 을 다음으로 변경 하는 것입니다.
sudo nano /etc/apparmor.d/usr.bin.chromium-browser
audit deny network,
audit deny network inet stream,
deny network inet6 stream,
deny @{PROC}/[0-9]*/net/if_inet6 r,
deny @{PROC}/[0-9]*/net/ipv6_route r,
deny capability net_raw,
그런 다음 apparmor_parser로 구성을 확인하고 구성을 다시로드하십시오.
sudo apparmor_parser -r /etc/apparmor.d/usr.bin.chromium-browser
이 앱의 모드 complain
를 enforce
일명으로 변경합니다 apparmor
.
sudo aa-complain /etc/apparmor.d/usr.bin.chromium-browser