nftables เดชเดพเด•เตเด•เดฑเตเดฑเต เดซเดฟเตฝเดŸเตเดŸเตผ 0.9.1 เดฑเดฟเดฒเต€เดธเต

เด’เดฐเต เดตเตผเดทเดคเตเดคเต† เดตเดฟเด•เดธเดจเดคเตเดคเดฟเดจเต เดถเต‡เดทเด‚ เด…เดตเดคเดฐเดฟเดชเตเดชเดฟเดšเตเดšเต เดชเดพเด•เตเด•เดฑเตเดฑเต เดซเดฟเตฝเดŸเตเดŸเตผ เดฑเดฟเดฒเต€เดธเต nftables 0.9.1, IPv6, IPv4, ARP, เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เดฌเตเดฐเดฟเดกเตเดœเตเด•เตพ เดŽเดจเตเดจเดฟเดตเดฏเตโ€Œเด•เตเด•เดพเดฏเตเดณเตเดณ เดชเดพเด•เตเด•เดฑเตเดฑเต เดซเดฟเตฝเดŸเตเดŸเดฑเดฟเด‚เด—เต เด‡เตปเตเดฑเตผเดซเต‡เดธเตเด•เตพ เดเด•เต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† iptables, ip6table, arptables, ebtables เดŽเดจเตเดจเดฟเดตเดฏเตโ€Œเด•เตเด•เต เดชเด•เดฐเดฎเดพเดฏเดฟ เดตเดฟเด•เดธเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต. nftables เดชเดพเด•เตเด•เต‡เดœเดฟเตฝ เดฏเต‚เดธเตผ เดธเตโ€Œเดชเต†เดฏเตโ€Œเดธเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เดชเดพเด•เตเด•เดฑเตเดฑเต เดซเดฟเตฝเดŸเตเดŸเตผ เด˜เดŸเด•เด™เตเด™เตพ เด‰เตพเดชเตเดชเต†เดŸเตเดจเตเดจเต, เด…เดคเต‡เดธเดฎเดฏเด‚ เด•เต‡เตผเดฃเตฝ-เดฒเต†เดตเตฝ เดตเตผเด•เตเด•เต เดจเตฝเด•เตเดจเตเดจเดคเต 3.13 เดฑเดฟเดฒเต€เดธเต เดฎเตเดคเตฝ Linux เด•เต‡เตผเดฃเดฒเดฟเตปเตเดฑเต† เดญเดพเด—เดฎเดพเดฏ nf_tables เดธเดฌเตโ€Œเดธเดฟเดธเตเดฑเตเดฑเดฎเดพเดฃเต.

