Skip to content

Commit 3a5ae2c

Browse files
committed
allow to limit default-drop logs (anti ddos)
1 parent 43f9166 commit 3a5ae2c

File tree

2 files changed

+4
-1
lines changed

2 files changed

+4
-1
lines changed

defaults/main/1_main.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,9 @@ defaults_nftables:
3838
purge_orphaned: true # purge all unmanaged files from /etc/nftables.d/
3939

4040
log_drop_prefix: 'NFTables DROP'
41+
log_drop_limit: # anti DDOS
42+
enable: false
43+
count: 100
4144
log_group: '' # set to '0' for container workaround => send logs to local ulogd2 daemon
4245
ext: 'nft' # extension used for nftables config-files
4346

templates/etc/nftables.d/table.nft.j2

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ table {{ nft_table.type }} {{ nft_table_name }} {
2828
counter comment "COUNT {{ nft_table_name }}-{{ chain_name }}{% if chain_main %}-{{ chain.policy }}{% endif %}"
2929
{% endif %}
3030
{% if chain_main and chain.log.drop and chain.policy == 'drop' %}
31-
log prefix "{{ NFT_CONFIG.log_drop_prefix }} {{ nft_table_name }}-{% if chain.log.prefix %}{{ chain.log.prefix }}{% else %}{{ chain_name }}{% endif %} "
31+
log prefix "{{ NFT_CONFIG.log_drop_prefix }} {{ nft_table_name }}-{% if chain.log.prefix %}{{ chain.log.prefix }}{% else %}{{ chain_name }}{% endif %} "{% if NFT_CONFIG.log_drop_limit.enable | bool %} limit rate {{ NFT_CONFIG.log_drop_limit.count }}/second{% endif +%}
3232
{% endif %}
3333
}
3434

0 commit comments

Comments
 (0)