mirror of
https://github.com/vyos/vyos-documentation.git
synced 2025-10-26 08:41:46 +01:00
Merge pull request #1092 from sever-sever/synproxy
Add firewal synproxy
This commit is contained in:
commit
0013b57003
@ -351,10 +351,12 @@ The action can be :
|
|||||||
|
|
||||||
* ``queue``: Enqueue packet to userspace.
|
* ``queue``: Enqueue packet to userspace.
|
||||||
|
|
||||||
|
* ``synproxy``: synproxy the packet.
|
||||||
|
|
||||||
.. cfgcmd:: set firewall [ipv4 | ipv6] forward filter rule <1-999999> action
|
.. cfgcmd:: set firewall [ipv4 | ipv6] forward filter rule <1-999999> action
|
||||||
[accept | drop | jump | queue | reject | return]
|
[accept | drop | jump | queue | reject | return | synproxy]
|
||||||
.. cfgcmd:: set firewall [ipv4 | ipv6] input filter rule <1-999999> action
|
.. cfgcmd:: set firewall [ipv4 | ipv6] input filter rule <1-999999> action
|
||||||
[accept | drop | jump | queue | reject | return]
|
[accept | drop | jump | queue | reject | return | synproxy]
|
||||||
.. cfgcmd:: set firewall [ipv4 | ipv6] output filter rule <1-999999> action
|
.. cfgcmd:: set firewall [ipv4 | ipv6] output filter rule <1-999999> action
|
||||||
[accept | drop | jump | queue | reject | return]
|
[accept | drop | jump | queue | reject | return]
|
||||||
.. cfgcmd:: set firewall ipv4 name <name> rule <1-999999> action
|
.. cfgcmd:: set firewall ipv4 name <name> rule <1-999999> action
|
||||||
@ -1264,6 +1266,49 @@ geoip) to keep database and rules updated.
|
|||||||
Match when 'count' amount of connections are seen within 'time'. These
|
Match when 'count' amount of connections are seen within 'time'. These
|
||||||
matching criteria can be used to block brute-force attempts.
|
matching criteria can be used to block brute-force attempts.
|
||||||
|
|
||||||
|
********
|
||||||
|
Synproxy
|
||||||
|
********
|
||||||
|
Synproxy connections
|
||||||
|
|
||||||
|
.. cfgcmd:: set firewall [ipv4 | ipv6] [input | forward] filter rule <1-999999> action synproxy
|
||||||
|
.. cfgcmd:: set firewall [ipv4 | ipv6] [input | forward] filter rule <1-999999> protocol tcp
|
||||||
|
.. cfgcmd:: set firewall [ipv4 | ipv6] [input | forward] filter rule <1-999999> synproxy tcp mss <501-65535>
|
||||||
|
|
||||||
|
Set TCP-MSS (maximum segment size) for the connection
|
||||||
|
|
||||||
|
.. cfgcmd:: set firewall [ipv4 | ipv6] [input | forward] filter rule <1-999999> synproxy tcp window-scale <1-14>
|
||||||
|
|
||||||
|
Set the window scale factor for TCP window scaling
|
||||||
|
|
||||||
|
Example synproxy
|
||||||
|
================
|
||||||
|
Requirements to enable synproxy:
|
||||||
|
|
||||||
|
* Traffic must be symmetric
|
||||||
|
* Synproxy relies on syncookies and TCP timestamps, ensure these are enabled
|
||||||
|
* Disable conntrack loose track option
|
||||||
|
|
||||||
|
.. code-block:: none
|
||||||
|
|
||||||
|
set system sysctl parameter net.ipv4.tcp_timestamps value '1'
|
||||||
|
|
||||||
|
set system conntrack tcp loose disable
|
||||||
|
set system conntrack ignore ipv4 rule 10 destination port '8080'
|
||||||
|
set system conntrack ignore ipv4 rule 10 protocol 'tcp'
|
||||||
|
set system conntrack ignore ipv4 rule 10 tcp flags syn
|
||||||
|
|
||||||
|
set firewall global-options syn-cookies 'enable'
|
||||||
|
set firewall ipv4 input filter rule 10 action 'synproxy'
|
||||||
|
set firewall ipv4 input filter rule 10 destination port '8080'
|
||||||
|
set firewall ipv4 input filter rule 10 inbound-interface interface-name 'eth1'
|
||||||
|
set firewall ipv4 input filter rule 10 protocol 'tcp'
|
||||||
|
set firewall ipv4 input filter rule 10 synproxy tcp mss '1460'
|
||||||
|
set firewall ipv4 input filter rule 10 synproxy tcp window-scale '7'
|
||||||
|
set firewall ipv4 input filter rule 1000 action 'drop'
|
||||||
|
set firewall ipv4 input filter rule 1000 state invalid 'enable'
|
||||||
|
|
||||||
|
|
||||||
***********************
|
***********************
|
||||||
Operation-mode Firewall
|
Operation-mode Firewall
|
||||||
***********************
|
***********************
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user