Commit graph

1388 commits

Author SHA1 Message Date
Gustavo Iñiguez Goia
3d99eae3ae
i18n: updated translations 2023-05-19 18:26:07 +02:00
Gustavo Iñiguez Goia
d18a2946e5
Merge pull request #945 from ovari/master
Update README.md
2023-05-19 13:06:26 +02:00
ovari
de082f445d
Update README.md
https://hosted.weblate.org/widgets/opensnitch/?lang=&component=glossary#multi
2023-05-19 19:03:45 +10:00
Gustavo Iñiguez Goia
6c456aefba
sys fw: fixed race condition reloading rules 2023-05-19 01:35:20 +02:00
Gustavo Iñiguez Goia
7c631376db
ui, fw: avoid unnecessary rules reloads
- When changing a policy, disable it until we receive a response.
  Maybe we should even delay it a little bit more.
- When editing a fw rule, disable the Save button if the user didn't
  change any field.
2023-05-19 01:24:56 +02:00
Gustavo Iñiguez Goia
de198fd826
fw: fixed leak stopping rules checker 2023-05-18 23:28:42 +02:00
Gustavo Iñiguez Goia
13ef497538
Merge pull request #944 from davide125/shebang
ui: remove unnecessary shebang
2023-05-18 23:08:29 +02:00
Gustavo Iñiguez Goia
8440964ed2
Merge pull request #943 from davide125/bump
ui: bump unicode_slugify to 0.1.5
2023-05-18 23:08:11 +02:00
Davide Cavalca
c6153ec661 ui: remove unnecessary shebang 2023-05-18 12:04:14 -07:00
Davide Cavalca
b3ecb69a5a ui: bump unicode_slugify to 0.1.5 2023-05-18 11:27:21 -07:00
Gustavo Iñiguez Goia
f3a621e192
changed system requirements reading 2023-05-18 14:32:03 +02:00
Gustavo Iñiguez Goia
8513c0dd7f
Added system requirements check
Added flag to check system requirements.
Related: #774
2023-05-18 14:23:40 +02:00
Gustavo Iñiguez Goia
6b297a93b1
ci: removed compiling for 5.8 kernel 2023-05-17 17:28:55 +02:00
Gustavo Iñiguez Goia
96a962be2b
ci fixes 2023-05-17 13:00:13 +02:00
Gustavo Iñiguez Goia
0bb46197cc
ci fixes 2023-05-17 12:54:36 +02:00
Gustavo Iñiguez Goia
f97e7392a3
ci fixes 2023-05-17 12:26:49 +02:00
Gustavo Iñiguez Goia
ba64379348
ebpf: new way of compiling the modules
- Don't rename libbpf's bpf_map_def struct, and distribute the needed bpf
  headers.
  The bpf_map_def struct has been deprecated for quite some time now,
  and it was been removed on >= 6.2 anyway.
  We still need it, because we use gobpf.
- Improved compilation behaviour:
  - We don't require the kernel sources anymore. We can just use the
    kernel headers from the distribution.
  - There's no need to copy the sources to the kernel tree, the modules
    can be compiled from the ebpf_prog/ dir.
- Compiling against kernels 6.x seems to solve the problem we had with
  VPNs, where connections were not intercepted with modules compiled
  against 5.8, on kernels >= 5.19.

The modules has been tested on kernels 4.17, 5.4, 5.10, 5.15, 6.1 and
6.2 (kernel connections included).

Closes: #939
2023-05-17 01:20:53 +02:00
Gustavo Iñiguez Goia
9d353102df
ui: display warning if the systray is not available
Some DEs and WMs don't support systray icons. In this situation we
display the GUI after 10s.

