рд╡рд┐рдХрд╛рд╕рдХреЛ рдПрдХ рд╡рд░реНрд╖ рдкрдЫрд┐
рдХрд░реНрдиреЗрд▓ рд╕реНрддрд░рд▓реЗ рдХреЗрд╡рд▓ рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░реЛрдЯреЛрдХрд▓-рд╕реНрд╡рддрдиреНрддреНрд░ рдЗрдиреНрдЯрд░рдлреЗрд╕ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫ рдЬрд╕рд▓реЗ рдкреНрдпрд╛рдХреЗрдЯрд╣рд░реВрдмрд╛рдЯ рдбрд╛рдЯрд╛ рдирд┐рдХрд╛рд▓реНрди, рдбрд╛рдЯрд╛ рд╕рдЮреНрдЪрд╛рд▓рдирд╣рд░реВ, рд░ рдкреНрд░рд╡рд╛рд╣ рдирд┐рдпрдиреНрддреНрд░рдг рдЧрд░реНрди рдЖрдзрд╛рд░рднреВрдд рдХрд╛рд░реНрдпрд╣рд░реВ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред
рдлрд┐рд▓реНрдЯрд░рд┐рдЩ рддрд░реНрдХ рдЖрдлреИ рд░ рдкреНрд░реЛрдЯреЛрдХрд▓-рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реНрдпрд╛рдиреНрдбрд▓рд░рд╣рд░реВ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рд╕реНрдкреЗрд╕рдорд╛ рдмрд╛рдЗрдЯрдХреЛрдбрдорд╛ рдХрдореНрдкрд╛рдЗрд▓ рд╣реБрдиреНрдЫрдиреН, рддреНрдпрд╕рдкрдЫрд┐ рдпреЛ рдмрд╛рдЗрдЯрдХреЛрдб рдиреЗрдЯрд▓рд┐рдЩреНрдХ рдЗрдиреНрдЯрд░рдлреЗрд╕ рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдХрд░реНрдиреЗрд▓рдорд╛ рд▓реЛрдб рд╣реБрдиреНрдЫ рд░ BPF (рдмрд░реНрдХрд▓реЗ рдкреНрдпрд╛рдХреЗрдЯ рдлрд┐рд▓реНрдЯрд░рд╣рд░реВ) рдХреЛ рд╕рдореНрдЭрдирд╛ рдЧрд░рд╛рдЙрдиреЗ рд╡рд┐рд╢реЗрд╖ рднрд░реНрдЪреБрдЕрд▓ рдореЗрд╕рд┐рдирдорд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░рд┐рдиреНрдЫред рдпреЛ рджреГрд╖реНрдЯрд┐рдХреЛрдгрд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдХрд░реНрдиреЗрд▓ рд╕реНрддрд░рдорд╛ рдЪрд▓рд┐рд░рд╣реЗрдХреЛ рдлрд┐рд▓реНрдЯрд░рд┐рдЩ рдХреЛрдбрдХреЛ рд╕рд╛рдЗрдЬ рдШрдЯрд╛рдЙрди рд░ рдкреНрд░реЛрдЯреЛрдХрд▓рд╣рд░реВрд╕рдБрдЧ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛ рд╕реНрдкреЗрд╕рдорд╛ рдХрд╛рдо рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐ рдкрд╛рд░реНрд╕рд┐рдЩ рдирд┐рдпрдо рд░ рддрд░реНрдХрдХрд╛ рд╕рдмреИ рдХрд╛рд░реНрдпрд╣рд░реВ рд╕рд╛рд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред
рдореБрдЦреНрдп рдЖрд╡рд┐рд╖реНрдХрд╛рд░рд╣рд░реВ:
- IPsec рд╕рдорд░реНрдерди, рдкреНрдпрд╛рдХреЗрдЯ, IPsec рдЕрдиреБрд░реЛрдз ID, рд░ SPI (рд╕реБрд░рдХреНрд╖рд╛ рдкреНрдпрд╛рд░рд╛рдорд┐рдЯрд░ рд╕реВрдЪрдХрд╛рдВрдХ) рдЯреНрдпрд╛рдЧрдорд╛ рдЖрдзрд╛рд░рд┐рдд рд╕реБрд░реБрдЩ рдареЗрдЧрд╛рдирд╛рд╣рд░реВ рдорд┐рд▓рд╛рдЙрди рдЕрдиреБрдорддрд┐ рджрд┐рдБрджреИред рдЙрджрд╛рд╣рд░рдг рдХреЛ рд▓рд╛рдЧреА,
... ipsec ip sadr 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,
"рд╡рд┐рдиреНрдбреЛрдЬ": режxреи,
"MacOS": режxрей,
"рдЕрдЬреНрдЮрд╛рдд" : режxреж }
... osf ttl рд╕реНрдХрд┐рдк рд╕рдВрд╕реНрдХрд░рдг "Linux: 4.20" - рдкреНрд░реЗрд╖рдХрдХреЛ ARP рдареЗрдЧрд╛рдирд╛ рд░ рд▓рдХреНрд╖рд┐рдд рдкреНрд░рдгрд╛рд▓реАрдХреЛ IPv4 рдареЗрдЧрд╛рдирд╛рд╕рдБрдЧ рдореЗрд▓ рдЦрд╛рдиреЗ рдХреНрд╖рдорддрд╛ред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, 192.168.2.1 рдареЗрдЧрд╛рдирд╛рдмрд╛рдЯ рдкрдард╛рдЗрдПрдХреЛ ARP рдкреНрдпрд╛рдХреЗрдЯрд╣рд░реВрдХреЛ рдХрд╛рдЙрдиреНрдЯрд░ рдмрдврд╛рдЙрдирдХреЛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдИрдВрд▓реЗ рдирд┐рдореНрди рдирд┐рдпрдо рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ:
рддрд╛рд▓рд┐рдХрд╛ arp x {
рдЪреЗрди y {
рдЯрд╛рдЗрдк рдлрд┐рд▓реНрдЯрд░ рд╣реБрдХ рдЗрдирдкреБрдЯ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдлрд┐рд▓реНрдЯрд░; рдиреАрддрд┐ рд╕реНрд╡реАрдХрд╛рд░;
arp saddr ip 192.168.2.1 рдХрд╛рдЙрдиреНрдЯрд░ рдкреНрдпрд╛рдХреЗрдЯ 1 рдмрд╛рдЗрдЯреНрд╕ 46
}
} - рдкреНрд░реЛрдХреНрд╕реА (tproxy) рдорд╛рд░реНрдлрдд рдЕрдиреБрд░реЛрдзрд╣рд░реВрдХреЛ рдкрд╛рд░рджрд░реНрд╢реА рдлрд░реНрд╡рд╛рд░реНрдбрд┐рдЩрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдердиред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдХрд▓рд╣рд░реВ рдкреЛрд░реНрдЯ 80 рд▓рд╛рдИ рдкреНрд░реЛрдХреНрд╕реА рдкреЛрд░реНрдЯ 8080 рдорд╛ рд░рд┐рдбрд┐рд░реЗрдХреНрдЯ рдЧрд░реНрди:
рддрд╛рд▓рд┐рдХрд╛ ip x {
рдЪреЗрди y {
рдкреНрд░рдХрд╛рд░ рдлрд┐рд▓реНрдЯрд░ рд╣реБрдХ prerouting рдкреНрд░рд╛рдердорд┐рдХрддрд╛ -150; рдиреАрддрд┐ рд╕реНрд╡реАрдХрд╛рд░;
tcp dport 80 tproxy to :8080
}
} - SO_MARK рдореЛрдбрдорд╛ setsockopt() рдорд╛рд░реНрдлрдд рд╕реЗрдЯ рдЪрд┐рдиреНрд╣ рдердк рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛рдХреЛ рд╕рд╛рде рдорд╛рд░реНрдХрд┐рдЩ рд╕рдХреЗрдЯрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдердиред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐:
рддрд╛рд▓рд┐рдХрд╛ inet x {
рдЪреЗрди y {
рдкреНрд░рдХрд╛рд░ рдлрд┐рд▓реНрдЯрд░ рд╣реБрдХ prerouting рдкреНрд░рд╛рдердорд┐рдХрддрд╛ -150; рдиреАрддрд┐ рд╕реНрд╡реАрдХрд╛рд░;
tcp dport 8080 рдорд╛рд░реНрдХ рд╕реЗрдЯ рд╕рдХреЗрдЯ рдорд╛рд░реНрдХ
}
} - рдЪреЗрдирд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдкрд╛рда рдирд╛рдорд╣рд░реВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрди рд╕рдорд░реНрдердиред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐:
nft рдЪреЗрди рдердкреНрдиреБрд╣реЛрд╕реН ip x raw { рдкреНрд░рдХрд╛рд░ рдлрд┐рд▓реНрдЯрд░ рд╣реБрдХ prerouting priority raw; }
nft рдЪреЗрди ip x рдлрд┐рд▓реНрдЯрд░ рдердкреНрдиреБрд╣реЛрд╕реН { рдкреНрд░рдХрд╛рд░ рдлрд┐рд▓реНрдЯрд░ рд╣реБрдХ рдкреНрд░рд┐рд░реБрдЯрд┐рдВрдЧ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдлрд┐рд▓реНрдЯрд░; }
nft рдЪреЗрди рдердкреНрдиреБрд╣реЛрд╕реН ip x filter_later { рдкреНрд░рдХрд╛рд░ рдлрд┐рд▓реНрдЯрд░ рд╣реБрдХ рдкреНрд░рд┐рд░реБрдЯрд┐рдВрдЧ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдлрд┐рд▓реНрдЯрд░ + 10; } - SELinux рдЯреНрдпрд╛рдЧ (Secmark) рдХреЛ рд▓рд╛рдЧрд┐ рд╕рдорд░реНрдердиред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, SELinux рд╕рдиреНрджрд░реНрднрдорд╛ "sshtag" рдЯреНрдпрд╛рдЧ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЧрд░реНрди, рддрдкрд╛рдИрдВрд▓реЗ рдЪрд▓рд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ:
nft secmark 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 рдлрд┐рд▓реНрдЯрд░ secmapping { 22 : "sshtag" }
nft рдирд┐рдпрдо inet рдлрд┐рд▓реНрдЯрд░ рдЗрдирдкреБрдЯ рдореЗрдЯрд╛ рд╕реЗрдХрдорд╛рд░реНрдХ рд╕реЗрдЯ tcp dport рдирдХреНрд╢рд╛ @secmapping рдердкреНрдиреБрд╣реЛрд╕реН - рдкрд╛рда рдлрд╛рд░рдордорд╛ рдкреНрд░реЛрдЯреЛрдХрд▓рд╣рд░реВрдорд╛ рддреЛрдХрд┐рдПрдХрд╛ рдкреЛрд░реНрдЯрд╣рд░реВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрди рд╕рдХреНрдиреЗ рдХреНрд╖рдорддрд╛, рдЬрд╕реНрддреИ рддрд┐рдиреАрд╣рд░реВ /etc/services рдлрд╛рдЗрд▓рдорд╛ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЫрдиреНред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐:
nft рдирд┐рдпрдо xy tcp dport "ssh" рдердкреНрдиреБрд╣реЛрд╕реН
nft рд╕реВрдЪреА рдирд┐рдпрдорд╣рд░реВ -l
рддрд╛рд▓рд┐рдХрд╛ x {
рдЪреЗрди y {
...
tcp dport "ssh"
}
} - рдиреЗрдЯрд╡рд░реНрдХ рдЗрдиреНрдЯрд░рдлреЗрд╕ рдХреЛ рдкреНрд░рдХрд╛рд░ рдЬрд╛рдБрдЪ рдЧрд░реНрди рдХреНрд╖рдорддрд╛ред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐:
рдирд┐рдпрдо inet raw prerouting meta iifkind "vrf" рд╕реНрд╡реАрдХрд╛рд░ рдЧрд░реНрдиреБрд╣реЛрд╕реН
- "рдЧрддрд┐рд╢реАрд▓" рдЭрдгреНрдбрд╛ рд╕реНрдкрд╖реНрдЯ рд░реВрдкрдорд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реЗрд░ рд╕реЗрдЯрд╣рд░реВрдХреЛ рд╕рд╛рдордЧреНрд░реАрд╣рд░реВрд▓рд╛рдИ рдЧрддрд┐рд╢реАрд▓ рд░реВрдкрдорд╛ рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рд╕реБрдзрд╛рд░рд┐рдПрдХреЛ рд╕рдорд░реНрдердиред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рд╕реНрд░реЛрдд рдареЗрдЧрд╛рдирд╛ рдердкреНрди рд╕реЗрдЯ "s" рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдЧрд░реНрди рд░ рейреж рд╕реЗрдХреЗрдиреНрдбрдХрд╛ рд▓рд╛рдЧрд┐ рдкреНрдпрд╛рдХреЗрдЯрд╣рд░реВ рдирднрдПрдорд╛ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд░рд┐рд╕реЗрдЯ рдЧрд░реНрди:
рддрд╛рд▓рд┐рдХрд╛ x рдердкреНрдиреБрд╣реЛрд╕реН
рд╕реЗрдЯ xs рдердкреНрдиреБрд╣реЛрд╕реН {рдкреНрд░рдХрд╛рд░ ipv4_addr; рдЖрдХрд╛рд░ 128; рдЯрд╛рдЗрдордЖрдЙрдЯ 30s; рдЭрдгреНрдбрд╛ рдЧрддрд┐рд╢реАрд▓; }
рдЪреЗрди xy рдердкреНрдиреБрд╣реЛрд╕реН { рдкреНрд░рдХрд╛рд░ рдлрд┐рд▓реНрдЯрд░ рд╣реБрдХ рдЗрдирдкреБрдЯ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ 0; }
рдирд┐рдпрдо xy рдЕрдкрдбреЗрдЯ @s { ip saddr } рдердкреНрдиреБрд╣реЛрд╕реН - рдПрдХ рдЕрд▓рдЧ рдЯрд╛рдЗрдордЖрдЙрдЯ рдЕрд╡рд╕реНрдерд╛ рд╕реЗрдЯ рдЧрд░реНрди рдХреНрд╖рдорддрд╛ред рдЙрджрд╛рд╣рд░рдг рдХреЛ рд▓рд╛рдЧреА, рдкреЛрд░реНрдЯ 8888 рдорд╛ рдЖрдЧрдорди рдкреНрдпрд╛рдХреЗрдЯрд╣рд░реБ рдХреЛ рд▓рд╛рдЧреА рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдЯрд╛рдЗрдордЖрдЙрдЯ рдУрднрд░рд░рд╛рдЗрдб рдЧрд░реНрди, рддрдкрд╛рдЗрдБ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ:
рддрд╛рд▓рд┐рдХрд╛ рдЖрдИрдкреА рдлрд┐рд▓реНрдЯрд░ {
ct рдЯрд╛рдЗрдордЖрдЙрдЯ рдЖрдХреНрд░рд╛рдордХ-tcp {
рдкреНрд░реЛрдЯреЛрдХрд▓ tcp;
l3proto ip;
рдиреАрддрд┐ = {рд╕реНрдерд╛рдкрд┐рдд: 100, рдмрдиреНрдж_рдкреНрд░рддреАрдХреНрд╖рд╛: 4, рдмрдиреНрдж: 4}
}
рдЪреЗрди рдЖрдЙрдЯрдкреБрдЯ {
...
tcp dport 8888 ct рдЯрд╛рдЗрдордЖрдЙрдЯ рд╕реЗрдЯ "рдЖрдХреНрд░рд╛рдордХ-tcp"
}
} - рдиреЗрдЯ рдкрд░рд┐рд╡рд╛рд░рдХреЛ рд▓рд╛рдЧрд┐ NAT рд╕рдорд░реНрдерди:
рддрд╛рд▓рд┐рдХрд╛ inet nat {
...
ip6 daddr dead::2::1 dnat to dead:2::99
} - рд╕реБрдзрд╛рд░рд┐рдПрдХреЛ рдЯрд╛рдЗрдкреЛ рддреНрд░реБрдЯрд┐ рд░рд┐рдкреЛрд░реНрдЯрд┐рдЩ:
nft рдЪреЗрди рдлрд┐рд▓реНрдЯрд░ рдкрд░реАрдХреНрд╖рдг рдердкреНрдиреБрд╣реЛрд╕реН
рддреНрд░реБрдЯрд┐: рддреНрдпрд╕реНрддреЛ рдХреБрдиреИ рдлрд╛рдЗрд▓ рд╡рд╛ рдбрд╛рдЗрд░реЗрдХреНрдЯрд░реА рдЫреИрди; рдХреЗ рддрдкрд╛рдИрдВрд▓реЗ рдкрд╛рд░рд┐рд╡рд╛рд░рд┐рдХ рдЖрдИрдкреАрдорд╛ рддрд╛рд▓рд┐рдХрд╛ "рдлрд┐рд▓реНрдЯрд░" рднрдиреНрди рдЦреЛрдЬреНрдиреБрднрдПрдХреЛ рд╣реЛ?
рдЪреЗрди рдлрд┐рд▓реНрдЯрд░ рдкрд░реАрдХреНрд╖рдг рдердкреНрдиреБрд╣реЛрд╕реН
^^^^^^ - рд╕реЗрдЯрд╣рд░реВрдорд╛ рдЗрдиреНрдЯрд░рдлреЗрд╕ рдирд╛рдорд╣рд░реВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛:
рд╕реЗрдЯ sc {
inet_service рдЯрд╛рдЗрдк рдЧрд░реНрдиреБрд╣реЛрд╕реНред ifname
рддрддреНрд╡ = {"ssh"ред "eth0" }
} - рдЕрджреНрдпрд╛рд╡рдзрд┐рдХ рдкреНрд░рд╡рд╛рд╣ рддрд╛рд▓рд┐рдХрд╛ рдирд┐рдпрдо рд╡рд╛рдХреНрдп рд░рдЪрдирд╛:
nft рддрд╛рд▓рд┐рдХрд╛ x рдердкреНрдиреБрд╣реЛрд╕реН
nft рдлреНрд▓реЛрдЯреЗрдмрд▓ x ft рдЬреЛрдбреНрдиреБрд╣реЛрд╕реН {рд╣реБрдХ рдкреНрд░рд╡реЗрд╢ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ 0; рдЙрдкрдХрд░рдг = {eth0, wlan0}; }
...
nft рдердкреНрдиреБрд╣реЛрд╕реН рдирд┐рдпрдо x рдЕрдЧрд╛рдбрд┐ рдЖрдИрдкреА рдкреНрд░реЛрдЯреЛрдХрд▓ { tcp, udp } рдкреНрд░рд╡рд╛рд╣ @ft рдердкреНрдиреБрд╣реЛрд╕реН - рд╕реБрдзрд╛рд░рд┐рдПрдХреЛ JSON рд╕рдорд░реНрдердиред
рд╕реНрд░реЛрдд: opennet.ru