first commit
This commit is contained in:
commit
01d7cb1a80
34 files changed
+5723
No files matched your search
@@ -0,0 +1,55 @@
|
||||
#!/bin/bash
|
||||
# THIS FILE IS ADDED FOR COMPATIBILITY PURPOSES
|
||||
#
|
||||
# rc.local — server-mv
|
||||
#
|
||||
# Versão nftables. O firewall (antes ~200 linhas de iptables/ip6tables
|
||||
# espalhadas entre rc.local e test.sh) agora é um único arquivo
|
||||
# declarativo: nftables.conf. A versão anterior, baseada em
|
||||
# iptables/ip6tables, foi preservada em rc.local.iptables — troque de
|
||||
# volta se algo aqui quebrar e você precisar reverter rápido.
|
||||
#
|
||||
# Antes de usar este arquivo em produção:
|
||||
# nft -c -f /home/rodrigo/server-mv/nftables.conf # valida sintaxe
|
||||
# systemctl enable nftables # persistência
|
||||
# Não rode este rc.local E o antigo (rc.local.iptables) ao mesmo tempo —
|
||||
# são duas ferramentas de firewall (nft e iptables-legacy/nft-em-cima-
|
||||
# de-iptables) que podem conflitar se ambas tentarem gerenciar as
|
||||
# mesmas chains.
|
||||
|
||||
set -e
|
||||
|
||||
# ==============================================================
|
||||
# 1. FIREWALL (nftables) — carregamento atômico: se houver erro de
|
||||
# sintaxe no arquivo, o "nft -f" falha ANTES de aplicar qualquer coisa,
|
||||
# então nunca fica um firewall pela metade no ar.
|
||||
# ==============================================================
|
||||
nft -f /home/rodrigo/server-mv/nftables.conf
|
||||
|
||||
# ==============================================================
|
||||
# 2. Ajustes de kernel dependentes de runtime (não cobertos por sysctl.conf)
|
||||
# ==============================================================
|
||||
echo deadline > /sys/block/sda/queue/scheduler
|
||||
echo 64 > /sys/block/sda/queue/max_sectors_kb # melhor para SSD virtual
|
||||
|
||||
echo f > /sys/class/net/enp0s6/queues/tx-0/xps_cpus
|
||||
echo f > /sys/class/net/enp0s6/queues/rx-0/rps_cpus
|
||||
echo 4096 > /sys/class/net/enp0s6/queues/rx-0/rps_flow_cnt
|
||||
|
||||
#tc qdisc add dev enp0s6 root cake bandwidth 1000mbit besteffort
|
||||
#tc qdisc add dev wg0 root cake bandwidth 500mbit besteffort dual-dsthost
|
||||
|
||||
touch /var/lock/subsys/local
|
||||
|
||||
# ==============================================================
|
||||
# 3. XDP / eBPF
|
||||
# ==============================================================
|
||||
ip link set enp0s6 mtu 1500
|
||||
ip link set dev enp0s6 xdp obj /home/rodrigo/xdp/xdp_ddos_filter.o sec xdp
|
||||
ip link set dev wg0 xdp obj /home/rodrigo/xdp/xdp_wg_mtu_optimizer.o sec xdp
|
||||
|
||||
# A bridge do Docker muda de nome a cada recriação da rede (hash do ID),
|
||||
# então esse link precisa ser reaplicado se a rede "dockernet" for recriada.
|
||||
ip link set dev br-02f7820020b4 xdp obj /home/rodrigo/xdp/bridge_xdp.o sec xdp
|
||||
|
||||
cd /home/docker/ebpf-sockmap/ && make load
|
||||
Reference in new issue
Block a user