αž€αžΆαžšαž…αŸαž‰αž•αŸ’αžŸαžΆαž™ Firewalld 1.0

αž€αžΆαžšαž…αŸαž‰αž•αŸ’αžŸαžΆαž™αž“αŸƒαž‡αž‰αŸ’αž‡αžΆαŸ†αž„αž—αŸ’αž›αžΎαž„αž‡αž‰αŸ’αž‡αžΆαŸ†αž„αž—αŸ’αž›αžΎαž„αžŠαŸ‚αž›αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžŠαŸ„αž™αžαžΆαž˜αžœαž“αŸ’αž 1.0 αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰ αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαž€αŸ’αž“αž»αž„αž‘αž˜αŸ’αžšαž„αŸ‹αž‡αžΆαžšαž»αŸ†αž›αžΎαžαž˜αŸ’αžšαž„αž€αž‰αŸ’αž…αž”αŸ‹αž–αŸαžαŸŒαž˜αžΆαž“ nftables αž“αž·αž„ iptables αŸ” Firewalld αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‡αžΆαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž•αŸ’αž‘αŸƒαžαžΆαž„αž€αŸ’αžšαŸ„αž™αžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžαžΆαž˜αžœαž“αŸ’αžαž…αŸ’αž”αžΆαž”αŸ‹αžαž˜αŸ’αžšαž„αž€αž‰αŸ’αž…αž”αŸ‹αž–αŸαžαŸŒαž˜αžΆαž“αžαžΆαž˜αžšαž™αŸˆ D-Bus αžŠαŸ„αž™αž˜αž·αž“αž…αžΆαŸ†αž”αžΆαž…αŸ‹αž•αŸ’αž‘αž»αž€αž…αŸ’αž”αžΆαž”αŸ‹αžαž˜αŸ’αžšαž„αž€αž‰αŸ’αž…αž”αŸ‹αž–αŸαžαŸŒαž˜αžΆαž“αž‘αžΎαž„αžœαž·αž‰ αž¬αž”αŸ†αž”αŸ‚αž€αž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹αžŠαŸ‚αž›αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αŸ” αž‚αž˜αŸ’αžšαŸ„αž„αž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžšαž½αž…αž αžΎαž™αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™αž›αžΈαž“αž»αž…αž‡αžΆαž…αŸ’αžšαžΎαž“ αžšαž½αž˜αž‘αžΆαŸ†αž„ RHEL 7+, Fedora 18+ αž“αž·αž„ SUSE/openSUSE 15+αŸ” αž€αžΌαžŠαž‡αž‰αŸ’αž‡αžΆαŸ†αž„αž—αŸ’αž›αžΎαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαžšαžŸαŸαžšαž‡αžΆ Python αž αžΎαž™αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αžαž›αŸ‹αž’αžΆαž‡αŸ’αž‰αžΆαž”αŸαžŽαŸ’αžŽαž€αŸ’αžšαŸ„αž˜αž’αžΆαž‡αŸ’αž‰αžΆαž”αŸαžŽαŸ’αžŽ GPLv2 αŸ”

αžŠαžΎαž˜αŸ’αž”αžΈαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž‡αž‰αŸ’αž‡αžΆαŸ†αž„αž—αŸ’αž›αžΎαž„ αž§αž”αž€αžšαžŽαŸαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ firewall-cmd αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎ αžŠαŸ‚αž›αž“αŸ…αž–αŸαž›αž”αž„αŸ’αž€αžΎαžαž…αŸ’αž”αžΆαž”αŸ‹ αž˜αž·αž“αž˜αŸ‚αž“αž•αŸ’αž’αŸ‚αž€αž›αžΎαž’αžΆαžŸαž™αžŠαŸ’αž‹αžΆαž“ IP αž…αŸ†αžŽαž»αž…αž”αŸ’αžšαž‘αžΆαž€αŸ‹αž”αžŽαŸ’αžαžΆαž‰ αž“αž·αž„αž›αŸαžαž…αŸ’αžšαž€αž“αŸ„αŸ‡αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž“αŸ…αž›αžΎαžˆαŸ’αž˜αŸ„αŸ‡αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜ (αž§αž‘αžΆαž αžšαžŽαŸ αžŠαžΎαž˜αŸ’αž”αžΈαž”αžΎαž€αž€αžΆαžšαž…αžΌαž›αž”αŸ’αžšαžΎ SSH αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœ αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš β€œfirewall-cmd β€”add β€”service=ssh” αžŠαžΎαž˜αŸ’αž”αžΈαž”αž·αž‘ SSH – β€œfirewall-cmd –remove –service=ssh”)αŸ” αžŠαžΎαž˜αŸ’αž”αžΈαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž‡αž‰αŸ’αž‡αžΆαŸ†αž„αž—αŸ’αž›αžΎαž„ αž…αŸ†αžŽαž»αž…αž”αŸ’αžšαž‘αžΆαž€αŸ‹αž€αŸ’αžšαžΆαž αŸ’αžœαž·αž€ Firewall-config (GTK) αž“αž·αž„αž’αžΆαž”αŸ‹αž—αŸ’αž›αŸαž Firewall-applet (Qt) αž€αŸαž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαž•αž„αžŠαŸ‚αžšαŸ” αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž‡αž‰αŸ’αž‡αžΆαŸ†αž„αž—αŸ’αž›αžΎαž„αžαžΆαž˜αžšαž™αŸˆ D-BUS API firewalld αž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž‚αž˜αŸ’αžšαŸ„αž„αžŠαžΌαž…αž‡αžΆ NetworkManager, libvirt, podman, docker αž“αž·αž„ fail2ban αŸ”

αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžŠαŸαžŸαŸ†αžαžΆαž“αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž›αŸαžαž€αŸ†αžŽαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αžŸαžΆαžšαž—αŸ’αž‡αžΆαž”αŸ‹αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžŠαŸ‚αž›αž”αŸ†αž”αŸ‚αž€αž—αžΆαž–αž†αž”αž‚αŸ’αž“αžΆαžαž™αž€αŸ’αžšαŸ„αž™ αž“αž·αž„αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž₯αžšαž·αž™αžΆαž”αžαž“αŸƒαž€αžΆαžšαž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αžαŸ†αž”αž“αŸ‹αŸ” αž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžšαžαž˜αŸ’αžšαž„αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαŸ‚αž›αž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹αž₯αž‘αžΌαžœαž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαžαŸ‚αž…αŸ†αž–αŸ„αŸ‡αž…αžšαžΆαž…αžšαžŽαŸαžŠαŸ‚αž›αž”αžΆαž“αž•αŸ’αž‰αžΎαž‘αŸ…αž€αžΆαž“αŸ‹αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αžŠαŸ‚αž›αž‡αž‰αŸ’αž‡αžΆαŸ†αž„αž—αŸ’αž›αžΎαž„αž€αŸ†αž–αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž αžΎαž™αž€αžΆαžšαžαŸ’αžšαž„αž…αžšαžΆαž…αžšαž†αŸ’αž›αž„αž€αžΆαžαŸ‹αžαž˜αŸ’αžšαžΌαžœαž±αŸ’αž™αž˜αžΆαž“αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž‚αŸ„αž›αž€αžΆαžšαžŽαŸαŸ” αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž‚αž½αžšαž±αŸ’αž™αž€αžαŸ‹αžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αž”αŸ†αž•αž»αž:

  • αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αžœαžΆαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž›αžΎαž€αŸ†αž–αžΌαž›αž“αŸƒ iptables αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαž€αžΆαžŸαžαžΆαž›αŸ‚αž„αž”αŸ’αžšαžΎαž αžΎαž™αŸ” αž€αžΆαžšβ€‹αž‚αžΆαŸ†αž‘αŸ’αžšβ€‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ iptables αž“αžΉαž„β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αžšαž€αŸ’αžŸαžΆβ€‹αž‘αž»αž€β€‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹β€‹αž’αž“αžΆαž‚αžβ€‹αžŠαŸ‚αž›β€‹αž’αžΆαž…β€‹αž˜αžΎαž›β€‹αžƒαžΎαž‰ αž”αŸ‰αž»αž“αŸ’αžαŸ‚β€‹αž€αž˜αŸ’αž˜αžœαž·αž’αžΈβ€‹αžαžΆαž„β€‹αž€αŸ’αžšαŸ„αž™β€‹αž“αŸαŸ‡β€‹αž“αžΉαž„β€‹αž˜αž·αž“β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž”αž„αŸ’αž€αžΎαžβ€‹αž‘αžΎαž„β€‹αž‘αŸαŸ”
  • αžšαž”αŸ€αž”αž”αž‰αŸ’αž‡αžΌαž“αž”αž“αŸ’αžαž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹αžαžΆαž„αž€αŸ’αž“αž»αž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αžΎαž€ αž“αž·αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαŸ†αž”αž“αŸ‹αžαŸ’αž˜αžΈαž‘αžΆαŸ†αž„αž’αžŸαŸ‹ αžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž˜αžΆαž“αž…αž›αž“αžΆαžŠαŸ„αž™αž₯αžαž‚αž·αžαžαŸ’αž›αŸƒαž“αŸƒαž€αž‰αŸ’αž…αž”αŸ‹αž–αŸαžαŸŒαž˜αžΆαž“αžšαžœαžΆαž„αž…αŸ†αžŽαž»αž…αž”αŸ’αžšαž‘αžΆαž€αŸ‹αž”αžŽαŸ’αžαžΆαž‰ αž¬αž”αŸ’αžšαž—αž–αž…αžšαžΆαž…αžšαžŽαŸαž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹αž˜αž½αž™ (αžŸαžΆαž’αžΆαžšαžŽαŸˆ αž”αŸ’αž›αž»αž€ αž‡αžΏαž‘αž»αž€αž…αž·αžαŸ’αž αž•αŸ’αž‘αŸƒαž€αŸ’αž“αž»αž„αŸ”αž›αŸ”)αŸ” αžŠαžΎαž˜αŸ’αž”αžΈαžαŸ’αžšαž‘αž”αŸ‹αž₯αžšαž·αž™αžΆαž”αžαž…αžΆαžŸαŸ‹ αž“αž·αž„αž€αžΆαžšαž–αžΆαžšαž€αž‰αŸ’αž…αž”αŸ‹αž–αŸαžαŸŒαž˜αžΆαž“αž–αžΈαž€αžΆαžšαž”αž‰αŸ’αž‡αžΌαž“αž”αž“αŸ’αžαž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹αž˜αž½αž™ αž’αŸ’αž“αž€αž’αžΆαž…αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™αž”αž‰αŸ’αž‡αžΆ β€œfirewall-cmd –permanent –zone public –remove-forwardβ€αŸ”
  • αž…αŸ’αž”αžΆαž”αŸ‹αž‘αžΆαž€αŸ‹αž‘αž„αž“αžΉαž„αž€αžΆαžšαž”αž€αž”αŸ’αžšαŸ‚αž’αžΆαžŸαž™αžŠαŸ’αž‹αžΆαž“ (NAT) αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αž›αžΆαžŸαŸ‹αž‘αžΈαž‘αŸ…αž‚αŸ’αžšαž½αžŸαžΆαžšαž–αž·αž’αžΈαž€αžΆαžš "inet" (αž–αžΈαž˜αž»αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž‘αŸ…αž‚αŸ’αžšαž½αžŸαžΆαžš "ip" αž“αž·αž„ "ip6" αžŠαŸ‚αž›αž“αžΆαŸ†αž±αŸ’αž™αž˜αžΆαž“αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž€αŸ’αž“αž»αž„αž€αžΆαžšαž…αž˜αŸ’αž›αž„αž…αŸ’αž”αžΆαž”αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ IPv4 αž“αž·αž„ IPv6)αŸ” αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž“αŸαŸ‡αž”αžΆαž“αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž™αžΎαž„αž€αž˜αŸ’αž…αžΆαžαŸ‹αžŸαŸ’αž‘αž½αž“αž“αŸ…αž–αŸαž›αž”αŸ’αžšαžΎ ipset - αž‡αŸ†αž“αž½αžŸαž±αŸ’αž™αž€αžΆαžšαž…αž˜αŸ’αž›αž„αž…αŸ†αž“αž½αž“αž”αžΈαž“αŸƒαž’αžΆαžαž» ipset αž₯αž‘αžΌαžœαž“αŸαŸ‡αž˜αž½αž™αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαŸ”
  • αžŸαž€αž˜αŸ’αž˜αž—αžΆαž– "αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜" αžŠαŸ‚αž›αž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžš "--set-target" αž₯αž‘αžΌαžœαž“αŸαŸ‡αžŸαŸ’αž˜αžΎαž“αžΉαž„ "αž”αžŠαž·αžŸαŸαž’", i.e. αž€αž‰αŸ’αž…αž”αŸ‹αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαŸ‚αž›αž˜αž·αž“αžŸαŸ’αžαž·αžαž“αŸ…αž€αŸ’αžšαŸ„αž˜αž…αŸ’αž”αžΆαž”αŸ‹αžŠαŸ‚αž›αž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‘αž”αŸ‹αžŸαŸ’αž€αžΆαžαŸ‹αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜αŸ” αž€αžšαžŽαžΈαž›αžΎαž€αž›αŸ‚αž„αž˜αž½αž™αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαž‘αžΎαž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαŸ‚αž€αž‰αŸ’αž…αž”αŸ‹ ICMP αžŠαŸ‚αž›αž“αŸ…αžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αž‰αŸ’αž‰αžΆαžαŸ” αžŠαžΎαž˜αŸ’αž”αžΈαžαŸ’αžšαž‘αž”αŸ‹αž₯αžšαž·αž™αžΆαž”αžαž…αžΆαžŸαŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαŸ†αž”αž“αŸ‹ "αž‡αžΏαž‘αž»αž€αž…αž·αžαŸ’αž" αžŠαŸ‚αž›αž’αžΆαž…αž…αžΌαž›αž”αŸ’αžšαžΎαž‡αžΆαžŸαžΆαž’αžΆαžšαžŽαŸˆαž”αžΆαž“ αž’αŸ’αž“αž€αž’αžΆαž…αž”αŸ’αžšαžΎαž…αŸ’αž”αžΆαž”αŸ‹αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ– firewall-cmd β€”permanent β€”new-policy allowForward firewall-cmd β€”permanent β€”policy allowForward β€”set-target αž™αž›αŸ‹αž–αŸ’αžšαž˜ firewall-cmd β€”permanent β€” policy allowForward β€”add-ingress -zone public firewall-cmd β€”permanent β€”policy allowForward β€”add-egress-zone trusted firewall-cmd β€”αž•αŸ’αž‘αž»αž€αž‘αžΎαž„αžœαž·αž‰
  • αž‚αŸ„αž›αž“αž™αŸ„αž”αžΆαž™αž’αžΆαž‘αž·αž—αžΆαž–αžœαž·αž‡αŸ’αž‡αž˜αžΆαž“αž₯αž‘αžΌαžœαž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž—αŸ’αž›αžΆαž˜αŸ— αž˜αž»αž“αž–αŸαž›αž…αŸ’αž”αžΆαž”αŸ‹ "-set-target catch-all" αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž· αž–αŸ„αž›αž‚αžΊαž§αŸ” αž“αŸ…αž–αŸαž›αž“αŸαŸ‡ αž˜αž»αž“αž–αŸαž›αž”αž“αŸ’αžαŸ‚αž˜αž€αžΆαžšαž’αŸ’αž›αžΆαž€αŸ‹αž…αž»αŸ‡αž…αž»αž„αž€αŸ’αžšαŸ„αž™ αž”αžŠαž·αžŸαŸαž’ αž¬αž‘αž‘αž½αž›αž™αž€αž…αŸ’αž”αžΆαž”αŸ‹ αžšαž½αž˜αž‘αžΆαŸ†αž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαŸ†αž”αž“αŸ‹αžŠαŸ‚αž›αž”αŸ’αžšαžΎ β€œ--set-target drop|reject|acceptβ€αŸ”
  • αž€αžΆαžšαž‘αž”αŸ‹αžŸαŸ’αž€αžΆαžαŸ‹ ICMP αž₯αž‘αžΌαžœαž“αŸαŸ‡αž’αž“αž»αžœαžαŸ’αžαžαŸ‚αž…αŸ†αž–αŸ„αŸ‡αž€αž‰αŸ’αž…αž”αŸ‹αž–αŸαžαŸŒαž˜αžΆαž“αž…αžΌαž›αžŠαŸ‚αž›αž•αŸ’αž‰αžΎαž‘αŸ…αž€αžΆαž“αŸ‹αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“ (αž€αžΆαžšαž”αž‰αŸ’αž…αžΌαž›) αž αžΎαž™αž˜αž·αž“αž”αŸ‰αŸ‡αž–αžΆαž›αŸ‹αžŠαž›αŸ‹αž€αž‰αŸ’αž…αž”αŸ‹αž–αŸαžαŸŒαž˜αžΆαž“αžŠαŸ‚αž›αž”αžΆαž“αž”αž‰αŸ’αž‡αžΌαž“αž”αž“αŸ’αžαžšαžœαžΆαž„αžαŸ†αž”αž“αŸ‹ (αž‘αŸ…αž˜αž»αž) αž‘αŸαŸ”
  • αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž’αžαž·αžαž·αž‡αž“ tftp αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž…αž“αžΆαž‘αžΎαž„αžŠαžΎαž˜αŸ’αž”αžΈαžαžΆαž˜αžŠαžΆαž“αž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž–αž·αž’αžΈαž€αžΆαžš TFTP αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžŸαŸ’αžαž·αžαž€αŸ’αž“αž»αž„αž‘αž˜αŸ’αžšαž„αŸ‹αž˜αž·αž“αž’αžΆαž…αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž”αžΆαž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαž€αž…αŸαž‰αŸ”
  • αž…αŸ†αžŽαž»αž…αž”αŸ’αžšαž‘αžΆαž€αŸ‹ "αž•αŸ’αž‘αžΆαž›αŸ‹" αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αžŠαž·αžŸαŸαž’ αžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž…αŸ’αž”αžΆαž”αŸ‹αžαž˜αŸ’αžšαž„αž€αž‰αŸ’αž…αž”αŸ‹αžŠαŸ‚αž›αžαŸ’αžšαŸ€αž˜αžšαž½αž…αž‡αžΆαžŸαŸ’αžšαŸαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž…αžΌαž›αžŠαŸ„αž™αž•αŸ’αž‘αžΆαž›αŸ‹αŸ” αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž…αŸ†αžŽαž»αž…αž”αŸ’αžšαž‘αžΆαž€αŸ‹αž“αŸαŸ‡αž”αžΆαž“αž”αžΆαžαŸ‹αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž€αžΆαžšαž”αž“αŸ’αžαŸ‚αž˜αžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαžαŸ’αžšαž„αž”αž‰αŸ’αž‡αžΌαž“αž”αž“αŸ’αž αž“αž·αž„αž€αž‰αŸ’αž…αž”αŸ‹αž…αŸαž‰αŸ”
  • αž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžš CleanupModulesOnExit αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžαžΌαžšαž‘αŸ…αž‡αžΆ "αž‘αŸ" αžαžΆαž˜αž›αŸ†αž“αžΆαŸ†αžŠαžΎαž˜αŸ” αžŠαŸ„αž™αž”αŸ’αžšαžΎαž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžšαž“αŸαŸ‡ αž’αŸ’αž“αž€αž’αžΆαž…αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž€αžΆαžšαž˜αž·αž“αž•αŸ’αž‘αž»αž€αž˜αŸ‰αžΌαžŒαž»αž›αžαžΊαžŽαŸ‚αž› αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž‡αž‰αŸ’αž‡αžΆαŸ†αž„αž—αŸ’αž›αžΎαž„αž”αž·αž‘αŸ”
  • αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž”αŸ’αžšαžΎ ipset αž“αŸ…αž–αŸαž›αž€αŸ†αžŽαžαŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž‚αŸ„αž›αžŠαŸ… (αž‘αž·αžŸαžŠαŸ…)αŸ”
  • αž”αžΆαž“αž”αž“αŸ’αžαŸ‚αž˜αž“αž·αž™αž˜αž“αŸαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ WireGuard, Kubernetes αž“αž·αž„αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜ netbios-ns αŸ”
  • αž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαž…αŸ’αž”αžΆαž”αŸ‹αž“αŸƒαž€αžΆαžšαž”αŸ†αž–αŸαž‰αžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αžŸαž˜αŸ’αžšαžΆαž”αŸ‹ zsh αŸ”
  • αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹ Python 2 αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αžˆαž”αŸ‹αŸ”
  • αž”αž‰αŸ’αž‡αžΈαž“αŸƒαž—αžΆαž–αž’αžΆαžŸαŸ’αžšαŸαž™αžαŸ’αžšαžΌαžœαž”αžΆαž“αžαŸ’αž›αžΈαŸ” αžŠαžΎαž˜αŸ’αž”αžΈαž±αŸ’αž™αž‡αž‰αŸ’αž‡αžΆαŸ†αž„αž—αŸ’αž›αžΎαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž”αž“αŸ’αžαŸ‚αž˜αž–αžΈαž›αžΎαžαžΊαžŽαŸ‚αž›αž›αžΈαž“αž»αž… αž”αžŽαŸ’αžŽαžΆαž›αŸαž™ python αžαŸ‚αž˜αž½αž™αž‚αžαŸ‹αž‚αžΊ dbus, gobject αž“αž·αž„ nftables αž₯αž‘αžΌαžœαž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‘αžΆαž˜αž‘αžΆαžš αž αžΎαž™αž€αž‰αŸ’αž…αž”αŸ‹ ebtables, ipset αž“αž·αž„ iptables αžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αžΆαžαŸ‹αžαŸ’αž“αžΆαž€αŸ‹αž‡αžΆαž‡αž˜αŸ’αžšαžΎαžŸαŸ” αž’αŸ’αž“αž€αžαž»αž”αžαŸ‚αž„αž”αžŽαŸ’αžŽαžΆαž›αŸαž™ python αž“αž·αž„αžšαž’αž·αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž™αž€αž…αŸαž‰αž–αžΈαž—αžΆαž–αž’αžΆαžŸαŸ’αžšαŸαž™αŸ”

αž”αŸ’αžšαž—αž–: opennet.ru

αž”αž“αŸ’αžαŸ‚αž˜αž˜αžαž·αž™αŸ„αž”αž›αŸ‹