เดชเดพเด•เตเด•เดฑเตเดฑเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดกเดพเดฑเตเดฑ เดŽเด•เตโ€Œเดธเตโ€ŒเดŸเตเดฐเดพเด•เตเดฑเตเดฑเตเดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเด‚ เดกเดพเดฑเตเดฑ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดจเดŸเดคเตเดคเตเดจเตเดจเดคเดฟเดจเตเด‚ เดซเตเดฒเต‹ เด•เตบเดŸเตเดฐเต‹เตพ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดฎเตเดณเตเดณ เด…เดŸเดฟเดธเตเดฅเดพเดจ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพ เดจเตฝเด•เตเดจเตเดจ เด’เดฐเต เดœเดจเดฑเดฟเด•เต เดชเตเดฐเต‹เดŸเตเดŸเต‹เด•เตเด•เต‹เตพ-เดธเตเดตเดคเดจเตเดคเตเดฐ เด‡เตปเตเดฑเตผเดซเต‡เดธเต เดฎเดพเดคเตเดฐเดฎเดพเดฃเต เด•เต‡เตผเดฃเตฝ เดฒเต†เดตเตฝ เดจเตฝเด•เตเดจเตเดจเดคเต.
เดซเดฟเตฝเดŸเตเดŸเดฑเดฟเด‚เด—เต เดฒเต‹เดœเดฟเด•เตเด•เตเด‚ เดชเตเดฐเต‹เดŸเตเดŸเต‹เด•เตเด•เต‹เตพ-เดจเดฟเตผเดฆเตเดฆเดฟเดทเตเดŸ เดนเดพเตปเดกเตโ€Œเดฒเดฑเตเด•เดณเตเด‚ เดฏเต‚เดธเตผ เดธเตโ€Œเดชเต†เดฏเตโ€Œเดธเดฟเตฝ เดฌเตˆเดฑเตเดฑเตโ€Œเด•เต‹เดกเดฟเดฒเต‡เด•เตเด•เต เด•เด‚เดชเตˆเตฝ เดšเต†เดฏเตเดฏเตเดจเตเดจเต, เด…เดคเดฟเดจเตเดถเต‡เดทเด‚ เดˆ เดฌเตˆเดฑเตเดฑเตโ€Œเด•เต‹เดกเต เดจเต†เดฑเตเดฑเตโ€Œเดฒเดฟเด™เตเด•เต เด‡เตปเตเดฑเตผเดซเต‡เดธเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด•เต‡เตผเดฃเดฒเดฟเดฒเต‡เด•เตเด•เต เดฒเต‹เดกเตเดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดฌเดฟเดชเดฟเดŽเดซเดฟเดจเต† (เดฌเต†เตผเด•เตเด•เตโ€Œเดฒเดฟ เดชเดพเด•เตเด•เดฑเตเดฑเต เดซเดฟเตฝเดŸเตเดŸเดฑเตเด•เตพ) เด…เดจเตเดธเตเดฎเดฐเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดทเต€เดจเดฟเตฝ เดŽเด•เตโ€Œเดธเดฟเด•เตเดฏเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เด•เต‡เตผเดฃเตฝ เดคเดฒเดคเตเดคเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจ เดซเดฟเตฝเดŸเตเดŸเดฑเดฟเด‚เด—เต เด•เต‹เดกเดฟเตปเตเดฑเต† เดตเดฒเตเดชเตเดชเด‚ เด—เดฃเตเดฏเดฎเดพเดฏเดฟ เด•เตเดฑเดฏเตเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚ เดชเตเดฐเต‹เดŸเตเดŸเต‹เด•เตเด•เต‹เดณเตเด•เตพเด•เตเด•เตŠเดชเตเดชเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเดพเดดเตเดธเดฟเด‚เด—เต เดจเดฟเดฏเดฎเด™เตเด™เดณเตเดŸเต†เดฏเตเด‚ เดฒเต‹เดœเดฟเด•เตเด•เตเด•เดณเตเดŸเต†เดฏเตเด‚ เดŽเดฒเตเดฒเดพ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเตเด‚ เดฏเต‚เดธเตผ เดธเตเดชเต‡เดธเดฟเดฒเต‡เด•เตเด•เต เดจเต€เด•เตเด•เดพเตป เดˆ เดธเดฎเต€เดชเดจเด‚ เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต.

