54 lines
4.3 KiB
HTML
Executable File
54 lines
4.3 KiB
HTML
Executable File
<html>
|
|
<head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
|
<title>Re: GSoC Port Forwarding</title>
|
|
<link rel="important stylesheet" href="">
|
|
<style>div.headerdisplayname {font-weight:bold;}
|
|
</style></head>
|
|
<body>
|
|
<table border=0 cellspacing=0 cellpadding=0 width="100%" class="header-part1"><tr><td><div class="headerdisplayname" style="display:inline;">Oggetto: </div>Re: GSoC Port Forwarding</td></tr><tr><td><div class="headerdisplayname" style="display:inline;">Mittente: </div>Marek Marczykowski-Górecki <marmarek@invisiblethingslab.com></td></tr><tr><td><div class="headerdisplayname" style="display:inline;">Data: </div>23/06/2021, 23:11</td></tr></table><table border=0 cellspacing=0 cellpadding=0 width="100%" class="header-part2"><tr><td><div class="headerdisplayname" style="display:inline;">A: </div>Giulio <giulio@gmx.com></td></tr><tr><td><div class="headerdisplayname" style="display:inline;">CC: </div>Frédéric Pierret <frederic.pierret@qubes-os.org></td></tr></table><br>
|
|
<div class="moz-text-plain" wrap=true graphical-quote=true style="font-family: -moz-fixed; font-size: 14px;" lang="x-unicode"><pre wrap class="moz-quote-pre">
|
|
On Wed, Jun 23, 2021 at 04:37:20PM +0200, Giulio wrote:
|
|
</pre><blockquote type=cite style="color: #007cff;"><pre wrap class="moz-quote-pre">
|
|
<span class="moz-txt-citetags">> </span>Hello,
|
|
<span class="moz-txt-citetags">> </span>thank you again for your time and the explanations, as well as the
|
|
<span class="moz-txt-citetags">> </span>network graph. I have now a better understanding of the overall design
|
|
<span class="moz-txt-citetags">> </span>and I am moving myself trhough the source code in order to think what to
|
|
<span class="moz-txt-citetags">> </span>place where.
|
|
<span class="moz-txt-citetags">> </span>
|
|
<span class="moz-txt-citetags">> </span>So, in order to translate what we discussed in practice and also check
|
|
<span class="moz-txt-citetags">> </span>my understanding of the code so far:
|
|
<span class="moz-txt-citetags">> </span>
|
|
<span class="moz-txt-citetags">> </span>1) In core-admin-client/qubesadmin/firewall.py firewall.py > The code
|
|
<span class="moz-txt-citetags">> </span>needs to support the new options for the rule (action=forward
|
|
<span class="moz-txt-citetags">> </span>frowardtype=<internal/external> srcports=443-443 srchosts=0.0.0.0/0
|
|
<span class="moz-txt-citetags">> </span>2) In core-admin/qubes/firewall.py -> The code needs to support the same
|
|
<span class="moz-txt-citetags">> </span>options as the point above
|
|
<span class="moz-txt-citetags">> </span>3) In core-admin/qubes/vm/mix/net.py -> The most important logic goes
|
|
<span class="moz-txt-citetags">> </span>here. Here there is the need to resolve the full network chain for
|
|
<span class="moz-txt-citetags">> </span>external port forwarding. From here it is possible to add the respective
|
|
<span class="moz-txt-citetags">> </span>rules to the QubesDB of each netvm in he chain and trigger a reload event.
|
|
<span class="moz-txt-citetags">> </span>4) in core-agent-linux/qubesagent/firewall.py -> Here goes the logic for
|
|
<span class="moz-txt-citetags">> </span>building the correct syntax for iptables or nft and the actual execution
|
|
<span class="moz-txt-citetags">> </span>
|
|
<span class="moz-txt-citetags">> </span>Does it makes sense for you?
|
|
</pre></blockquote><pre wrap class="moz-quote-pre">
|
|
|
|
Yes, I think you got this perfectly correct.
|
|
|
|
</pre><blockquote type=cite style="color: #007cff;"><pre wrap class="moz-quote-pre">
|
|
<span class="moz-txt-citetags">> </span>I now totally understand your doubts, and I think the simplest solution
|
|
<span class="moz-txt-citetags">> </span>then would be a time/date picker, so if the user is planning anything
|
|
<span class="moz-txt-citetags">> </span>specific he can configure all the set of rules to the same expiration
|
|
<span class="moz-txt-citetags">> </span>timewithout incurring in the synchronization issues you mentioned.
|
|
</pre></blockquote><pre wrap class="moz-quote-pre">
|
|
|
|
Yes, that could work, with some easy way to use the same time for
|
|
multiple rules (for example default to the last choice).
|
|
|
|
<div class="moz-txt-sig">--
|
|
Best Regards,
|
|
Marek Marczykowski-Górecki
|
|
Invisible Things Lab
|
|
</div></pre></div></body>
|
|
</html>
|
|
</table></div> |