However many users were confused about this behaviour, thinking that
this delay displaying the GUI was a bug (#937).

Hopefully with a warning to the terminal and the desktop will help
them to know what's going on.
2023-05-13 20:47:24 +02:00
Gustavo Iñiguez Goia
2b9b9ab166
ui, ruleseditor: fixed crash on old distros
placeHolder is not supported for Combos on old PyQt versions, and we're
not using it anyway.
2023-05-13 17:50:56 +02:00
Gustavo Iñiguez Goia
fb7e84941f
ui, fw: firewll rule improvements
- Added tooltips with help messages for each rule option.
- Improved options title (ex:"limit over 1/MB/s" instead of
  "limit over units == 1/MB/s").
2023-05-13 01:31:54 +02:00
Gustavo Iñiguez Goia
474ad7636d
close ebpf perf module on stopping the monitor 2023-05-10 00:02:53 +02:00
Gustavo Iñiguez Goia
de283f8430
ui,fw: disable interaction if there're no nodes 2023-05-09 22:29:01 +02:00
Gustavo Iñiguez Goia
f943c69c79
ui, config: added constant needed by ConnDetails 2023-05-08 21:31:13 +02:00
Gustavo Iñiguez Goia
1b8d1ae227
ui: added option to view details of a connection
Allow from the Events view, display the details of a connection.
The dialog allows to copy the details.

https://github.com/evilsocket/opensnitch/issues/929#issuecomment-1535530944
2023-05-08 16:51:08 +02:00
Gustavo Iñiguez Goia
8954145735
ui, sys fw: reformat how expressions are painted
instead of "== tcp dport 8888" display "tcp dport == 8888"
2023-05-04 15:23:10 +02:00
Gustavo Iñiguez Goia
1ff61a913c
ui: improved system fw rules management
- Allow to copy rules to clipboard with CTRL-c
- Added contextual menus:
  - edit to open the editor dialog.
  - Action, to change the rule verdict without opening the rule dialog.
2023-05-04 14:57:53 +02:00
Gustavo Iñiguez Goia
6121a5b987
ui, fw: allow to delete multiple rules
- Allow to delete multiple fw rules.
- Moved enable_rule() code to firewall/.
2023-05-03 17:51:37 +02:00
Gustavo Iñiguez Goia
dd7476fe52
ui: fw rules improvements
- Fixed error validating some meta expressions.
- Added option to enable/disable fw rules.
- Limit fw rules deletion to 1 rule for now, until a bug is fixed.
2023-05-03 01:29:13 +02:00
Gustavo Iñiguez Goia
d88a253d9c
ui: refresh rules list after delete a rule
Related: #921
2023-05-02 20:59:38 +02:00
Gustavo Iñiguez Goia
c6decf1bad
ui: refresh rules list when adding/editing a rule
Related: #921
2023-05-02 00:25:13 +02:00
Gustavo Iñiguez Goia
4570491523
allow to filter connections by source port
- Allow to filter connections by source port.
2023-05-01 14:48:34 +02:00
Gustavo Iñiguez Goia
57739cc974
rules: allow to filter connections by source ip/net
- Allow to filter connections by source IP/Network.
  (it also may be useful filter by source port)
- Removed AlwaysOnTop Hint from rules editor dialog.

Closes #922
2023-04-29 18:47:44 +02:00
Gustavo Iñiguez Goia
79754860de
ui, fw: validate int values when adding fw rules 2023-04-29 01:52:35 +02:00
Gustavo Iñiguez Goia
45576fe9f3
ui, fw: validate IPs when adding fw rules 2023-04-29 01:34:48 +02:00
Gustavo Iñiguez Goia
bd9d4eb4c6
ui, fw: added target parameters column
Display target parameters (reject >>with tcp reset<<) on the firewall
table.
2023-04-27 00:30:39 +02:00
Gustavo Iñiguez Goia
0f443bbea8
ui, stats: added contextual menu to fw table
Added option to delete rules by right cliking on a row.
2023-04-27 00:25:20 +02:00
Gustavo Iñiguez Goia
2341b69fe7
added script to dump ebpf maps 2023-04-24 17:55:05 +02:00
Gustavo Iñiguez Goia
cbdb00b620
deb: remove autostart file on uninstall
Closes #916
2023-04-22 23:38:36 +02:00
Gustavo Iñiguez Goia
a1948e259a
Bump versions to 1.6.0 2023-04-22 12:32:53 +02:00
Gustavo Iñiguez Goia
5a0a0161d7
added how to launch the GUI after installation 2023-04-22 11:47:57 +02:00
Gustavo Iñiguez Goia
e8ff8349f2
ui: improved notifications behaviour
Up until now, clicking on a system notification caused several
behaviours depending on the Desktop Environment:
 - On Gnome it executed opensnitch_ui.desktop, which as of today kills
   the running opensnitch-ui process, and relaunches it.
 - On other DEs the notifications was just dismissed.

To improve the first behaviour, the Hint "desktop-entry" has been removed.
Now clicking on a notification on Gnome will bring the main window to the
front if it's opened.

On the other hand a new button has been added to the notifications, to
open the main window if it's not opened, or bring it to the front
otherwise.
2023-04-22 01:35:58 +02:00
Gustavo Iñiguez Goia
19890062ff
added more logs for better issues debugging
- Log packet mark, which may help debugging VPN connections for example.
- Log the nfqueue number when we fail to setup the queue.
  * Suggest to restart the computer on one particular case (#912).
2023-04-21 23:28:13 +02:00
Gustavo Iñiguez Goia
74b6bc2c29
ui: improved DefaultAction behaviour
- On the very first install, or if the GUI's settings.conf file was not
  created, GUI's DefaultAction item was not configured properly.
- Now when the daemon is not connected to the GUI, it'll use the
  DefaultAction configured in /etc/opensnitchd/default-config.json
- When the daemon is connected to the GUI, the GUI will reconfigure
  daemon's DefaultAction value when the one defined by the GUI.
  In this case the value defined in default-config.json is not modified,
  it'll only be valid while it's connected to the GUI.

Now when opening Preferences->Nodes, it'll display daemon's
DefaultAction defined in the file default-config.json file, which is the
default action applied when the daemon is not connected to the GUI.

Related: #884 , #896
2023-04-16 00:49:51 +02:00
Gustavo Iñiguez Goia
fb27e4cbb1
ui,fw: allow to use CIDR notation to add IPs
When adding firewall rules with IPs ranges, allow to use CIDR notation
(1.2.3.4/56).
Previously only 2.2.2.3-2.2.2.100 was supported.
2023-04-15 00:41:22 +02:00
Gustavo Iñiguez Goia
fe88841640
sys fw: support ports range operators
Allow to use operators (==, !=) when adding firewall rules with port
ranges (444-555).
2023-04-15 00:33:47 +02:00
Gustavo Iñiguez Goia
e32881c03f
sys fw: allow to apply operators on Meta and Ct expressions
Allow to apply operators (==, !=) on Meta (mark, skuid, skgid, etc) and
Conntrack Mark expressions.
2023-04-13 01:36:59 +02:00
Gustavo Iñiguez Goia
05bb37e862
ui, fw: added more checks for rules creation
- Don't allow a 0 or empty statement value, except for Meta.
- snat, dnat and redirect parameters must contain ":" to specify a port
  or ip+port (192.168.1.1:8080, :8080).
- queue verdict parameter must be an integer.
2023-04-13 00:07:08 +02:00
Gustavo Iñiguez Goia
31f9f904f3
ui, fw: allow to configure verdicts parameters
- Allow to configure DNAT, SNAT, REDIRECT and QUEUE verdicts' parameters.
- Allow to add rules to FORWARD, PREROUTING and POSTROUTING chains.
2023-04-12 22:45:17 +02:00
Gustavo Iñiguez Goia
d374b4df02
ui, views: allow to copy cells' value
Allow to copy cells values when on a detailed view, by double clicking
on a cell.
2023-04-09 13:05:52 +02:00
Gustavo Iñiguez Goia
762503a5f0
Merge pull request #900 from 154pinkchairs/openrc-support
feat(daemon): add OpenRC script
2023-04-08 15:29:13 +02:00