Commit graph

912 commits

Author SHA1 Message Date
Gustavo Iñiguez Goia
214e1b3c49 added priority rules to bypass/extend interception
In some scenarios (#47) may be useful to have a set of rules handled from
OpenSnitch, although you can accomplish it with other software (ufw,...).

This rules will sit just above default intercetion, so if you want to
allow or deny something, just place it here.

These priority rules are defined in /etc/opensnitchd/fw.json, with the
following format (example):

{
    "PriorityRules": {
        "out": {
            "allow": [
            ],
            "deny": [
                "-m conntrack --ctstate INVALID",
                "-p tcp ! --syn -m conntrack --ctstate NEW"
            ]
        }
    }
}

The structure must exist even if you haven't defined any rule, for
example:
{
    "PriorityRules": {
        "out": {
            "allow": [
            ],
            "deny": [
            ]
        }
    }
}
2020-07-25 21:23:53 +02:00
Gustavo Iñiguez Goia
ace124ad6a added the host to the options of the pop-up dialog
The host to where a process is connecting to was missing in the options
list, when the connection to allow was a query to resolve the domain
name. Reported here: #48

Also added the connection port to the rule name.
2020-07-20 23:59:14 +02:00
Gustavo Iñiguez Goia
c0fb84a0e3 changed go.mod to not depend on a fixed release 2020-07-17 02:03:03 +02:00
Gustavo Iñiguez Goia
b547067f61 close nfqueue descriptors gracefully
When the daemon is stopped, we need to close opened netfilter recurses.
Otherwise we can fall into a situation where we leave NFQUEUE queues
opened, which causes opensnitch to not run anymore until system restart
or a manual intervention, because there's a NFQUEUE queue already created
with the same ID.

This is what was happening as a collateral effect of #41.
2020-07-17 01:29:58 +02:00
Gustavo Iñiguez Goia
078df0ffb2 removed dep ensure when building rpm packages 2020-07-16 23:54:50 +02:00
Gustavo Iñiguez Goia
313ae0d2cb
Merge pull request #49 from raphting/gomod
Use go mod instead of dep
2020-07-16 23:52:43 +02:00
Raphael
ffbb138bd6 equip go.mod file with packages 2020-07-16 23:06:32 +02:00
Raphael
563247a87c add go.mod and remove old Gopkg.lock 2020-07-16 23:05:25 +02:00
Raphael
1248a2326c remove go dep from Makefile 2020-07-16 23:04:11 +02:00
Gustavo Iñiguez Goia
9eb589a3ea v1.0.0 release
Current version is stable enough (based on users' feedback) to get it out
of the release candidate state. OpenSnitch works and is usable.

There's a lot of work yet to do, so let's start from a fresh and shiny
release number.
2020-07-16 00:48:32 +02:00
Gustavo Iñiguez Goia
a5994b0c4f stop receiving notifications properly
Under certain circunstances, the notifications goroutine entered into an
infinite loop.
2020-07-06 18:49:58 +02:00
Gustavo Iñiguez Goia
3853d412b4 audit: better rules deletion
if the daemon does not exit cleanly, the rules were not cleaned
correctly.
2020-07-03 08:28:33 +02:00
Gustavo Iñiguez Goia
97139ecc6b UI: shorten default rules name
Default rules name can be extremely long when the rule is of type list.
It still will be in some cases, but should work in most cases.

closes #37
2020-06-26 22:47:44 +02:00
Gustavo Iñiguez Goia
8494bfd982 UI: changed preferences dialog title 2020-06-26 21:53:17 +02:00
Gustavo Iñiguez Goia
7c5e324bc9 UI: force to bring the allow/deny pop-up to the front
This solves an issue where the pop-up was only displayed on the same
screen/desktop/workspace where the main window was.
2020-06-25 22:38:09 +02:00
Gustavo Iñiguez Goia
0d80af45c2 UI: force to bring the allow/deny pop-up to the front
This solves an issue where the pop-up was only displayed on the same
screen/desktop/workspace where the main window was.
2020-06-25 18:52:29 +02:00
Gustavo Iñiguez Goia
714aa311a0 Bump version to v1.0.0rc11 2020-06-24 00:41:36 +02:00
Gustavo Iñiguez Goia
4a99548ef3 Merge branch 'ui2.0' into main 2020-06-23 02:20:44 +02:00
Gustavo Iñiguez Goia
de00e89302 UI: set pop-up action buttons focus
Set the focus of the action buttons deny/allow, based on the configured
action.
2020-06-23 02:09:35 +02:00
Gustavo Iñiguez Goia
db02c4a394 UI: improved general tab fields filtering 2020-06-23 02:04:25 +02:00
Gustavo Iñiguez Goia
0af606d348 UI: fixed columns sorting after restoring settings
When restoring columns size state, the clicked events of the headers
(qtableview) were being fired, so the sort order was being not
respected.

Ensure also that changes to the general tab only affects to that tab.
2020-06-23 00:48:48 +02:00
Gustavo Iñiguez Goia
fe639887f0 UI: save settings on hiding stats window
Since we show and hide the stats window just by clicking on the systray
icon, the window is not closed, or at least the closEvent() is not being
fired, so the settings were not being saved.
2020-06-22 17:03:08 +02:00
Gustavo Iñiguez Goia
2522b8ef02 fixed CWD parsing when using audit proc monitor method 2020-06-22 14:26:07 +02:00
Gustavo Iñiguez Goia
8a2fe51abe Merge branch 'ui2.0' into main 2020-06-21 00:47:08 +02:00
Gustavo Iñiguez Goia
3011d9fd53 UI: show/hide stats window by clicking on the systray icon
closes #39
2020-06-21 00:40:01 +02:00
Gustavo Iñiguez Goia
73eb5b65eb UI: display process path if it's hidden
If a process path does not appear in the app name or the process
cmdline, display it on the pop-up dialog.
2020-06-21 00:14:20 +02:00
Gustavo Iñiguez Goia
6d24c5464c fixed race conditions when manipulating rules 2020-06-20 18:58:59 +02:00
Gustavo Iñiguez Goia
43f2a56196
Update LICENSE 2020-06-20 17:48:59 +02:00
Gustavo Iñiguez Goia
dda720576b
Update README.md 2020-06-20 17:39:07 +02:00
Gustavo Iñiguez Goia
0c640806f9 UI: added CWD field.
Added Current Working Directory of a process.
2020-06-19 18:26:03 +02:00
Gustavo Iñiguez Goia
c8b1722f3e UI: reset rule name when creating a new one 2020-06-19 18:17:39 +02:00
Gustavo Iñiguez Goia
fc2212f073 return better errors if a regexp rule fails to compile
If a regexp rule fails to compile, return the reason instead of a
generic error. It'll help to debug problems.
2020-06-19 18:02:09 +02:00
Gustavo Iñiguez Goia
23d5f87dd7 Bump UI package version to v1.0.0rc10-2
Fixes #38.
2020-06-17 21:21:23 +02:00
Gustavo Iñiguez Goia
2e5ccf3e63 Merge branch 'ui2.0' into main 2020-06-17 20:49:29 +02:00
Gustavo Iñiguez Goia
e217dedef7 UI: fixed crash when clicking on a user name
fixes #38
2020-06-17 20:32:12 +02:00
Gustavo Iñiguez Goia
cfc32cbd1c fixed race condition when deleting a rule 2020-06-14 20:30:19 +02:00
Gustavo Iñiguez Goia
b03bbf0506 fixed race conditions setting log level and monitor methods 2020-06-14 20:14:24 +02:00
Gustavo Iñiguez Goia
edfbfbdcb4 Bump version to 1.0.0rc10 2020-06-14 12:34:20 +02:00
Gustavo Iñiguez Goia
506b9b6d87 fixed daemon running with old libnetfilter_queue libs
In old libnetfilter_queue libs, we can't know the UID of the packet
because the function nfq_get_uid is not present.

We check it dynamically on run time, but we were doing it wrong, so the
daemon didn't run with old libs.

Thaks to Pain-Patate for reporting it in #18.
2020-06-14 12:01:34 +02:00
Gustavo Iñiguez Goia
d152af45e2 Merge branch 'ui2.0' into main 2020-06-13 18:55:31 +02:00
Gustavo Iñiguez Goia
970d04f961 UI: added help menu to rules editor dialog 2020-06-13 18:44:00 +02:00
Gustavo Iñiguez Goia
10f74b97cd UI: save nodes columns size
and restore them on startup.
2020-06-13 17:42:12 +02:00
Gustavo Iñiguez Goia
36dd601019 UI: fixed events limit on General tab 2020-06-13 16:40:14 +02:00
Gustavo Iñiguez Goia
034a95918e removed useless firewall log 2020-06-12 01:21:36 +02:00
Gustavo Iñiguez Goia
a9e622017d UI: allow to resize rules table columns and remember position 2020-06-11 01:18:47 +02:00
Gustavo Iñiguez Goia
1aa65b9c4e Merge branch 'ui2.0' into main 2020-06-08 00:01:08 +02:00
Gustavo Iñiguez Goia
39015bd4f5 UI: updated grpc protocol 2020-06-08 00:00:15 +02:00
Gustavo Iñiguez Goia
12d62f548b UI: revert main columns autosizing, allow to restore defined size
Reported here: #23

Now if a user resize a column manually on the first tab, or
adjust it to the column contents by double clicking on the middle
of the columns, the next time the UI is shown the columns size will
be restored.
2020-06-07 00:44:15 +02:00
Gustavo Iñiguez Goia
301e3db0cb UI: improved pop-up dialog widgets resizing 2020-06-07 00:40:33 +02:00
Gustavo Iñiguez Goia
374c5e2f90 UI: fixed pop-up dialog settings
Fixed default settings when it's the first time it's shown.
Fixed default action settings key
Fixed default target configured from the preferences dialog.
Set default pop-up dialog size on shown event.
2020-06-07 00:35:41 +02:00