เดชเตเดฐเดงเดพเดจ เด•เดฃเตเดŸเตเดชเดฟเดŸเตเดคเตเดคเด™เตเด™เตพ:

  • IPsec เดชเดฟเดจเตเดคเตเดฃ, เดชเดพเด•เตเด•เดฑเตเดฑเต, IPsec เด…เดญเตเดฏเตผเดคเตเดฅเดจ เดเดกเดฟ, SPI (เดธเต†เด•เตเดฏเต‚เดฐเดฟเดฑเตเดฑเดฟ เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเตผ เดธเต‚เดšเดฟเด•) เดŸเดพเด—เต เดŽเดจเตเดจเดฟเดตเดฏเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เดŸเดฃเตฝ เดตเดฟเดฒเดพเดธเด™เตเด™เดณเตเดŸเต† เดชเตŠเดฐเตเดคเตเดคเดชเตเดชเต†เดŸเตเดคเตเดคเตฝ เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต,

    ... ipsec in ip saddr 192.168.1.0/24
    ... ipsec in spi 1-65536

    เด’เดฐเต เดฑเต‚เดŸเตเดŸเต IPsec เดŸเดฃเดฒเดฟเดฒเต‚เดŸเต† เด•เดŸเดจเตเดจเตเดชเต‹เด•เตเดจเตเดจเตเดฃเตเดŸเต‹ เดŽเดจเตเดจเต เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เดพเดจเตเด‚ เด•เดดเดฟเดฏเตเด‚. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, IPSec เดตเดดเดฟเดฏเดฒเตเดฒ เดŸเตเดฐเดพเดซเดฟเด•เต เดคเดŸเดฏเดพเตป:

    โ€ฆ เดซเดฟเตฝเดŸเตเดŸเตผ เด”เดŸเตเดŸเตเดชเตเดŸเตเดŸเต RT ipsec เดกเตเดฐเต‹เดชเตเดชเต เด•เดพเดฃเตเดจเตเดจเดฟเดฒเตเดฒ

  • IGMP-เดจเตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃ (เด‡เตปเตเดฑเตผเดจเต†เดฑเตเดฑเต เด—เตเดฐเต‚เดชเตเดชเต เดฎเดพเดจเต‡เดœเตเดฎเต†เตปเตเดฑเต เดชเตเดฐเต‹เดŸเตเดŸเต‹เด•เตเด•เต‹เตพ). เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด‡เตปเด•เดฎเดฟเด‚เด—เต IGMP เด—เตเดฐเต‚เดชเตเดชเต เด…เด‚เด—เดคเตเดต เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เตพ เดจเดฟเดฐเดธเดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดจเดฟเดฏเดฎเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเด‚

    nft เด†เดกเต เดฑเต‚เตพ netdev foo bar igmp เดŸเตˆเดชเตเดชเต เดฎเต†เดฎเตเดชเตผเดทเดฟเดชเตเดชเต-เด•เตเดตเดฑเดฟ เด•เตŒเดฃเตเดŸเตผ เดกเตเดฐเต‹เดชเตเดชเต

  • เดธเด‚เด•เตเดฐเดฎเดฃ เดถเตƒเด‚เด–เดฒเด•เตพ เดจเดฟเตผเดตเดšเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดธเดพเดงเตเดฏเดค (เดœเดฎเตเดชเต / เด—เต‹เดŸเตเดŸเต‹). เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต:

    dest = ber เดŽเดจเตเดจเต เดจเดฟเตผเดตเตเดตเดšเดฟเด•เตเด•เตเด•
    เดฑเต‚เตพ เดšเต‡เตผเด•เตเด•เตเด• ip foo เดฌเดพเตผ เดœเดฎเตเดชเต $dest

  • เดคเดฒเด•เตเด•เต†เดŸเตเดŸเดฟเดฒเต† TTL เดฎเต‚เดฒเตเดฏเด™เตเด™เดณเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เด“เดชเตเดชเดฑเต‡เดฑเตเดฑเดฟเด‚เด—เต เดธเดฟเดธเตเดฑเตเดฑเด™เตเด™เตพ (OS เดซเดฟเด‚เด—เตผเดชเตเดฐเดฟเตปเตเดฑเต) เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดฎเดพเดธเตเด•เตเด•เตพเด•เตเด•เตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃ. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด…เดฏเดšเตเดšเดฏเดพเดณเตเดŸเต† OS เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เดชเดพเด•เตเด•เดฑเตเดฑเตเด•เตพ เด…เดŸเดฏเดพเดณเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด•เดฎเดพเตปเดกเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเด‚:

    ... เดฎเต†เดฑเตเดฑเดพ เดฎเดพเตผเด•เตเด•เต เดธเต†เดฑเตเดฑเต osf ttl เดจเต†เดฏเดฟเด‚ เดฎเดพเดชเตเดชเต เด’เดดเดฟเดตเดพเด•เตเด•เตเด• { "Linux" : 0x1,
    "เดตเดฟเตปเดกเต‹เดธเต": 0x2,
    "MacOS": 0x3,
    "เด…เดœเตเดžเดพเดคเด‚" : 0x0}
    ... osf ttl "Linux:4.20" เดชเดคเดฟเดชเตเดชเต เด’เดดเดฟเดตเดพเด•เตเด•เตเด•

  • เด…เดฏเดšเตเดšเดฏเดพเดณเตเดŸเต† ARP เดตเดฟเดฒเดพเดธเดตเตเด‚ เดŸเดพเตผเด—เต†เดฑเตเดฑเต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตปเตเดฑเต† IPv4 เดตเดฟเดฒเดพเดธเดตเตเด‚ เดชเตŠเดฐเตเดคเตเดคเดชเตเดชเต†เดŸเตเดคเตเดคเดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเต. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, 192.168.2.1 เดŽเดจเตเดจ เดตเดฟเดฒเดพเดธเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เด…เดฏเดšเตเดš ARP เดชเดพเด•เตเด•เดฑเตเดฑเตเด•เดณเตเดŸเต† เด•เต—เดฃเตเดŸเตผ เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดจเดฟเดฏเดฎเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเด‚:

    เดŸเต‡เดฌเดฟเตพ เด†เตผเดชเต x {
    เดšเต†เดฏเดฟเตป y {
    เดคเดฐเด‚ เดซเดฟเตฝเดŸเตเดŸเตผ เดนเตเด•เตเด•เต เด‡เตปเดชเตเดŸเตเดŸเต เดฎเตเตปเด—เดฃเดจ เดซเดฟเตฝเดŸเตเดŸเตผ; เดจเดฏเด‚ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•;
    arp saddr ip 192.168.2.1 เด•เตŒเดฃเตเดŸเตผ เดชเดพเด•เตเด•เดฑเตเดฑเตเด•เตพ 1 เดฌเตˆเดฑเตเดฑเตเด•เตพ 46
    }
    }

  • เด’เดฐเต เดชเตเดฐเต‹เด•เตเดธเดฟ (tproxy) เดตเดดเดฟ เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เตพ เดธเตเดคเดพเดฐเตเดฏเดฎเดพเดฏเดฟ เด•เตˆเดฎเดพเดฑเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃ. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดชเต‹เตผเดŸเตเดŸเต 80-เดฒเต‡เด•เตเด•เตเดณเตเดณ เด•เต‹เดณเตเด•เตพ เดชเตเดฐเต‹เด•เตเดธเดฟ เดชเต‹เตผเดŸเตเดŸเต 8080-เดฒเต‡เด•เตเด•เต เดฑเต€เดกเดฏเดฑเด•เตโ€ŒเดŸเต เดšเต†เดฏเตเดฏเดพเตป:

    เดชเดŸเตเดŸเดฟเด• ip x {
    เดšเต†เดฏเดฟเตป y {
    เดคเดฐเด‚ เดซเดฟเตฝเดŸเตเดŸเตผ เดนเตเด•เตเด•เต เดฎเตเตปเด•เดฐเตเดคเตฝ เดฎเตเตปเด—เดฃเดจ -150; เดจเดฏเด‚ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•;
    tcp dport 80 tproxy to :8080
    }
    }

  • SO_MARK เดฎเต‹เดกเดฟเตฝ setsockopt() เดตเดดเดฟ เดธเต†เดฑเตเดฑเต เดฎเดพเตผเด•เตเด•เต เด•เต‚เดŸเตเดคเตฝ เดจเต‡เดŸเดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเตเดณเตเดณ เดธเต‹เด•เตเด•เดฑเตเดฑเตเด•เตพ เด…เดŸเดฏเดพเดณเดชเตเดชเต†เดŸเตเดคเตเดคเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃ. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต:

    เดชเดŸเตเดŸเดฟเด• inet x {
    เดšเต†เดฏเดฟเตป y {
    เดคเดฐเด‚ เดซเดฟเตฝเดŸเตเดŸเตผ เดนเตเด•เตเด•เต เดฎเตเตปเด•เดฐเตเดคเตฝ เดฎเตเตปเด—เดฃเดจ -150; เดจเดฏเด‚ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•;
    tcp dport 8080 เดฎเดพเตผเด•เตเด•เต เดธเต†เดฑเตเดฑเต เดธเต‹เด•เตเด•เดฑเตเดฑเต เดฎเดพเตผเด•เตเด•เต
    }
    }

  • เดšเต†เดฏเดฟเดจเตเด•เตพเด•เตเด•เตเดณเตเดณ เดฎเตเตปเด—เดฃเดจเดพ เดŸเต†เด•เตเดธเตเดฑเตเดฑเต เดจเดพเดฎเด™เตเด™เตพ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃ. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต:

    nft เด†เดกเต เดšเต†เดฏเดฟเตป ip x raw { เดŸเตˆเดชเตเดชเต เดซเดฟเตฝเดŸเตเดŸเตผ เดนเตเด•เตเด•เต เดฎเตเตปเด—เดฃเดจ เดฑเต‹ }
    nft เด†เดกเต เดšเต†เดฏเดฟเตป ip x เดซเดฟเตฝเดŸเตเดŸเตผ { เดŸเตˆเดชเตเดชเต เดซเดฟเตฝเดŸเตเดŸเตผ เดนเตเด•เตเด•เต เดชเตเดฐเดฟเดฑเต—เดŸเตเดŸเดฟเด‚เด—เต เดฎเตเตปเด—เดฃเดจ เดซเดฟเตฝเดŸเตเดŸเตผ; }
    nft เด†เดกเต เดšเต†เดฏเดฟเตป ip x filter_later { เดŸเตˆเดชเตเดชเต เดซเดฟเตฝเดŸเตเดŸเตผ เดนเตเด•เตเด•เต เดฎเตเตปเด—เดฃเดจ เดซเดฟเตฝเดŸเตเดŸเตผ + 10; }

  • SELinux เดŸเดพเด—เตเด•เตพเด•เตเด•เตเดณเตเดณ เดชเดฟเดจเตเดคเตเดฃ (เดธเต†เด•เตเดฎเดพเตผเด•เตเด•เต). เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด’เดฐเต SELinux เดธเดจเตเดฆเตผเดญเดคเตเดคเดฟเตฝ "sshtag" เดŸเดพเด—เต เดจเดฟเตผเดตเดšเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เดพเด‚:

    nft เดธเต†เด•เตเดฎเดพเตผเด•เตเด•เต inet เดซเดฟเตฝเดŸเตเดŸเตผ sshtag "system_u:object_r:ssh_server_packet_t:s0" เดšเต‡เตผเด•เตเด•เตเด•

    เดคเตเดŸเตผเดจเตเดจเต เดจเดฟเดฏเดฎเด™เตเด™เดณเดฟเตฝ เดˆ เดฒเต‡เดฌเตฝ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด•:

    nft เด†เดกเต เดฑเต‚เตพ inet เดซเดฟเตฝเดŸเตเดŸเตผ เด‡เตปเดชเตเดŸเตเดŸเต tcp dport 22 เดฎเต†เดฑเตเดฑเดพ เดธเต†เด•เตเดฎเดพเตผเด•เตเด•เต เดธเต†เดฑเตเดฑเต "sshtag"

    nft เดฎเดพเดชเตเดชเต เดšเต‡เตผเด•เตเด•เตเด• inet เดซเดฟเตฝเดŸเตเดŸเตผ secmapping { type inet_service : secmark; }
    nft เด†เดกเต เดŽเดฒเดฎเต†เตปเตเดฑเต inet เดซเดฟเตฝเดŸเตเดŸเตผ เดธเต†เด•เตเดฎเดพเดชเตเดชเดฟเด‚เด—เต {22 : "sshtag"}
    nft เด†เดกเต เดฑเต‚เตพ inet เดซเดฟเตฝเดŸเตเดŸเตผ เด‡เตปเดชเตเดŸเตเดŸเต เดฎเต†เดฑเตเดฑเดพ เดธเต†เด•เตเดฎเดพเตผเด•เตเด•เต เดธเต†เดฑเตเดฑเต tcp dport เดฎเดพเดชเตเดชเต @secmapping

  • /etc/services เดซเดฏเดฒเดฟเตฝ เดจเดฟเตผเดตเดšเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเตเดชเต‹เดฒเต†, เดŸเต†เด•เตเดธเตเดฑเตเดฑเต เดฐเต‚เดชเดคเตเดคเดฟเตฝ เดชเตเดฐเต‹เดŸเตเดŸเต‹เด•เตเด•เต‹เดณเตเด•เตพเด•เตเด•เต เดจเตฝเด•เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจ เดชเต‹เตผเดŸเตเดŸเตเด•เตพ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเต. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต:

    nft เด†เดกเต เดฑเต‚เตพ xy tcp dport "ssh"
    nft เดฒเดฟเดธเตเดฑเตเดฑเต เดฑเต‚เตพเดธเต†เดฑเตเดฑเต -เดŽเตฝ
    เดชเดŸเตเดŸเดฟเด• x {
    เดšเต†เดฏเดฟเตป y {
    เดชเด™เตเด•เต โ‚ฌ |
    tcp dport "ssh"
    }
    }

  • เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เด‡เตปเตเดฑเตผเดซเต‡เดธเดฟเตปเตเดฑเต† เดคเดฐเด‚ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเต. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต:

    meta iifkind "vrf" เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•

  • "เดกเตˆเดจเดพเดฎเดฟเด•เต" เดซเตเดฒเดพเด—เต เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดฟ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดฟเดฏเตเด•เตŠเดฃเตเดŸเต เดธเต†เดฑเตเดฑเตเด•เดณเตเดŸเต† เด‰เดณเตเดณเดŸเด•เตเด•เด™เตเด™เตพ เดกเตˆเดจเดพเดฎเดฟเด•เต เด†เดฏเดฟ เด…เดชเตเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดŸ เดชเดฟเดจเตเดคเตเดฃ. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด‰เดฑเดตเดฟเดŸ เดตเดฟเดฒเดพเดธเด‚ เดšเต‡เตผเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต "s" เดธเต†เดฑเตเดฑเต เด…เดชเตเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเด‚ 30 เดธเต†เด•เตเด•เตปเดกเต เดจเต‡เดฐเดคเตเดคเต‡เด•เตเด•เต เดชเดพเด•เตเด•เดฑเตเดฑเตเด•เตพ เด‡เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดŽเตปเดŸเตเดฐเดฟ เดชเตเดจเดƒเดธเดœเตเดœเดฎเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚:

    เดชเดŸเตเดŸเดฟเด• x เดšเต‡เตผเด•เตเด•เตเด•
    เดธเต†เดฑเตเดฑเต xs เดšเต‡เตผเด•เตเด•เตเด• {ipv4_addr เดŽเดจเตเดจเต เดŸเตˆเดชเตเดชเต เดšเต†เดฏเตเดฏเตเด•; เดตเดฒเดฟเดชเตเดชเด‚ 128; เดธเดฎเดฏเดชเดฐเดฟเดงเดฟ 30เดธเต†; เดซเตเดฒเดพเด—เตเด•เตพ เดกเตˆเดจเดพเดฎเดฟเด•เต; }
    เดšเต†เดฏเดฟเตป xy เดšเต‡เตผเด•เตเด•เตเด• {เดŸเตˆเดชเตเดชเต เดซเดฟเตฝเดŸเตเดŸเตผ เดนเตเด•เตเด•เต เด‡เตปเดชเตเดŸเตเดŸเต เดฎเตเตปเด—เดฃเดจ 0; }
    เดฑเต‚เตพ xy เด…เดชเตเดกเต‡เดฑเตเดฑเต @s { ip saddr } เดšเต‡เตผเด•เตเด•เตเด•

  • เด’เดฐเต เดชเตเดฐเดคเตเดฏเต‡เด• เด•เดพเดฒเดนเดฐเดฃเดชเตเดชเต†เดŸเตฝ เดตเตเดฏเดตเดธเตเดฅ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเต. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดชเต‹เตผเดŸเตเดŸเต 8888-เตฝ เดŽเดคเตเดคเตเดจเตเดจ เดชเดพเด•เตเด•เดฑเตเดฑเตเด•เดณเตเดŸเต† เดกเดฟเดซเต‹เตพเดŸเตเดŸเต เดŸเตˆเด‚เด”เดŸเตเดŸเต เด…เดธเดพเดงเตเดตเดพเด•เตเด•เดพเตป, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดพเด‚:

    เดŸเต‡เดฌเดฟเตพ เดเดชเดฟ เดซเดฟเตฝเดŸเตเดŸเตผ {
    ct เด•เดพเดฒเดนเดฐเดฃเดชเตเดชเต†เดŸเตฝ เด†เด•เตเดฐเดฎเดฃเดพเดคเตเดฎเด•-tcp {
    เดชเตเดฐเต‹เดŸเตเดŸเต‹เด•เตเด•เต‹เตพ tcp;
    l3proto ip;
    เดจเดฏเด‚ = {เดธเตเดฅเดพเดชเดฟเดšเตเดšเดคเต: 100, close_wait: 4, เด…เดŸเดฏเตเด•เตเด•เตเด•: 4}
    }
    เดšเต†เดฏเดฟเตป เด”เดŸเตเดŸเตเดชเตเดŸเตเดŸเต {
    เดชเด™เตเด•เต โ‚ฌ |
    tcp dport 8888 ct เดŸเตˆเด‚เด”เดŸเตเดŸเต เดธเต†เดฑเตเดฑเต "เด…เด—เตเดฐเดธเต€เดตเต-เดŸเดฟเดธเดฟเดชเดฟ"
    }
    }

  • inet เด•เตเดŸเตเด‚เดฌเดคเตเดคเดฟเดจเตเดณเตเดณ NAT เดชเดฟเดจเตเดคเตเดฃ:

    เดชเดŸเตเดŸเดฟเด• เด‡เดจเต†เดฑเตเดฑเต เดจเดพเดฑเตเดฑเต {
    เดชเด™เตเด•เต โ‚ฌ |
    ip6 daddr dead::2::1 dnat to dead:2::99
    }

  • เด…เด•เตเดทเดฐเดคเตเดคเต†เดฑเตเดฑเตเด•เตพ เด•เดพเดฐเดฃเด‚ เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดŸ เดชเดฟเดถเด•เต เดฑเดฟเดชเตเดชเต‹เตผเดŸเตเดŸเดฟเด‚เด—เต เด•เดดเดฟเดตเตเด•เตพ:

    nft เด†เดกเต เดšเต†เดฏเดฟเตป เดซเดฟเตฝเดŸเตเดŸเตผ เดŸเต†เดธเตเดฑเตเดฑเต

    เดชเดฟเดถเด•เต: เด…เดคเตเดคเดฐเด‚ เดซเดฏเดฒเต‹ เดกเดฏเดฑเด•เตเดŸเดฑเดฟเดฏเต‹ เด‡เดฒเตเดฒ; เดซเดพเดฎเดฟเดฒเดฟ เดเดชเดฟเดฏเดฟเดฒเต† เดŸเต‡เดฌเดฟเตพ "เดซเดฟเตฝเดฑเตเดฑเตผ" เดŽเดจเตเดจเดพเดฃเต‹ เดจเดฟเด™เตเด™เตพ เด‰เดฆเตเดฆเต‡เดถเดฟเดšเตเดšเดคเต?
    เดšเต†เดฏเดฟเตป เดซเดฟเตฝเดŸเตเดŸเตผ เดŸเต†เดธเตเดฑเตเดฑเต เดšเต‡เตผเด•เตเด•เตเด•
    ^^^^^^

  • เดธเต†เดฑเตเดฑเตเด•เดณเดฟเตฝ เด‡เตปเตเดฑเตผเดซเต‡เดธเต เดชเต‡เดฐเตเด•เตพ เดตเตเดฏเด•เตเดคเดฎเดพเด•เตเด•เดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเต:

    sc { เดธเดœเตเดœเดฎเดพเด•เตเด•เตเด•
    inet_service เดŽเดจเตเดจเต เดŸเตˆเดชเตเดชเต เดšเต†เดฏเตเดฏเตเด•. เดŽเด™เตเด•เดฟเตฝ เดชเต‡เดฐเต
    เด˜เดŸเด•เด™เตเด™เตพ = { "ssh" . "eth0"}
    }

  • เดซเตเดฒเต‹ เดŸเต‡เดฌเดฟเตพ เดจเดฟเดฏเดฎเด™เตเด™เดณเตเดŸเต† เดตเดพเด•เตเดฏเด˜เดŸเดจ เดชเตเดคเตเด•เตเด•เดฟ:

    nft เดชเดŸเตเดŸเดฟเด• x เดšเต‡เตผเด•เตเด•เตเด•
    nft เดซเตเดฒเต‹เดŸเต‡เดฌเดฟเตพ เดšเต‡เตผเด•เตเด•เตเด• x เด…เดŸเดฟ {เดนเตเด•เตเด•เต เด‡เตปเด—เตเดฐเต†เดธเตเดธเต เดฎเตเตปเด—เดฃเดจ 0; เด‰เดชเด•เดฐเดฃเด™เตเด™เตพ = { eth0, wlan0 }; }
    เดชเด™เตเด•เต โ‚ฌ |
    nft เด†เดกเต เดฑเต‚เตพ x เดซเต‹เตผเดตเต‡เดกเต เดเดชเดฟ เดชเตเดฐเต‹เดŸเตเดŸเต‹เด•เตเด•เต‹เตพ {tcp, udp } เดซเตเดฒเต‹ เดšเต‡เตผเด•เตเด•เตเด• @ft

  • เดฎเต†เดšเตเดšเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏ JSON เดชเดฟเดจเตเดคเตเดฃ.

เด…เดตเดฒเด‚เดฌเด‚: opennet.ru

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•