OpenSnitch 所做的主要事情就是跟踪你机器上安装的应用程序所发起的互联网请求。OpenSnitch 允许你去创建规则以同意或阻止那个应用程序发起的互联网访问。当一个应用程序尝试去访问互联网而没有相应的访问规则存在时,就会出现一个对话框,这个对话框让你去选择允许还是阻止那个连接。你也可以决定这个新规则是应用到进程上、具体的 URL 上、域名上、单个实例上,以及本次会话还是永久有效。
在 Linux 中安装 OpenSnitch:
在你开始之前,你必须正确安装了 Go,并且已经定义好了 $GOPATH 环境变量。安装必需的依赖
sudoapt-get install protobuf-compiler libpcap-dev libnetfilter-queue-dev python3-pip
go get github.com/golang/protobuf/protoc-gen-go
go get-u github.com/golang/dep/cmd/dep
python3 -m pip install --user grpcio-tools
接下来,克隆 OpenSnitch 仓库。这里可能会出现一个没有 Go 文件的信息,不用理它。如果出现 git 没有找到的信息,那么你需要首先去安装 Git。
go get github.com/evilsocket/opensnitch
cd $GOPATH/src/github.com/evilsocket/opensnitch
如果没有正确设置 $GOPATH 环境变量,运行上面的命令时将会出现一个 “no such folder found” 的错误信息。只需要进入到你刚才克隆仓库位置的 evilsocket/opensnitch 文件夹中即可。现在,我们构建并安装它
make
sudomake install
如果出现 “dep command could not be found” 的错误信息,在 $PATH 中添加 $GOPATH/bin 即可。
安装完成后,我们将要启动它的守护程序和图形用户界面。
sudosystemctl enable opensnitchd
sudo service opensnitchd start
opensnitch-ui