ืงื•ื ืกื•ืœ + iptables = :3

ื‘ืฉื ืช 2010 ื”ื—ื‘ืจื” Wargaming ื”ื™ื• 50 ืฉืจืชื™ื ื•ืžื•ื“ืœ ืจืฉืช ืคืฉื•ื˜: backend, frontend ื•ื—ื•ืžืช ืืฉ. ืžืกืคืจ ื”ืฉืจืชื™ื ื’ื“ืœ, ื”ืžื•ื“ืœ ื ืขืฉื” ืžื•ืจื›ื‘ ื™ื•ืชืจ: ืจื›ื™ื‘ื™ VLAN ืžื‘ื•ื“ื“ื™ื ืขื ACL, ื•ืื– VPNs ืขื VRFs, VLANs ืขื ACLs ืขืœ L2, VRFs ืขื ACLs ืขืœ L3. ื”ืจืืฉ ืžืกืชื•ื‘ื‘? ื–ื” ื™ื”ื™ื” ื™ื•ืชืจ ื›ื™ืฃ ืื—ืจ ื›ืš.

ื›ืฉื”ื™ื• 16 ืฉืจืชื™ื, ืื™ ืืคืฉืจ ื”ื™ื” ืœืขื‘ื•ื“ ื‘ืœื™ ื“ืžืขื•ืช ืขื ื›ืœ ื›ืš ื”ืจื‘ื” ืžืงื˜ืขื™ื ื”ื˜ืจื•ื’ื ื™ื™ื. ืื– ื”ื’ืขื ื• ืœืคืชืจื•ืŸ ืื—ืจ. ืœืงื—ื ื• ืืช ืžื—ืกื ื™ืช Netfilter, ื”ื•ืกืคื ื• ืืœื™ื” ืืช Consul ื›ืžืงื•ืจ ื ืชื•ื ื™ื, ื•ืงื™ื‘ืœื ื• ื—ื•ืžืช ืืฉ ืžื‘ื•ื–ืจืช ืžื”ื™ืจื”. ื”ื ื”ื—ืœื™ืคื• ACLs ื‘ื ืชื‘ื™ื ื•ื”ืฉืชืžืฉื• ื‘ื”ื ื‘ืชื•ืจ ื—ื•ืžืช ืืฉ ื—ื™ืฆื•ื ื™ืช ื•ืคื ื™ืžื™ืช. ืœื ื™ื”ื•ืœ ื“ื™ื ืžื™ ืฉืœ ื”ื›ืœื™, ืคื™ืชื—ื ื• ืืช ืžืขืจื›ืช BEFW, ืฉืฉื™ืžืฉื” ื‘ื›ืœ ืžืงื•ื: ืžื ื™ื”ื•ืœ ื’ื™ืฉืช ืžืฉืชืžืฉื™ื ืœืจืฉืช ื”ืžื•ืฆืจ ื•ืขื“ ืœื‘ื™ื“ื•ื“ ืžืงื˜ืขื™ ืจืฉืช ื–ื” ืžื–ื”.

ืงื•ื ืกื•ืœ + iptables = :3

ื”ื•ื ื™ืกืคืจ ืœืš ืื™ืš ื”ื›ืœ ืขื•ื‘ื“ ื•ืœืžื” ื›ื“ืื™ ืœืš ืœื‘ื—ื•ืŸ ืžืงืจื•ื‘ ืืช ื”ืžืขืจื›ืช ื”ื–ื•. ืื™ื‘ืŸ ืื’ืจืงื•ื‘ (annmuor) ื”ื•ื ืจืืฉ ืงื‘ื•ืฆืช ืื‘ื˜ื—ืช ื”ืชืฉืชื™ื•ืช ืฉืœ ื—ื˜ื™ื‘ืช ื”ืชื—ื–ื•ืงื” ื‘ืžืจื›ื– ื”ืคื™ืชื•ื— ืฉืœ ื”ื—ื‘ืจื” ื‘ืžื™ื ืกืง. ืื™ื‘ืŸ ื”ื•ื ืžืขืจื™ืฅ ืฉืœ SELinux, ืื•ื”ื‘ ืืช ืคืจืœ ื•ื›ื•ืชื‘ ืงื•ื“. ื›ืจืืฉ ืงื‘ื•ืฆืช ืื‘ื˜ื—ืช ื”ืžื™ื“ืข, ื”ื•ื ืขื•ื‘ื“ ื‘ืื•ืคืŸ ืงื‘ื•ืข ืขื ื™ื•ืžื ื™ื, ื’ื™ื‘ื•ื™ื™ื ื•ืžื•"ืค ื›ื“ื™ ืœื”ื’ืŸ ืขืœ Wargaming ืžืคื ื™ ื”ืืงืจื™ื ื•ืœื”ื‘ื˜ื™ื— ืืช ืคืขื•ืœืช ื›ืœ ืฉืจืชื™ ื”ืžืฉื—ืงื™ื ื‘ื—ื‘ืจื”.

ื”ื™ืกื˜ื•ืจื™ื”

ืœืคื ื™ ืฉืืกืคืจ ืœืš ืื™ืš ืขืฉื™ื ื• ืืช ื–ื”, ืืกืคืจ ืœืš ืื™ืš ื”ื’ืขื ื• ืœื–ื” ืžืœื›ืชื—ื™ืœื” ื•ืœืžื” ื–ื” ื”ื™ื” ื ื—ื•ืฅ. ื›ื“ื™ ืœืขืฉื•ืช ื–ืืช, ื‘ื•ืื• ื ื—ื–ื•ืจ 9 ืฉื ื™ื ืื—ื•ืจื”: 2010, World of Tanks ืคืฉื•ื˜ ื”ื•ืคื™ืข. ืœ-Wargaming ื”ื™ื• ื›-50 ืฉืจืชื™ื.

ืงื•ื ืกื•ืœ + iptables = :3
ืชืจืฉื™ื ืฆืžื™ื—ืช ืฉืจืชื™ ื—ื‘ืจื”.

ื”ื™ื” ืœื ื• ืžื•ื“ืœ ืจืฉืช. ืœืื•ืชื” ืชืงื•ืคื” ื–ื” ื”ื™ื” ืื•ืคื˜ื™ืžืœื™.

ืงื•ื ืกื•ืœ + iptables = :3
ื“ื’ื ืจืฉืช ื‘ืฉื ืช 2010.

ื™ืฉ ื‘ื—ื•ืจื™ื ืจืขื™ื ื‘ืงืฆื” ื”ืงื“ืžื™ ืฉืจื•ืฆื™ื ืœืฉื‘ื•ืจ ืื•ืชื ื•, ืื‘ืœ ื™ืฉ ืœื• ื—ื•ืžืช ืืฉ. ืื™ืŸ ื—ื•ืžืช ืืฉ ื‘ืงืฆื” ื”ืื—ื•ืจื™, ืื‘ืœ ื™ืฉ ืฉื 50 ืฉืจืชื™ื, ืื ื—ื ื• ืžื›ื™ืจื™ื ืืช ื›ื•ืœื. ื”ื›ืœ ืขื•ื‘ื“ ื˜ื•ื‘.

ืชื•ืš 4 ืฉื ื™ื, ืฆื™ ื”ืฉืจืชื™ื ื’ื“ืœ ืคื™ 100, ืœ-5000. ื”ืจืฉืชื•ืช ื”ืžื‘ื•ื“ื“ื•ืช ื”ืจืืฉื•ื ื•ืช ื”ื•ืคื™ืขื• - ื‘ื™ืžื•ื™: ื”ืŸ ืœื ื™ื›ืœื• ืœืœื›ืช ืœื™ื™ืฆื•ืจ, ื•ืœืขืชื™ื ืงืจื•ื‘ื•ืช ื”ื™ื• ืฉื ื“ื‘ืจื™ื ืฉืขืฉื•ื™ื™ื ืœื”ื™ื•ืช ืžืกื•ื›ื ื™ื.

ืงื•ื ืกื•ืœ + iptables = :3
ื“ื’ื ืจืฉืช ื‘ืฉื ืช 2014.

ืขืœ ื™ื“ื™ ืื™ื ืจืฆื™ื”, ื”ืฉืชืžืฉื ื• ื‘ืื•ืชื ื—ืœืงื™ ื—ื•ืžืจื”, ื•ื›ืœ ื”ืขื‘ื•ื“ื” ื‘ื•ืฆืขื” ืขืœ ืจืฉืชื•ืช VLAN ืžื‘ื•ื“ื“ื•ืช: ืจื›ื™ื‘ื™ ACL ื ื›ืชื‘ื™ื ืœ-VLAN, ื”ืžืืคืฉืจื™ื ืื• ืฉื•ืœืœื™ื ื—ื™ื‘ื•ืจ ื›ืœืฉื”ื•.

ื‘ืฉื ืช 2016 ื”ื’ื™ืข ืžืกืคืจ ื”ืฉืจืชื™ื ืœ-8000. Wargaming ืงืœื˜ื” ืื•ืœืคื ื™ื ื ื•ืกืคื™ื, ื•ื”ื•ืคื™ืขื• ืจืฉืชื•ืช ืฉื•ืชืคื™ื ื ื•ืกืคื•ืช. ื ืจืื” ืฉื”ื ืฉืœื ื•, ืื‘ืœ ืœื ืœื’ืžืจื™: VLAN ืœืจื•ื‘ ืœื ืขื•ื‘ื“ ืขื‘ื•ืจ ืฉื•ืชืคื™ื, ืืชื” ืฆืจื™ืš ืœื”ืฉืชืžืฉ ื‘-VPN ืขื VRF, ื”ื‘ื™ื“ื•ื“ ื”ื•ืคืš ืžืกื•ื‘ืš ื™ื•ืชืจ. ืชืขืจื•ื‘ืช ื‘ื™ื“ื•ื“ ACL ื’ื“ืœื”.

ืงื•ื ืกื•ืœ + iptables = :3
ื“ื’ื ืจืฉืช ื‘ืฉื ืช 2016.

ืขื“ ืชื—ื™ืœืช 2018 ืฆื™ ื”ืžื›ื•ื ื•ืช ื’ื“ืœ ืœ-16. ื”ื™ื• 000 ืกื’ืžื ื˜ื™ื, ื•ืืช ื”ืฉืืจ ืœื ืกืคืจื ื•, ื›ื•ืœืœ ืกื’ื•ืจื™ื ืฉื‘ื”ื ืื•ื—ืกื ื• ื ืชื•ื ื™ื ืคื™ื ื ืกื™ื™ื. ื”ื•ืคื™ืขื• ืจืฉืชื•ืช ืžื™ื›ืœ (Kubernetes), DevOps, ืจืฉืชื•ืช ืขื ืŸ ื”ืžื—ื•ื‘ืจื•ืช ื‘ืืžืฆืขื•ืช VPN, ืœืžืฉืœ, ืž-IVS. ื”ื™ื• ื”ืจื‘ื” ื—ื•ืงื™ื - ื–ื” ื”ื™ื” ื›ื•ืื‘.

ืงื•ื ืกื•ืœ + iptables = :3
ืžื•ื“ืœ ืจืฉืช ื•ืฉื™ื˜ื•ืช ื‘ื™ื“ื•ื“ ื‘ืฉื ืช 2018.

ืœื‘ื™ื“ื•ื“ ื”ืฉืชืžืฉื ื•: VLAN ืขื ACL ืขืœ L2, VRF ืขื ACL ืขืœ L3, VPN ื•ืขื•ื“ ื”ืจื‘ื” ื™ื•ืชืจ. ื™ื•ืชืจ ืžื“ื™.

ื‘ืขื™ื•ืช

ื›ื•ืœื ื—ื™ื™ื ืขื ACL ื•-VLAN. ืžื” ืœื ื‘ืกื“ืจ? ืขืœ ืฉืืœื” ื–ื• ื™ืขื ื” ื”ืจื•ืœื“, ืžืกืชื™ืจ ืืช ื”ื›ืื‘.

ืงื•ื ืกื•ืœ + iptables = :3

ื”ื™ื• ื”ืจื‘ื” ื‘ืขื™ื•ืช, ืื‘ืœ ื”ื™ื• ื—ืžืฉ ืžืกื™ื‘ื™ื•ืช.

  • ืขืœื™ื™ืช ืžื—ื™ืจ ื’ื™ืื•ืžื˜ืจื™ืช ืœื›ืœืœื™ื ื—ื“ืฉื™ื. ื›ืœ ื›ืœืœ ื—ื“ืฉ ืœืงื— ื™ื•ืชืจ ื–ืžืŸ ืœื”ื•ืกื™ืฃ ืžืงื•ื“ืžื•, ื›ื™ ื”ื™ื” ืฆื•ืจืš ืงื•ื“ื ื›ืœ ืœืจืื•ืช ืื ื›ื‘ืจ ืงื™ื™ื ื›ืœืœ ื›ื–ื”.
  • ืื™ืŸ ื—ื•ืžืช ืืฉ ื‘ืชื•ืš ืžืงื˜ืขื™ื. ื”ืงื˜ืขื™ื ื”ื•ืคืจื“ื• ืื™ื›ืฉื”ื• ืื—ื“ ืžื”ืฉื ื™, ื•ื›ื‘ืจ ืœื ื”ื™ื• ืžืกืคื™ืง ืžืฉืื‘ื™ื ื‘ืคื ื™ื.
  • ื”ื›ืœืœื™ื ื™ื•ืฉืžื• ื‘ืžืฉืš ื–ืžืŸ ืจื‘. ืžืคืขื™ืœื™ื ื™ื›ืœื• ืœื›ืชื•ื‘ ื›ืœืœ ืžืงื•ืžื™ ืื—ื“ ื‘ื™ื“ ืชื•ืš ืฉืขื”. ื”ื’ืœื•ื‘ืœื™ ืœืงื— ื›ืžื” ื™ืžื™ื.
  • ืงืฉื™ื™ื ืขื ื›ืœืœื™ ื‘ื™ืงื•ืจืช. ืœื™ืชืจ ื“ื™ื•ืง, ื–ื” ืœื ื”ื™ื” ืืคืฉืจื™. ื”ื›ืœืœื™ื ื”ืจืืฉื•ื ื™ื ื ื›ืชื‘ื• ืขื•ื“ ื‘-2010, ื•ืจื•ื‘ ืžื—ื‘ืจื™ื”ื ื›ื‘ืจ ืœื ืขื‘ื“ื• ื‘ื—ื‘ืจื”.
  • ืจืžื” ื ืžื•ื›ื” ืฉืœ ื‘ืงืจืช ืชืฉืชื™ืช. ื–ื• ื”ื‘ืขื™ื” ื”ืขื™ืงืจื™ืช - ืœื ื™ื“ืขื ื• ื”ื™ื˜ื‘ ืžื” ืงื•ืจื” ื‘ืžื“ื™ื ื” ืฉืœื ื•.

ื›ืš ื ืจืื” ืžื”ื ื“ืก ืจืฉืช ื‘-2018 ื›ืฉืฉืžืข: "ืฆืจื™ืš ืขื•ื“ ACL."

ืงื•ื ืกื•ืœ + iptables = :3

ืคืชืจื•ื ื•ืช

ื‘ืชื—ื™ืœืช 2018 ื”ื•ื—ืœื˜ ืœืขืฉื•ืช ืžืฉื”ื• ื‘ื ื™ื“ื•ืŸ.

ืžื—ื™ืจ ื”ืื™ื ื˜ื’ืจืฆื™ื•ืช ื’ื“ืœ ื›ืœ ื”ื–ืžืŸ. ื ืงื•ื“ืช ื”ืžื•ืฆื ื”ื™ื™ืชื” ืฉืžืจื›ื–ื™ ื ืชื•ื ื™ื ื’ื“ื•ืœื™ื ื”ืคืกื™ืงื• ืœืชืžื•ืš ื‘-VLAN ื•-ACL ืžื‘ื•ื“ื“ื™ื ืžื›ื™ื•ื•ืŸ ืฉื ื’ืžืจ ื”ื–ื™ื›ืจื•ืŸ ื‘ืžื›ืฉื™ืจื™ื.

ืคืชืจื•ืŸ: ื”ืกืจื ื• ืืช ื”ื’ื•ืจื ื”ืื ื•ืฉื™ ื•ื™ืฆืจื ื• ืืช ืžืชืŸ ื”ื’ื™ืฉื” ืœืžืงืกื™ืžื•ื.

ื™ื™ืฉื•ื ื”ื›ืœืœื™ื ื”ื—ื“ืฉื™ื ืœื•ืงื— ื”ืจื‘ื” ื–ืžืŸ. ืคืชืจื•ืŸ: ืœื”ืื™ืฅ ืืช ื™ื™ืฉื•ื ื”ื›ืœืœื™ื, ืœื”ืคื•ืš ืื•ืชื• ืœืžื‘ื•ื–ืจ ื•ืžืงื‘ื™ืœ. ื–ื” ื“ื•ืจืฉ ืžืขืจื›ืช ืžื‘ื•ื–ืจืช ื›ืš ืฉื”ื›ืœืœื™ื ื™ื™ืžืกืจื• ื‘ืขืฆืžื, ืœืœื rsync ืื• SFTP ืœืืœืฃ ืžืขืจื›ื•ืช.

ืื™ืŸ ื—ื•ืžืช ืืฉ ื‘ืชื•ืš ืžืงื˜ืขื™ื. ื—ื•ืžืช ืืฉ ื‘ืชื•ืš ืžืงื˜ืขื™ื ื”ื—ืœื” ืœื”ื’ื™ืข ืืœื™ื ื• ื›ืืฉืจ ืฉื™ืจื•ืชื™ื ืฉื•ื ื™ื ื”ื•ืคื™ืขื• ื‘ืื•ืชื” ืจืฉืช. ืคืชืจื•ืŸ: ื”ืฉืชืžืฉ ื‘ื—ื•ืžืช ืืฉ ื‘ืจืžืช ื”ืžืืจื— - ื—ื•ืžื•ืช ืืฉ ืžื‘ื•ืกืกื•ืช ืžืืจื—. ื›ืžืขื˜ ื‘ื›ืœ ืžืงื•ื ืฉื™ืฉ ืœื ื• ืœื™ื ื•ืงืก, ื•ื‘ื›ืœ ืžืงื•ื ืฉื™ืฉ ืœื ื• iptables, ื–ื• ืœื ื‘ืขื™ื”.

ืงืฉื™ื™ื ืขื ื›ืœืœื™ ื‘ื™ืงื•ืจืช. ืคืชืจื•ืŸ: ืฉืžื•ืจ ืืช ื›ืœ ื”ื›ืœืœื™ื ื‘ืžืงื•ื ืื—ื“ ืœื‘ื“ื™ืงื” ื•ื ื™ื”ื•ืœ, ื›ื“ื™ ืฉื ื•ื›ืœ ืœื‘ืงืจ ื”ื›ืœ.

ืจืžืช ืฉืœื™ื˜ื” ื ืžื•ื›ื” ื‘ืชืฉืชื™ื•ืช. ืคืชืจื•ืŸ: ืจืฉื•ื ืžืœืื™ ืฉืœ ื›ืœ ื”ืฉื™ืจื•ืชื™ื ื•ื”ื’ื™ืฉื” ื‘ื™ื ื™ื”ื.

ื–ื” ื™ื•ืชืจ ืชื”ืœื™ืš ืื“ืžื™ื ื™ืกื˜ืจื˜ื™ื‘ื™ ืžืืฉืจ ืชื”ืœื™ืš ื˜ื›ื ื™. ืœืคืขืžื™ื ื™ืฉ ืœื ื• 200-300 ืžื”ื“ื•ืจื•ืช ื—ื“ืฉื•ืช ื‘ืฉื‘ื•ืข, ื‘ืžื™ื•ื—ื“ ื‘ืžื”ืœืš ืžื‘ืฆืขื™ื ื•ื—ื’ื™ื. ื™ืชืจ ืขืœ ื›ืŸ, ื–ื” ืžื™ื•ืขื“ ืจืง ืœืฆื•ื•ืช ืื—ื“ ืฉืœ DevOps ืฉืœื ื•. ืขื ื›ืœ ื›ืš ื”ืจื‘ื” ืžื”ื“ื•ืจื•ืช, ืื™ ืืคืฉืจ ืœืจืื•ืช ืื™ืœื• ื™ืฆื™ืื•ืช, ื›ืชื•ื‘ื•ืช IP ื•ืื™ื ื˜ื’ืจืฆื™ื•ืช ื ื—ื•ืฆื•ืช. ืœื›ืŸ, ื ื–ืงืงื ื• ืœืžื ื”ืœื™ ืฉื™ืจื•ืช ืฉืขื‘ืจื• ื”ื›ืฉืจื” ืžื™ื•ื—ื“ืช ืฉืฉืืœื• ืืช ื”ืฆื•ื•ืชื™ื: "ืžื” ื™ืฉ ื‘ื›ืœืœ ื•ืœืžื” ื”ืขืœืชื ืืช ื–ื”?"

ืื—ืจื™ ื›ืœ ืžื” ืฉื”ืฉืงื ื•, ืžื”ื ื“ืก ืจืฉืช ื‘ืฉื ืช 2019 ื”ื—ืœ ืœื”ื™ืจืื•ืช ื›ืš.

ืงื•ื ืกื•ืœ + iptables = :3

ืงื•ึนื ืกื•ึผืœ

ื”ื—ืœื˜ื ื• ืฉื ื›ื ื™ืก ืืช ื›ืœ ืžื” ืฉืžืฆืื ื• ื‘ืขื–ืจืช ืžื ื”ืœื™ ืฉื™ืจื•ืช ืœืงื•ื ืกื•ืœ ื•ืžืฉื ื ื›ืชื•ื‘ ื—ื•ืงื™ iptables.

ืื™ืš ื”ื—ืœื˜ื ื• ืœืขืฉื•ืช ืืช ื–ื”?

  • ื ืืกื•ืฃ ืืช ื›ืœ ื”ืฉื™ืจื•ืชื™ื, ื”ืจืฉืชื•ืช ื•ื”ืžืฉืชืžืฉื™ื.
  • ื‘ื•ืื• ื ื™ืฆื•ืจ ื—ื•ืงื™ iptables ื”ืžื‘ื•ืกืกื™ื ืขืœื™ื”ื.
  • ืื ื—ื ื• ืขื•ืฉื™ื ืฉืœื™ื˜ื” ืื•ื˜ื•ืžื˜ื™ืช.
  • ....
  • ืจื•ื•ื—.

Consul ื”ื•ื ืœื API ืžืจื•ื—ืง, ื”ื•ื ื™ื›ื•ืœ ืœืจื•ืฅ ื‘ื›ืœ ืฆื•ืžืช ื•ืœื›ืชื•ื‘ ืœ-iptables. ื›ืœ ืžื” ืฉื ื•ืชืจ ื”ื•ื ืœื‘ื•ื ืขื ื‘ืงืจื” ืื•ื˜ื•ืžื˜ื™ืช ืฉื™ื ืงื” ื“ื‘ืจื™ื ืžื™ื•ืชืจื™ื, ื•ืจื•ื‘ ื”ื‘ืขื™ื•ืช ื™ื™ืคืชืจื•! ืืช ื”ืฉืืจ ื ืกื“ืจ ืชื•ืš ื›ื“ื™.

ืœืžื” ืงื•ื ืกื•ืœ?

ื”ื•ื›ื™ื— ืืช ืขืฆืžื• ื”ื™ื˜ื‘. ื‘ืฉื ื™ื 2014-15, ื”ืฉืชืžืฉื ื• ื‘ื• ื›ื—ืœืง ืื—ื•ืจื™ ืขื‘ื•ืจ Vault, ืฉื‘ื• ืื ื• ืžืื—ืกื ื™ื ืกื™ืกืžืื•ืช.

ืœื ืžืื‘ื“ ื ืชื•ื ื™ื. ื‘ืžื”ืœืš ื”ืฉื™ืžื•ืฉ, ืงื•ื ืกื•ืœ ืœื ืื™ื‘ื“ ื ืชื•ื ื™ื ื‘ืžื”ืœืš ืชืื•ื ื” ืื—ืช. ื–ื”ื• ื™ืชืจื•ืŸ ืขืฆื•ื ืขื‘ื•ืจ ืžืขืจื›ืช ื ื™ื”ื•ืœ ื—ื•ืžืช ืืฉ.

ื—ื™ื‘ื•ืจื™ P2P ืžืื™ืฆื™ื ืืช ื”ืชืคืฉื˜ื•ืช ื”ืฉื™ื ื•ื™. ืขื P2P, ื›ืœ ื”ืฉื™ื ื•ื™ื™ื ืžื’ื™ืขื™ื ื‘ืžื”ื™ืจื•ืช, ืื™ืŸ ืฆื•ืจืš ืœื—ื›ื•ืช ืฉืขื•ืช.

REST API ื ื•ื—. ืฉืงืœื ื• ื’ื ืืช Apache ZooKeeper, ืื‘ืœ ืื™ืŸ ืœื• REST API, ืื– ืชืฆื˜ืจืš ืœื”ืชืงื™ืŸ ืงื‘ื™ื™ื.

ืขื•ื‘ื“ ื’ื ื›ื›ืกืคืช ืžืคืชื—ื•ืช (KV) ื•ื’ื ื›ืกืคืจื™ื™ื” (ื’ื™ืœื•ื™ ืฉื™ืจื•ืช). ืืชื” ื™ื›ื•ืœ ืœืื—ืกืŸ ืฉื™ืจื•ืชื™ื, ืงื˜ืœื•ื’ื™ื ื•ืžืจื›ื–ื™ ื ืชื•ื ื™ื ื‘ื‘ืช ืื—ืช. ื–ื” ื ื•ื— ืœื ืจืง ืœื ื•, ืืœื ื’ื ืœืฆื•ื•ืชื™ื ืฉื›ื ื™ื, ื›ื™ ื›ืฉื‘ื•ื ื™ื ืฉื™ืจื•ืช ื’ืœื•ื‘ืœื™, ืื ื—ื ื• ื—ื•ืฉื‘ื™ื ื‘ื’ื“ื•ืœ.

ื ื›ืชื‘ ื‘-Go, ืฉื”ื•ื ื—ืœืง ืžื—ืกื ื™ืช Wargaming. ืื ื—ื ื• ืื•ื”ื‘ื™ื ืืช ื”ืฉืคื” ื”ื–ื•, ื™ืฉ ืœื ื• ื”ืจื‘ื” ืžืคืชื—ื™ Go.

ืžืขืจื›ืช ACL ืขื•ืฆืžืชื™ืช. ื‘-Consul, ืืชื” ื™ื›ื•ืœ ืœื”ืฉืชืžืฉ ื‘-ACL ื›ื“ื™ ืœืฉืœื•ื˜ ืžื™ ื›ื•ืชื‘ ืžื”. ืื ื• ืžื‘ื˜ื™ื—ื™ื ืฉื›ืœืœื™ ื—ื•ืžืช ื”ืืฉ ืœื ื™ื—ืคืคื• ืœืฉื•ื ื“ื‘ืจ ืื—ืจ ื•ืœื ื™ื”ื™ื• ืœื ื• ื‘ืขื™ื•ืช ืขื ื–ื”.

ืื‘ืœ ืœืงื•ื ืกื•ืœ ื™ืฉ ื’ื ื—ืกืจื•ื ื•ืช.

  • ืœื ืžืฉืชื ื” ื‘ืชื•ืš ืžืจื›ื– ื ืชื•ื ื™ื ืืœื ืื ื™ืฉ ืœืš ื’ืจืกื” ืขืกืงื™ืช. ื–ื” ื ื™ืชืŸ ืœื”ืจื—ื‘ื” ืจืง ืœืคื™ ืคื“ืจืฆื™ื”.
  • ืชืœื•ื™ ืžืื•ื“ ื‘ืื™ื›ื•ืช ื”ืจืฉืช ื•ื‘ืขื•ืžืก ื”ืฉืจืช. Consul ืœื ื™ืขื‘ื•ื“ ื›ืžื• ืฉืฆืจื™ืš ื›ืฉืจืช ื‘ืฉืจืช ืขืžื•ืก ืื ื™ืฉ ืœืื’ื™ื ื‘ืจืฉืช, ืœืžืฉืœ, ืžื”ื™ืจื•ืช ืœื ืื—ื™ื“ื”. ื–ื” ื ื•ื‘ืข ืžื—ื™ื‘ื•ืจื™ P2P ื•ืžื•ื“ืœื™ื ืฉืœ ื”ืคืฆื” ืขื“ื›ื•ื ื™ื.
  • ืงื•ืฉื™ ื‘ืžืขืงื‘ ืื—ืจ ื–ืžื™ื ื•ืช. ื‘ืกื˜ื˜ื•ืก ืงื•ื ืกื•ืœ ื”ื•ื ื™ื›ื•ืœ ืœื•ืžืจ ืฉื”ื›ืœ ื‘ืกื“ืจ, ืื‘ืœ ื”ื•ื ืžืช ืžื–ืžืŸ.

ืคืชืจื ื• ืืช ืจื•ื‘ ื”ื‘ืขื™ื•ืช ื”ืœืœื• ืชื•ืš ื›ื“ื™ ืฉื™ืžื•ืฉ ื‘ืงื•ื ืกื•ืœ, ื•ื–ื• ื”ืกื™ื‘ื” ืฉื‘ื—ืจื ื• ื‘ื”. ืœื—ื‘ืจื” ื™ืฉ ืชื•ื›ื ื™ื•ืช ืœื’ื™ื‘ื•ื™ ื—ืœื•ืคื™, ืื‘ืœ ืœืžื“ื ื• ืœื”ืชืžื•ื“ื“ ืขื ื‘ืขื™ื•ืช ื•ื›ืจื’ืข ืื ื—ื ื• ื’ืจื™ื ืขื ืงื•ื ืกื•ืœ.

ืื™ืš ืขื•ื‘ื“ ืงื•ื ืกื•ืœ

ื ืชืงื™ืŸ ืฉืœื•ืฉื” ืขื“ ื—ืžื™ืฉื” ืฉืจืชื™ื ื‘ืžืจื›ื– ื ืชื•ื ื™ื ืžื•ืชื ื”. ืฉืจืช ืื—ื“ ืื• ืฉื ื™ื™ื ืœื ื™ืขื‘ื“ื•: ื”ื ืœื ื™ื•ื›ืœื• ืœืืจื’ืŸ ืžื ื™ื™ืŸ ื•ืœื”ื—ืœื™ื˜ ืžื™ ืฆื•ื“ืง ื•ืžื™ ื˜ื•ืขื” ื›ืืฉืจ ื”ื ืชื•ื ื™ื ืื™ื ื ืชื•ืืžื™ื. ื™ื•ืชืจ ืžื—ืžื™ืฉื” ืœื ื”ื’ื™ื•ื ื™, ื”ืคืจื•ื“ื•ืงื˜ื™ื‘ื™ื•ืช ืชืจื“.

ืงื•ื ืกื•ืœ + iptables = :3

ืœืงื•ื—ื•ืช ืžืชื—ื‘ืจื™ื ืœืฉืจืชื™ื ื‘ื›ืœ ืกื“ืจ: ืื•ืชื ืกื•ื›ื ื™ื, ืจืง ืขื ื”ื“ื’ืœ server = false.

ืงื•ื ืกื•ืœ + iptables = :3

ืœืื—ืจ ืžื›ืŸ, ื”ืœืงื•ื—ื•ืช ืžืงื‘ืœื™ื ืจืฉื™ืžื” ืฉืœ ื—ื™ื‘ื•ืจื™ P2P ื•ื‘ื•ื ื™ื ื‘ื™ื ื™ื”ื ืงืฉืจื™ื.

ืงื•ื ืกื•ืœ + iptables = :3

ื‘ืจืžื” ื”ื’ืœื•ื‘ืœื™ืช, ืื ื• ืžื—ื‘ืจื™ื ืžืกืคืจ ืžืจื›ื–ื™ ื ืชื•ื ื™ื. ื”ื ื’ื ืžื—ื‘ืจื™ื P2P ื•ืžืชืงืฉืจื™ื.

ืงื•ื ืกื•ืœ + iptables = :3

ื›ืืฉืจ ืื ื• ืจื•ืฆื™ื ืœืื—ื–ืจ ื ืชื•ื ื™ื ืžืžืจื›ื– ื ืชื•ื ื™ื ืื—ืจ, ื”ื‘ืงืฉื” ืขื•ื‘ืจืช ืžืฉืจืช ืœืฉืจืช. ืชื›ื ื™ืช ื–ื• ื ืงืจืืช ืคืจื•ื˜ื•ืงื•ืœ Serf. ืคืจื•ื˜ื•ืงื•ืœ Serf, ื›ืžื• ืงื•ื ืกื•ืœ, ืคื•ืชื— ืขืœ ื™ื“ื™ HashiCorp.

ื›ืžื” ืขื•ื‘ื“ื•ืช ื—ืฉื•ื‘ื•ืช ืขืœ ืงื•ื ืกื•ืœ

ืœืงื•ื ืกื•ืœ ื™ืฉ ืชื™ืขื•ื“ ืฉืžืชืืจ ืื™ืš ื–ื” ืขื•ื‘ื“. ืืชืŸ ืจืง ืขื•ื‘ื“ื•ืช ื ื‘ื—ืจื•ืช ืฉื›ื“ืื™ ืœื“ืขืช.

ืฉืจืชื™ ืงื•ื ืกื•ืœ ื‘ื•ื—ืจื™ื ืžืืกื˜ืจ ืžื‘ื™ืŸ ื”ื‘ื•ื—ืจื™ื. ืงื•ื ืกื•ืœ ื‘ื•ื—ืจ ืžืืกื˜ืจ ืžืจืฉื™ืžืช ื”ืฉืจืชื™ื ืขื‘ื•ืจ ื›ืœ ืžืจื›ื– ื ืชื•ื ื™ื, ื•ื›ืœ ื”ื‘ืงืฉื•ืช ืขื•ื‘ืจื•ืช ืจืง ืืœื™ื•, ืœืœื ืงืฉืจ ืœืžืกืคืจ ื”ืฉืจืชื™ื. ื”ืงืคืืช ืžืืกื˜ืจ ืื™ื ื” ืžื•ื‘ื™ืœื” ืœื‘ื—ื™ืจื” ืžื—ื“ืฉ. ืื ื”ืžืืกื˜ืจ ืœื ื ื‘ื—ืจ, ื‘ืงืฉื•ืช ืœื ืžื˜ื•ืคืœื•ืช ืขืœ ื™ื“ื™ ืืฃ ืื—ื“.

ืจืฆื™ืช ืงื ื” ืžื™ื“ื” ืื•ืคืงื™? ืกืœื™ื—ื”, ืœื.

ื‘ืงืฉื” ืœืžืจื›ื– ื ืชื•ื ื™ื ืื—ืจ ืขื•ื‘ืจืช ืžืžืืกื˜ืจ ืœืžืืกื˜ืจ, ืœืœื ืงืฉืจ ืœืื™ื–ื” ืฉืจืช ื”ื™ื ื”ื’ื™ืขื”. ื”ืžืืกื˜ืจ ืฉื ื‘ื—ืจ ืžืงื‘ืœ 100% ืžื”ืขื•ืžืก, ืœืžืขื˜ ื”ืขื•ืžืก ื‘ื‘ืงืฉื•ืช ื”ืขื‘ืจื”. ืœื›ืœ ื”ืฉืจืชื™ื ื‘ืžืจื›ื– ื”ื ืชื•ื ื™ื ื™ืฉ ืขื•ืชืง ืขื“ื›ื ื™ ืฉืœ ื”ื ืชื•ื ื™ื, ืืš ืจืง ืื—ื“ ืžื’ื™ื‘.

ื”ื“ืจืš ื”ื™ื—ื™ื“ื” ืœื‘ืฆืข ืงื ื” ืžื™ื“ื” ื”ื™ื ืœืืคืฉืจ ืžืฆื‘ ืžืขื•ืคืฉ ื‘ืœืงื•ื—.

ื‘ืžืฆื‘ ืžื™ื•ืฉืŸ, ืืชื” ื™ื›ื•ืœ ืœื”ื’ื™ื‘ ืœืœื ืžื ื™ื™ืŸ. ื–ื”ื• ืžืฆื‘ ื‘ื• ืื ื• ืžื•ื•ืชืจื™ื ืขืœ ืขืงื‘ื™ื•ืช ื”ื ืชื•ื ื™ื, ืื‘ืœ ืงื•ืจืื™ื ืงืฆืช ื™ื•ืชืจ ืžื”ืจ ืžื”ืจื’ื™ืœ, ื•ื›ืœ ืฉืจืช ืžื’ื™ื‘. ื‘ืื•ืคืŸ ื˜ื‘ืขื™, ื”ืงืœื˜ื” ืจืง ื“ืจืš ื”ืžืืกื˜ืจ.

ืงื•ื ืกื•ืœ ืื™ื ื• ืžืขืชื™ืง ื ืชื•ื ื™ื ื‘ื™ืŸ ืžืจื›ื–ื™ ื ืชื•ื ื™ื. ื›ืืฉืจ ืžืจื›ื™ื‘ื™ื ืคื“ืจืฆื™ื”, ืœื›ืœ ืฉืจืช ื™ื”ื™ื• ื ืชื•ื ื™ื ืžืฉืœื• ื‘ืœื‘ื“. ืขื‘ื•ืจ ืื—ืจื™ื, ื”ื•ื ืชืžื™ื“ ืคื•ื ื” ืœืžื™ืฉื”ื• ืื—ืจ.

ืื˜ื•ืžื™ื•ืช ื”ืคืขื•ืœื•ืช ืื™ื ื” ืžื•ื‘ื˜ื—ืช ืžื—ื•ืฅ ืœืขืกืงื”. ื–ื›ื•ืจ ืฉืืชื” ืœื ื”ื™ื—ื™ื“ ืฉื™ื›ื•ืœ ืœืฉื ื•ืช ื“ื‘ืจื™ื. ืื ืืชื” ืจื•ืฆื” ืืช ื–ื” ืื—ืจืช, ื‘ืฆืข ืขืกืงื” ืขื ืžื ืขื•ืœ.

ืคืขื•ืœื•ืช ื”ื—ืกื™ืžื” ืื™ื ืŸ ืžื‘ื˜ื™ื—ื•ืช ื ืขื™ืœื”. ื”ื‘ืงืฉื” ืขื•ื‘ืจืช ืžืžืืกื˜ืจ ืœืžืืกื˜ืจ, ื•ืœื ื™ืฉื™ืจื•ืช, ื›ืš ืฉืื™ืŸ ืขืจื•ื‘ื” ืฉื”ื—ืกื™ืžื” ืชืขื‘ื•ื“ ื›ืืฉืจ ืชื—ืกื•ื, ืœืžืฉืœ, ื‘ืžืจื›ื– ื ืชื•ื ื™ื ืื—ืจ.

ACL ื’ื ืœื ืžื‘ื˜ื™ื—ื” ื’ื™ืฉื” (ื‘ืžืงืจื™ื ืจื‘ื™ื). ื™ื™ืชื›ืŸ ืฉื”-ACL ืœื ื™ืขื‘ื•ื“ ืžื›ื™ื•ื•ืŸ ืฉื”ื•ื ืžืื•ื—ืกืŸ ื‘ืžืจื›ื– ื ืชื•ื ื™ื ืคื“ืจืฆื™ื” ืื—ื“ - ื‘ืžืจื›ื– ื”ื ืชื•ื ื™ื ืฉืœ ื”-ACL (Primary DC). ืื ื”-DC ืœื ืขื•ื ื” ืœืš, ื”-ACL ืœื ื™ืขื‘ื•ื“.

ืžืืกื˜ืจ ืงืคื•ื ืื—ื“ ื™ื’ืจื•ื ืœื›ืœ ื”ืคื“ืจืฆื™ื” ืœืงืคื•ื. ืœื“ื•ื’ืžื”, ื™ืฉ 10 ืžืจื›ื–ื™ ื ืชื•ื ื™ื ื‘ืคื“ืจืฆื™ื”, ื•ืœืื—ื“ ื™ืฉ ืจืฉืช ื’ืจื•ืขื”, ื•ืจืืฉ ืื—ื“ ื ื›ืฉืœ. ื›ืœ ืžื™ ืฉืžืชืงืฉืจ ืื™ืชื• ื™ืชืงืข ื‘ืžืขื’ืœ: ื™ืฉ ื‘ืงืฉื”, ืื™ืŸ ืœื” ืžืขื ื”, ื”ืฉืจืฉื•ืจ ืงื•ืคื. ืื™ืŸ ื“ืจืš ืœื“ืขืช ืžืชื™ ื–ื” ื™ืงืจื”, ืจืง ื‘ืขื•ื“ ืฉืขื” ืื• ืฉืขืชื™ื™ื ื›ืœ ื”ืคื“ืจืฆื™ื” ืชื™ืคื•ืœ. ืื™ืŸ ืฉื•ื ื“ื‘ืจ ืฉืืชื” ื™ื›ื•ืœ ืœืขืฉื•ืช ื‘ืงืฉืจ ืœื–ื”.

ืกื˜ื˜ื•ืก, ืžื ื™ื™ืŸ ื•ื‘ื—ื™ืจื•ืช ืžื˜ื•ืคืœื™ื ื‘ืฉืจืฉื•ืจ ื ืคืจื“. ื‘ื—ื™ืจื” ื—ื•ื–ืจืช ืœื ื™ืงืจื”, ื”ืกื˜ื˜ื•ืก ืœื ื™ืจืื” ื›ืœื•ื. ืืชื” ื—ื•ืฉื‘ ืฉื™ืฉ ืœืš ืงื•ื ืกื•ืœ ื—ื™, ืืชื” ืฉื•ืืœ ื•ื›ืœื•ื ืœื ืงื•ืจื” - ืื™ืŸ ืชืฉื•ื‘ื”. ื™ื—ื“ ืขื ื–ืืช, ื”ืกื˜ื˜ื•ืก ืžืจืื” ืฉื”ื›ืœ ื‘ืกื“ืจ.

ื ืชืงืœื ื• ื‘ื‘ืขื™ื” ื–ื• ื•ื ืืœืฆื ื• ืœื‘ื ื•ืช ืžื—ื“ืฉ ื—ืœืงื™ื ืกืคืฆื™ืคื™ื™ื ืฉืœ ืžืจื›ื–ื™ ื ืชื•ื ื™ื ื›ื“ื™ ืœื”ื™ืžื ืข ืžืžื ื”.

ืœื’ืจืกื” ื”ืขืกืงื™ืช ืฉืœ Consul Enterprise ืื™ืŸ ื—ืœืง ืžื”ื—ืกืจื•ื ื•ืช ืœืขื™ืœ. ื™ืฉ ืœื• ืคื•ื ืงืฆื™ื•ืช ืฉื™ืžื•ืฉื™ื•ืช ืจื‘ื•ืช: ื‘ื—ื™ืจืช ื‘ื•ื—ืจื™ื, ื”ืคืฆื”, ืงื ื” ืžื™ื“ื”. ื™ืฉ ืจืง "ืื‘ืœ" ืื—ื“ - ืžืขืจื›ืช ื”ืจื™ืฉื•ื™ ืœืžืขืจื›ืช ืžื‘ื•ื–ืจืช ื”ื™ื ื™ืงืจื” ืžืื•ื“.

ืคืจื™ืฆื” ืœื—ื™ื™ื: rm -rf /var/lib/consul - ืชืจื•ืคื” ืœื›ืœ ื”ืžื—ืœื•ืช ืฉืœ ื”ืกื•ื›ืŸ. ืื ืžืฉื”ื• ืœื ืขื•ื‘ื“ ื‘ืฉื‘ื™ืœืš, ืคืฉื•ื˜ ืžื—ืง ืืช ื”ื ืชื•ื ื™ื ืฉืœืš ื•ื”ื•ืจื“ ืืช ื”ื ืชื•ื ื™ื ืžืขื•ืชืง. ืกื‘ื™ืจ ืœื”ื ื™ื— ืฉื”ืงื•ื ืกื•ืœ ื™ืขื‘ื•ื“.

BEFW

ืขื›ืฉื™ื• ื‘ื•ืื• ื ื“ื‘ืจ ืขืœ ืžื” ืฉื”ื•ืกืคื ื• ืœืงื•ื ืกื•ืœ.

BEFW ื”ื•ื ืจืืฉื™ ืชื™ื‘ื•ืช ืฉืœ BackEndFื›ึผึทืขึทืกWืืช ื›ืœ. ื”ื™ื™ืชื™ ืฆืจื™ืš ืฉื ืœืžื•ืฆืจ ืื™ื›ืฉื”ื• ื›ืฉื™ืฆืจืชื™ ืืช ื”ืžืื’ืจ ื›ื“ื™ ืœื”ื›ื ื™ืก ืืœื™ื• ืืช ื”ืชื—ื™ื™ื‘ื•ื™ื•ืช ื”ื‘ื“ื™ืงื” ื”ืจืืฉื•ื ื•ืช. ื”ืฉื ื”ื–ื” ื ืฉืืจ.

ืชื‘ื ื™ื•ืช ื›ืœืœื™ื

ื”ื›ืœืœื™ื ื›ืชื•ื‘ื™ื ื‘ืชื—ื‘ื™ืจ iptables.

  • -N BEFW
  • -P ื™ืจื™ื“ืช ืงืœื˜
  • -A INPUT -m state-state RELATED,STABLISHED -j ืงื‘ืœ
  • -A INPUT -i lo -j ืงื‘ืœ
  • -A ืงืœื˜ -j BEFW

ื”ื›ืœ ื ื›ื ืก ืœืจืฉืช BEFW, ืžืœื‘ื“ ESTABLISHED, RELATED ื•ืžืืจื— ืžืงื•ืžื™. ื”ืชื‘ื ื™ืช ื™ื›ื•ืœื” ืœื”ื™ื•ืช ื›ืœ ื“ื‘ืจ, ื–ื• ืจืง ื“ื•ื’ืžื”.

ื›ื™ืฆื“ BEFW ืฉื™ืžื•ืฉื™?

ืฉื™ืจื•ืชื™ื

ื™ืฉ ืœื ื• ืฉื™ืจื•ืช, ืชืžื™ื“ ื™ืฉ ืœื• ืคื•ืจื˜, ืฆื•ืžืช ืขืœื™ื• ื”ื•ื ืคื•ืขืœ. ืžื”ืฆื•ืžืช ืฉืœื ื•, ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœืฉืื•ืœ ืืช ื”ืกื•ื›ืŸ ื‘ืื•ืคืŸ ืžืงื•ืžื™ ื•ืœื’ืœื•ืช ืฉื™ืฉ ืœื ื• ืฉื™ืจื•ืช ื›ืœืฉื”ื•. ืืชื” ื™ื›ื•ืœ ื’ื ืœืฉื™ื ืชื’ื™ื.

ืงื•ื ืกื•ืœ + iptables = :3

ื›ืœ ืฉื™ืจื•ืช ืฉืคื•ืขืœ ื•ืจืฉื•ื ืืฆืœ Consul ื”ื•ืคืš ืœื›ืœืœ iptables. ื™ืฉ ืœื ื• SSH - ื™ืฆื™ืื” ืคืชื•ื—ื” 22. ื”ืกืงืจื™ืคื˜ ืฉืœ Bash ืคืฉื•ื˜: curl ื•-iptables, ืื™ืŸ ืฆื•ืจืš ื‘ืฉื•ื ื“ื‘ืจ ืื—ืจ.

ืœืงื•ื—ื•ืช

ืื™ืš ืœืคืชื•ื— ื’ื™ืฉื” ืœื ืœื›ื•ืœื, ืืœื ื‘ืื•ืคืŸ ืกืœืงื˜ื™ื‘ื™? ื”ื•ืกืฃ ืจืฉื™ืžื•ืช IP ืœืื—ืกื•ืŸ KV ืœืคื™ ืฉื ืฉื™ืจื•ืช.

ืงื•ื ืกื•ืœ + iptables = :3

ืœื“ื•ื’ืžื”, ืื ื• ืจื•ืฆื™ื ืฉื›ื•ืœื ื‘ืจืฉืช ื”ืขืฉื™ืจื™ืช ื™ื•ื›ืœื• ืœื’ืฉืช ืœืฉื™ืจื•ืช SSH_TCP_22. ืœื”ื•ืกื™ืฃ ืฉื“ื” TTL ืงื˜ืŸ ืื—ื“? ื•ืขื›ืฉื™ื• ื™ืฉ ืœื ื• ืื™ืฉื•ืจื™ื ื–ืžื ื™ื™ื, ืœืžืฉืœ, ืœื™ื•ื ืื—ื“.

ื’ื™ืฉื”

ืื ื• ืžื—ื‘ืจื™ื ืฉื™ืจื•ืชื™ื ื•ืœืงื•ื—ื•ืช: ื™ืฉ ืœื ื• ืฉื™ืจื•ืช, ืื—ืกื•ืŸ KV ืžื•ื›ืŸ ืœื›ืœ ืื—ื“. ื›ืขืช ืื ื• ื ื•ืชื ื™ื ื’ื™ืฉื” ืœื ืœื›ื•ืœื, ืืœื ื‘ืื•ืคืŸ ืกืœืงื˜ื™ื‘ื™.

ืงื•ื ืกื•ืœ + iptables = :3

ื”ืงื‘ื•ืฆื”

ืื ื ื›ืชื•ื‘ ืืœืคื™ ื›ืชื•ื‘ื•ืช IP ืœื’ื™ืฉื” ื‘ื›ืœ ืคืขื, ื ืชืขื™ื™ืฃ. ื‘ื•ืื• ื ืžืฆื™ื ืงื‘ื•ืฆื•ืช - ืชืช-ืงื‘ื•ืฆื” ื ืคืจื“ืช ื‘-KV. ื‘ื•ืื• ื ืงืจื ืœื–ื” ื›ื™ื ื•ื™ (ืื• ืงื‘ื•ืฆื•ืช) ื•ื ืื—ืกืŸ ืฉื ืงื‘ื•ืฆื•ืช ืœืคื™ ืื•ืชื• ืขื™ืงืจื•ืŸ.

ืงื•ื ืกื•ืœ + iptables = :3

ื‘ื•ืื• ื ืชื—ื‘ืจ: ืขื›ืฉื™ื• ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœืคืชื•ื— SSH ืœื ืกืคืฆื™ืคื™ืช ืขื‘ื•ืจ P2P, ืืœื ืขื‘ื•ืจ ืงื‘ื•ืฆื” ืฉืœืžื” ืื• ืžืกืคืจ ืงื‘ื•ืฆื•ืช. ื‘ืื•ืชื• ืื•ืคืŸ, ื™ืฉ TTL - ื ื™ืชืŸ ืœื”ื•ืกื™ืฃ ืœืงื‘ื•ืฆื” ื•ืœื”ืกื™ืจ ืžื”ืงื‘ื•ืฆื” ื‘ืื•ืคืŸ ื–ืžื ื™.

ืงื•ื ืกื•ืœ + iptables = :3

ะ˜ะฝั‚ะตะณั€ะฐั†ะธั

ื”ื‘ืขื™ื” ืฉืœื ื• ื”ื™ื ื”ื’ื•ืจื ื”ืื ื•ืฉื™ ื•ื”ืื•ื˜ื•ืžืฆื™ื”. ืขื“ ื›ื” ืคืชืจื ื• ืืช ื–ื” ื›ืš.

ืงื•ื ืกื•ืœ + iptables = :3

ืื ื—ื ื• ืขื•ื‘ื“ื™ื ืขื Puppet, ื•ืžืขื‘ื™ืจื™ื ืืœื™ื”ื ืืช ื›ืœ ืžื” ืฉืงืฉื•ืจ ืœืžืขืจื›ืช (ืงื•ื“ ืืคืœื™ืงืฆื™ื”). Puppetdb (ืจื’ื™ืœ PostgreSQL) ืžืื—ืกืŸ ืจืฉื™ืžื” ืฉืœ ืฉื™ืจื•ืชื™ื ื”ืคื•ืขืœื™ื ืฉื, ื ื™ืชืŸ ืœืžืฆื•ื ืื•ืชื ืœืคื™ ืกื•ื’ ืžืฉืื‘. ืฉื ืชื•ื›ืœ ืœื‘ืจืจ ืžื™ ืžื’ื™ืฉ ื‘ืงืฉื” ืœืืŸ. ื™ืฉ ืœื ื• ื’ื ืžืขืจื›ืช ื‘ืงืฉื•ืช ืžืฉื™ื›ื” ื•ื‘ืงืฉื•ืช ืžื™ื–ื•ื’ ื‘ืฉื‘ื™ืœ ื–ื”.

ื›ืชื‘ื ื• befw-sync, ืคืชืจื•ืŸ ืคืฉื•ื˜ ืฉืขื•ื–ืจ ื‘ื”ืขื‘ืจืช ื ืชื•ื ื™ื. ืจืืฉื™ืช, ื ื™ืชืŸ ืœื’ืฉืช ืœืขื•ื’ื™ื•ืช ืกื™ื ื›ืจื•ืŸ ืขืœ ื™ื“ื™ puppetdb. ืฉื ืžื•ื’ื“ืจ API ืฉืœ HTTP: ืื ื• ืžื‘ืงืฉื™ื ืื™ืœื• ืฉื™ืจื•ืชื™ื ื™ืฉ ืœื ื•, ืžื” ืฆืจื™ืš ืœืขืฉื•ืช. ื•ืื– ื”ื ืžื’ื™ืฉื™ื ื‘ืงืฉื” ืœืงื•ื ืกื•ืœ.

ื”ืื ื™ืฉ ืื™ื ื˜ื’ืจืฆื™ื”? ื›ืŸ: ื”ื ื›ืชื‘ื• ืืช ื”ื›ืœืœื™ื ื•ืืคืฉืจื• ืœืงื‘ืœ ื‘ืงืฉื•ืช ืžืฉื™ื›ื”. ื”ืื ืืชื” ืฆืจื™ืš ื™ืฆื™ืื” ืžืกื•ื™ืžืช ืื• ืœื”ื•ืกื™ืฃ ืžืืจื— ืœืงื‘ื•ืฆื” ื›ืœืฉื”ื™? ืžืฉื•ืš ื‘ืงืฉื”, ื‘ื“ื•ืง - ืœื ื™ื•ืชืจ "ืžืฆื 200 ACLs ืื—ืจื™ื ื•ื ืกื” ืœืขืฉื•ืช ืžืฉื”ื• ื‘ื ื™ื“ื•ืŸ."

ืื•ืคื˜ื™ืžื™ื–ืฆื™ื”

ืคื™ื ื’ ืœืžืืจื— ืžืงื•ืžื™ ืขื ืฉืจืฉืจืช ื›ืœืœื™ื ืจื™ืงื” ืœื•ืงื— 0,075 ืืœืคื™ื•ืช ื”ืฉื ื™ื™ื”.

ืงื•ื ืกื•ืœ + iptables = :3

ื‘ื•ืื• ื ื•ืกื™ืฃ 10 ื›ืชื•ื‘ื•ืช iptables ืœืฉืจืฉืจืช ื”ื–ื•. ื›ืชื•ืฆืื” ืžื›ืš, ื”ืคื™ื ื’ ื™ื’ื“ืœ ืคื™ 000: iptables ื”ื•ื ืœื™ื ื™ืืจื™ ืœื—ืœื•ื˜ื™ืŸ, ืขื™ื‘ื•ื“ ื›ืœ ื›ืชื•ื‘ืช ืœื•ืงื— ืงืฆืช ื–ืžืŸ.

ืงื•ื ืกื•ืœ + iptables = :3

ืขื‘ื•ืจ ื—ื•ืžืช ืืฉ ืฉื‘ื” ืื ื• ืžืขื‘ื™ืจื™ื ืืœืคื™ ACLs, ื™ืฉ ืœื ื• ื”ืจื‘ื” ื›ืœืœื™ื, ื•ื–ื” ืžืฆื™ื’ ื—ื‘ื™ื•ืŸ. ื–ื” ืจืข ืœืคืจื•ื˜ื•ืงื•ืœื™ ืžืฉื—ืงื™ื.

ืื‘ืœ ืื ื ืฉื™ื 10 ื›ืชื•ื‘ื•ืช ื‘-ipset ื”ืคื™ื ื’ ืืคื™ืœื• ื™ืงื˜ืŸ.

ืงื•ื ืกื•ืœ + iptables = :3

ื”ื ืงื•ื“ื” ื”ื™ื ืฉ-"O" (ืžื•ืจื›ื‘ื•ืช ื”ืืœื’ื•ืจื™ืชื) ืขื‘ื•ืจ ipset ืชืžื™ื“ ืฉื•ื•ื” ืœ-1, ืœื ืžืฉื ื” ื›ืžื” ื›ืœืœื™ื ื™ืฉ. ื ื›ื•ืŸ, ื™ืฉ ืžื’ื‘ืœื” - ืœื ื™ื›ื•ืœื™ื ืœื”ื™ื•ืช ื™ื•ืชืจ ืž-65535 ื›ืœืœื™ื. ื‘ื™ื ืชื™ื™ื ืื ื—ื ื• ื—ื™ื™ื ืขื ื–ื”: ืืคืฉืจ ืœืฉืœื‘ ืื•ืชื, ืœื”ืจื—ื™ื‘ ืื•ืชื, ืœื™ืฆื•ืจ ืฉื ื™ ipsets ื‘ืื—ื“.

ืื—ืกื•ืŸ

ื”ืžืฉืš ื”ื’ื™ื•ื ื™ ืฉืœ ืชื”ืœื™ืš ื”ืื™ื˜ืจืฆื™ื” ื”ื•ื ืื—ืกื•ืŸ ืžื™ื“ืข ืขืœ ืœืงื•ื—ื•ืช ืขื‘ื•ืจ ื”ืฉื™ืจื•ืช ื‘-ipset.

ืงื•ื ืกื•ืœ + iptables = :3

ืขื›ืฉื™ื• ื™ืฉ ืœื ื• ืืช ืื•ืชื• SSH, ื•ืื ื—ื ื• ืœื ื›ื•ืชื‘ื™ื 100 ื›ืชื•ื‘ื•ืช IP ื‘ื‘ืช ืื—ืช, ืืœื ืžื’ื“ื™ืจื™ื ืืช ื”ืฉื ืฉืœ ื”- ipset ืื™ืชื• ืื ื—ื ื• ืฆืจื™ื›ื™ื ืœืชืงืฉืจ, ื•ืืช ื”ื›ืœืœ ื”ื‘ื DROP. ืืคืฉืจ ืœื”ืžื™ืจ ืื•ืชื• ืœื›ืœืœ ืื—ื“ "ืžื™ ืœื ื›ืืŸ, DROP", ืื‘ืœ ื–ื” ื™ื•ืชืจ ื‘ืจื•ืจ.

ืขื›ืฉื™ื• ื™ืฉ ืœื ื• ื—ื•ืงื™ื ื•ืกื˜ื™ื. ื”ืžืฉื™ืžื” ื”ืขื™ืงืจื™ืช ื”ื™ื ืœื™ืฆื•ืจ ืกื˜ ืœืคื ื™ ื›ืชื™ื‘ืช ื”ื›ืœืœ, ื›ื™ ืื—ืจืช iptables ืœื ื™ื›ืชื‘ื• ืืช ื”ื›ืœืœ.

ืชื›ื ื™ืช ื›ืœืœื™ืช

ื‘ืฆื•ืจื” ืฉืœ ื“ื™ืื’ืจืžื”, ื›ืœ ืžื” ืฉืืžืจืชื™ ื ืจืื” ื›ืš.

ืงื•ื ืกื•ืœ + iptables = :3

ืื ื—ื ื• ืžืชื—ื™ื™ื‘ื™ื ืœ-Puppet, ื”ื›ืœ ื ืฉืœื— ืœืžืืจื—, ืฉื™ืจื•ืชื™ื ื›ืืŸ, ipset ืฉื, ื•ืžื™ ืฉืœื ืจืฉื•ื ืฉื ืืกื•ืจ.

ืืคืฉืจ ื•ื“ื—ื”

ื›ื“ื™ ืœื”ืฆื™ืœ ืืช ื”ืขื•ืœื ื‘ืžื”ื™ืจื•ืช ืื• ืœื”ืฉื‘ื™ืช ื‘ืžื”ื™ืจื•ืช ืžื™ืฉื”ื•, ื‘ืชื—ื™ืœืช ื›ืœ ื”ืฉืจืฉืจืื•ืช ื”ื›ื ื• ืฉื ื™ ipsets: rules_allow ะธ rules_deny. ืื™ืš ื–ื” ืขื•ื‘ื“?

ืœื“ื•ื’ืžื”, ืžื™ืฉื”ื• ื™ื•ืฆืจ ืขื•ืžืก ื‘ืื™ื ื˜ืจื ื˜ ืฉืœื ื• ืขื ื‘ื•ื˜ื™ื. ื‘ืขื‘ืจ, ื”ื™ื™ืช ืฆืจื™ืš ืœืžืฆื•ื ืืช ื”-IP ืฉืœื• ืžื”ืœื•ื’ื™ื, ืœืงื—ืช ืื•ืชื• ืœืžื”ื ื“ืกื™ ืจืฉืช, ื›ื“ื™ ืฉื”ื ื™ื•ื›ืœื• ืœืžืฆื•ื ืืช ืžืงื•ืจ ื”ืชืขื‘ื•ืจื” ื•ืœืืกื•ืจ ืื•ืชื•. ื–ื” ื ืจืื” ืื—ืจืช ืขื›ืฉื™ื•.

ืงื•ื ืกื•ืœ + iptables = :3

ืื ื—ื ื• ืฉื•ืœื—ื™ื ืืช ื–ื” ืœืงื•ื ืกื•ืœ, ืžื—ื›ื™ื 2,5 ืฉื ื™ื•ืช ื•ื–ื” ื ืขืฉื”. ืžื›ื™ื•ื•ืŸ ืฉืงื•ื ืกื•ืœ ืžืคื™ืฅ ื‘ืžื”ื™ืจื•ืช ื“ืจืš P2P, ื–ื” ืขื•ื‘ื“ ื‘ื›ืœ ืžืงื•ื, ื‘ื›ืœ ื—ืœืง ืฉืœ ื”ืขื•ืœื.

ืคืขื ืื™ื›ืฉื”ื• ื”ืคืกืงืชื™ ืœื’ืžืจื™ ืืช WOT ื‘ื’ืœืœ ื˜ืขื•ืช ืขื ื—ื•ืžืช ื”ืืฉ. rules_allow - ื–ื” ื”ื‘ื™ื˜ื•ื— ืฉืœื ื• ื ื’ื“ ืžืงืจื™ื ื›ืืœื”. ืื ืขืฉื™ื ื• ื˜ืขื•ืช ืื™ืคืฉื”ื• ืขื ื—ื•ืžืช ื”ืืฉ, ืžืฉื”ื• ื ื—ืกื ืื™ืคืฉื”ื•, ืื ื—ื ื• ืชืžื™ื“ ื™ื›ื•ืœื™ื ืœืฉืœื•ื— ืชื ืื™ 0.0/0ืœืืกื•ืฃ ื”ื›ืœ ื‘ืžื”ื™ืจื•ืช. ื‘ื”ืžืฉืš ื ืชืงืŸ ื”ื›ืœ ื‘ื™ื“.

ืกื˜ื™ื ืื—ืจื™ื

ืืชื” ื™ื›ื•ืœ ืœื”ื•ืกื™ืฃ ื›ืœ ืกื˜ ืื—ืจ ื‘ื—ืœืœ $IPSETS$.

ืงื•ื ืกื•ืœ + iptables = :3

ื‘ืฉื‘ื™ืœ ืžื”? ืœืคืขืžื™ื ืžื™ืฉื”ื• ืฆืจื™ืš ipset, ืœืžืฉืœ, ื›ื“ื™ ืœื—ืงื•ืช ืืช ื”ื›ื™ื‘ื•ื™ ืฉืœ ื—ืœืง ื›ืœืฉื”ื• ืžื”ืืฉื›ื•ืœ. ื›ืœ ืื—ื“ ื™ื›ื•ืœ ืœื”ื‘ื™ื ื›ืœ ืกื˜, ืœืชืช ืœื”ื ืฉื, ื•ื”ื ื™ื™ืืกืคื• ืžื”ืงื•ื ืกื•ืœ. ื‘ืžืงื‘ื™ืœ, ืกื˜ื™ื ื™ื›ื•ืœื™ื ืœื”ืฉืชืชืฃ ื‘ื›ืœืœื™ iptables ืื• ืœืคืขื•ืœ ื›ืฆื•ื•ืช NOOP: ืขืงื‘ื™ื•ืช ืชื™ืฉืžืจ ืขืœ ื™ื“ื™ ื”ื“ืžื•ืŸ.

ื—ื‘ืจื™ื

ื‘ืขื‘ืจ ื–ื” ื”ื™ื” ื›ืš: ื”ืžืฉืชืžืฉ ื”ืชื—ื‘ืจ ืœืจืฉืช ื•ืงื™ื‘ืœ ืคืจืžื˜ืจื™ื ื“ืจืš ื”ื“ื•ืžื™ื™ืŸ. ืœืคื ื™ ื”ื•ืคืขืช ื—ื•ืžื•ืช ื”ืืฉ ืžื”ื“ื•ืจ ื”ื—ื“ืฉ, ืกื™ืกืงื• ืœื ื™ื“ืขื” ืœื”ื‘ื™ืŸ ื”ื™ื›ืŸ ื ืžืฆื ื”ืžืฉืชืžืฉ ื•ืื™ืคื” ื”-IP. ืœื›ืŸ, ื”ื’ื™ืฉื” ื ื™ืชื ื” ืจืง ื“ืจืš ืฉื ื”ืžืืจื— ืฉืœ ื”ืžื—ืฉื‘.

ืžื” ืขืฉื™ื ื•? ื ืชืงืขื ื• ื‘ืจื’ืข ืฉืงื™ื‘ืœื ื• ืืช ื”ื›ืชื•ื‘ืช. ื‘ื“ืจืš ื›ืœืœ ื–ื” dot1x, Wi-Fi ืื• VPN - ื”ื›ืœ ืขื•ื‘ืจ ื“ืจืš RADIUS. ืขื‘ื•ืจ ื›ืœ ืžืฉืชืžืฉ ืื ื• ื™ื•ืฆืจื™ื ืงื‘ื•ืฆื” ืœืคื™ ืฉื ืžืฉืชืžืฉ ื•ืžืฆื™ื‘ื™ื ื‘ื” IP ืขื TTL ื”ืฉื•ื•ื” ืœ-dhcp.lease ืฉืœื• - ื‘ืจื’ืข ืฉื”ื•ื ื™ืคื•ื’, ื”ื›ืœืœ ื™ื™ืขืœื.

ืงื•ื ืกื•ืœ + iptables = :3

ื›ืขืช ืื ื• ื™ื›ื•ืœื™ื ืœืคืชื•ื— ื’ื™ืฉื” ืœืฉื™ืจื•ืชื™ื, ื›ืžื• ืงื‘ื•ืฆื•ืช ืื—ืจื•ืช, ืœืคื™ ืฉื ืžืฉืชืžืฉ. ื”ื•ืจื“ื ื• ืืช ื”ื›ืื‘ ืžืฉืžื•ืช ืžืืจื—ื™ื ื›ืฉื”ื ืžืฉืชื ื™ื, ื•ื”ื•ืจื“ื ื• ืืช ื”ื ื˜ืœ ืžืžื”ื ื“ืกื™ ื”ืจืฉืช ื›ื™ ื”ื ื›ื‘ืจ ืœื ืฆืจื™ื›ื™ื ืืช ืกื™ืกืงื•. ื›ืขืช ื”ืžื”ื ื“ืกื™ื ืขืฆืžื ืจื•ืฉืžื™ื ื’ื™ืฉื” ื‘ืฉืจืชื™ื ืฉืœื”ื.

ื‘ื™ื“ื•ื“

ื‘ืžืงื‘ื™ืœ ื”ืชื—ืœื ื• ืœืคืจืง ืืช ื”ื‘ื™ื“ื•ื“. ืžื ื”ืœื™ ืฉื™ืจื•ืช ืขืจื›ื• ืžืœืื™, ื•ื ื™ืชื—ื ื• ืืช ื›ืœ ื”ืจืฉืชื•ืช ืฉืœื ื•. ื‘ื•ืื• ื ื—ืœืง ืื•ืชื ืœืื•ืชืŸ ืงื‘ื•ืฆื•ืช, ื•ื‘ืฉืจืชื™ื ื”ื“ืจื•ืฉื™ื ื ื•ืกืคื• ื”ืงื‘ื•ืฆื•ืช, ืœืžืฉืœ, ื›ื“ื™ ืœื”ื›ื—ื™ืฉ. ืขื›ืฉื™ื• ืื•ืชื• ื‘ื™ื“ื•ื“ ื‘ื™ืžื•ื™ ืžืกืชื™ื™ื ื‘ื›ืœืœื™ื_ื”ื›ื—ืฉื” ืฉืœ ื”ื”ืคืงื”, ืื‘ืœ ืœื ื‘ื”ืคืงื” ืขืฆืžื”.

ืงื•ื ืกื•ืœ + iptables = :3

ื”ืกื›ื™ืžื” ืคื•ืขืœืช ื‘ืžื”ื™ืจื•ืช ื•ื‘ืคืฉื˜ื•ืช: ืื ื• ืžืกื™ืจื™ื ืืช ื›ืœ ื”-ACL ืžื”ืฉืจืชื™ื, ืคื•ืจืงื™ื ืืช ื”ื—ื•ืžืจื” ื•ืžืฆืžืฆืžื™ื ืืช ืžืกืคืจ ื”-VLAN ื”ืžื‘ื•ื“ื“ื™ื.

ื‘ืงืจืช ื™ื•ืฉืจื”

ื‘ืขื‘ืจ, ื”ื™ื” ืœื ื• ื˜ืจื™ื’ืจ ืžื™ื•ื—ื“ ืฉื“ื™ื•ื•ื— ื›ืืฉืจ ืžื™ืฉื”ื• ืฉื™ื ื” ื›ืœืœ ื—ื•ืžืช ืืฉ ื‘ืื•ืคืŸ ื™ื“ื ื™. ื›ืชื‘ืชื™ ืœื™ื ื˜ืจ ืขื ืง ืœื‘ื“ื™ืงืช ื—ื•ืงื™ ื—ื•ืžืช ืืฉ, ื–ื” ื”ื™ื” ืงืฉื”. ืฉืœืžื•ืช ื ืฉืœื˜ืช ื›ืขืช ืขืœ ื™ื“ื™ BEFW. ื”ื•ื ืžื‘ื˜ื™ื— ื‘ืงื ืื•ืช ืฉื”ื›ืœืœื™ื ืฉื”ื•ื ืงื•ื‘ืข ืœื ื™ืฉืชื ื•. ืื ืžื™ืฉื”ื• ื™ืฉื ื” ืืช ื—ื•ืงื™ ื—ื•ืžืช ื”ืืฉ, ื–ื” ื™ืฉื ื” ื”ื›ืœ ื‘ื—ื–ืจื”. "ื”ื’ื“ืจืชื™ ื‘ืžื”ื™ืจื•ืช ืคืจื•ืงืกื™ ื›ื“ื™ ืฉืื•ื›ืœ ืœืขื‘ื•ื“ ืžื”ื‘ื™ืช" - ืื™ืŸ ื™ื•ืชืจ ืืคืฉืจื•ื™ื•ืช ื›ืืœื”.

BEFW ืฉื•ืœื˜ ื‘-ipset ืžื”ืฉื™ืจื•ืชื™ื ื•ืจืฉื•ื ื‘-befw.conf, ื›ืœืœื™ ื”ืฉื™ืจื•ืชื™ื ื‘ืฉืจืฉืจืช BEFW. ืื‘ืœ ื–ื” ืœื ืžืคืงื— ืขืœ ืฉืจืฉืจืื•ืช ื•ื›ืœืœื™ื ืื—ืจื™ื ื•ืฉืืจ ืื™-ืกื˜ื™ื.

ื”ื’ื ื” ืžืคื ื™ ื”ืชืจืกืงื•ืช

BEFW ืชืžื™ื“ ืžืื—ืกืŸ ืืช ื”ืžืฆื‘ ื”ื˜ื•ื‘ ื”ืื—ืจื•ืŸ ื”ื™ื“ื•ืข ื™ืฉื™ืจื•ืช ื‘ืžื‘ื ื” ื”ื‘ื™ื ืืจื™ state.bin. ืื ืžืฉื”ื• ืžืฉืชื‘ืฉ, ื”ื•ื ืชืžื™ื“ ื—ื•ื–ืจ ืœืžืฆื‘.bin ื–ื”.

ืงื•ื ืกื•ืœ + iptables = :3

ื–ื”ื• ื‘ื™ื˜ื•ื— ืžืคื ื™ ืคืขื•ืœืช ืงื•ื ืกื•ืœ ืœื ื™ืฆื™ื‘ื”, ื›ืืฉืจ ื”ื•ื ืœื ืฉืœื— ื ืชื•ื ื™ื ืื• ืฉืžื™ืฉื”ื• ื˜ืขื” ื•ื”ืฉืชืžืฉ ื‘ื›ืœืœื™ื ืฉืœื ื ื™ืชืŸ ืœื™ื™ืฉื. ื›ื“ื™ ืœื”ื‘ื˜ื™ื— ืฉืœื ื ื™ืฉืืจ ืœืœื ื—ื•ืžืช ืืฉ, BEFW ื™ื—ื–ื•ืจ ืœืžืฆื‘ ื”ืขื“ื›ื ื™ ื‘ื™ื•ืชืจ ืื ืชืชืจื—ืฉ ืฉื’ื™ืื” ื‘ื›ืœ ืฉืœื‘.

ื‘ืžืฆื‘ื™ื ืงืจื™ื˜ื™ื™ื, ื–ื•ื”ื™ ืขืจื•ื‘ื” ืœื›ืš ืฉื ื™ืฉืืจ ืขื ื—ื•ืžืช ืืฉ ืชืงื™ื ื”. ืื ื—ื ื• ืคื•ืชื—ื™ื ืืช ื›ืœ ื”ืจืฉืชื•ืช ื”ืืคื•ืจื•ืช ื‘ืชืงื•ื•ื” ืฉื”ืžื ื”ืœ ื™ื‘ื•ื ื•ื™ืชืงืŸ ืืช ื–ื”. ืžืชื™ืฉื”ื• ืื ื™ ืืฉื™ื ืืช ื–ื” ื‘ื”ื’ื“ืจื•ืช, ืื‘ืœ ืขื›ืฉื™ื• ื™ืฉ ืœื ื• ืจืง ืฉืœื•ืฉ ืจืฉืชื•ืช ืืคื•ืจื•ืช: 10/8, 172/12 ื•- 192.168/16. ื‘ืชื•ืš ื”ืงื•ื ืกื•ืœ ืฉืœื ื•, ื–ื•ื”ื™ ืชื›ื•ื ื” ื—ืฉื•ื‘ื” ืฉืขื•ื–ืจืช ืœื ื• ืœื”ืชืคืชื— ื”ืœืื”.

ื”ื“ื’ืžื”: ื‘ืžื”ืœืš ื”ื“ื•ื—, Ivan ืžื“ื’ื™ื ืืช ืžืฆื‘ ื”ื”ื“ื’ืžื” ืฉืœ BEFW. ืงืœ ื™ื•ืชืจ ืœืฆืคื•ืช ื‘ื”ืคื’ื ื” ื•ื™ื“ืื•. ืงื•ื“ ืžืงื•ืจ ื”ื“ื’ืžื” ื–ืžื™ืŸ ื‘-GitHub.

ื—ืกืจื•ื ื•ืช

ืื ื™ ืืกืคืจ ืœื›ื ืขืœ ื”ื‘ืื’ื™ื ืฉื ืชืงืœื ื• ื‘ื”ื.

ipset add set 0.0.0.0/0. ืžื” ืงื•ืจื” ืื ืชื•ืกื™ืฃ 0.0.0.0/0 ืœ- ipset? ื”ืื ื›ืœ ื›ืชื•ื‘ื•ืช ื”-IP ื™ืชื•ื•ืกืคื•? ื”ืื ื’ื™ืฉื” ืœืื™ื ื˜ืจื ื˜ ืชื”ื™ื” ื–ืžื™ื ื”?

ืœื, ื ืงื‘ืœ ื‘ืื’ ืฉืขืœื” ืœื ื• ืฉืขืชื™ื™ื ืฉืœ ื”ืฉื‘ืชื”. ื™ืชืจื” ืžื›ืš, ื”ื‘ืื’ ืœื ืขื‘ื“ ืžืื– 2016, ื”ื•ื ืžืžื•ืงื ื‘-RedHat Bugzilla ืชื—ืช ืžืกืคืจ #1297092, ื•ืžืฆืื ื• ืื•ืชื• ื‘ืžืงืจื” - ืžื“ื•ื— ืžืคืชื—.

ืขื›ืฉื™ื• ื–ื” ื›ืœืœ ื ื•ืงืฉื” ื‘-BEFW ืฉ 0.0.0.0/0 ื”ื•ืคืš ืœืฉืชื™ ื›ืชื•ื‘ื•ืช: 0.0.0.0/1 ะธ 128.0.0.0/1.

ipset restore set < ืงื•ื‘ืฅ. ืžื” ืขื•ืฉื” ipset ื›ืฉืืชื” ืื•ืžืจ ืœื• ืœืขืฉื•ืช ื–ืืช restore? ืืชื” ื—ื•ืฉื‘ ืฉื–ื” ืขื•ื‘ื“ ื›ืžื• iptables? ื”ืื ื–ื” ื™ืฉื—ื–ืจ ื ืชื•ื ื™ื?

ืฉื•ื ื“ื‘ืจ ื›ื–ื” - ื–ื” ืขื•ืฉื” ืžื™ื–ื•ื’, ื•ื”ื›ืชื•ื‘ื•ืช ื”ื™ืฉื ื•ืช ืœื ื”ื•ืœื›ื•ืช ืœืฉื•ื ืžืงื•ื, ืืชื” ืœื ื—ื•ืกื ื’ื™ืฉื”.

ืžืฆืื ื• ื‘ืื’ ื‘ืขืช ื‘ื“ื™ืงืช ื‘ื™ื“ื•ื“. ืขื›ืฉื™ื• ื™ืฉ ืžืขืจื›ืช ืžื•ืจื›ื‘ืช ืœืžื“ื™ - ื‘ืžืงื•ื restore ืžื•ื—ื–ืง create temp, ืื ื›ืš restore flush temp ะธ restore temp. ื‘ืกื•ืฃ ื”ื”ื—ืœืคื”: ืœืื˜ื•ืžื™ื•ืช, ื›ื™ ืื ืชืขืฉื” ืืช ื–ื” ืงื•ื“ื flush ื•ื‘ืจื’ืข ื–ื” ืžื’ื™ืขื” ืื™ื–ื• ื—ื‘ื™ืœื”, ื”ื™ื ืชื™ืžื—ืง ื•ืžืฉื”ื• ื™ืฉืชื‘ืฉ. ืื– ื™ืฉ ืฉื ืงืฆืช ืงืกื ืฉื—ื•ืจ.

ืงื•ื ืกื•ืœ kv get -datacenter=ืื—ืจ. ื›ืคื™ ืฉืืžืจืชื™, ืื ื—ื ื• ื—ื•ืฉื‘ื™ื ืฉืื ื—ื ื• ืžื‘ืงืฉื™ื ื›ืžื” ื ืชื•ื ื™ื, ืื‘ืœ ืื• ืฉื ืงื‘ืœ ื ืชื•ื ื™ื ืื• ืฉื’ื™ืื”. ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœืขืฉื•ืช ื–ืืช ื“ืจืš ืงื•ื ืกื•ืœ ืžืงื•ืžื™ืช, ืื‘ืœ ื‘ืžืงืจื” ื–ื” ืฉื ื™ื”ื ื™ืงืคืื•.

ืœืงื•ื— ื”ืงื•ื ืกื•ืœ ื”ืžืงื•ืžื™ ื”ื•ื ืžืขื˜ืคืช ืขืœ ื”-API ืฉืœ HTTP. ืื‘ืœ ื–ื” ืคืฉื•ื˜ ื ืชืงืข ื•ืœื ืžื’ื™ื‘ ืœ-Ctrl+C, ืื• Ctrl+Z, ืื• ืžืฉื”ื•, ื‘ืœื‘ื“ kill -9 ื‘ืงื•ื ืกื•ืœื” ื”ื‘ืื”. ื ืชืงืœื ื• ื‘ื–ื” ื›ืฉื‘ื ื™ื ื• ืืฉื›ื•ืœ ื’ื“ื•ืœ. ืื‘ืœ ืขื“ื™ื™ืŸ ืื™ืŸ ืœื ื• ืคืชืจื•ืŸ; ืื ื—ื ื• ืžืชื›ื•ื ื ื™ื ืœืชืงืŸ ืืช ื”ืฉื’ื™ืื” ื”ื–ื• ื‘ืงื•ื ืกื•ืœ.

ืžื ื”ื™ื’ ื”ืงื•ื ืกื•ืœ ืœื ืžื’ื™ื‘. ื”ืžืืกื˜ืจ ืฉืœื ื• ื‘ืžืจื›ื– ื”ื ืชื•ื ื™ื ืœื ืžื’ื™ื‘, ืื ื—ื ื• ื—ื•ืฉื‘ื™ื: "ืื•ืœื™ ืืœื’ื•ืจื™ืชื ื”ื‘ื—ื™ืจื” ืžื—ื“ืฉ ื™ืขื‘ื•ื“ ืขื›ืฉื™ื•?"

ืœื, ื–ื” ืœื ื™ืขื‘ื•ื“, ื•ื”ื ื™ื˜ื•ืจ ืœื ื™ืจืื” ื›ืœื•ื: ื”ืงื•ื ืกื•ืœ ื™ื’ื™ื“ ืฉื™ืฉ ืžื“ื“ ืžื—ื•ื™ื‘ื•ืช, ื ืžืฆื ืžื ื”ื™ื’, ื”ื›ืœ ื‘ืกื“ืจ.

ืื™ืš ืื ื—ื ื• ืžืชืžื•ื“ื“ื™ื ืขื ื–ื”? service consul restart ื‘ืงืจื•ืŸ ื›ืœ ืฉืขื”. ืื ื™ืฉ ืœืš 50 ืฉืจืชื™ื, ืœื ื ื•ืจื. ื›ืฉื™ื”ื™ื• 16 ื›ืืœื”, ืชื‘ื™ื ื• ืื™ืš ื–ื” ืขื•ื‘ื“.

ืžืกืงื ื”

ื›ืชื•ืฆืื” ืžื›ืš, ืงื™ื‘ืœื ื• ืืช ื”ื™ืชืจื•ื ื•ืช ื”ื‘ืื™ื:

  • ื›ื™ืกื•ื™ ืฉืœ 100% ืฉืœ ื›ืœ ืžื›ื•ื ื•ืช ืœื™ื ื•ืงืก.
  • ืžื”ื™ืจื•ืช.
  • ืื•ื˜ื•ืžืฆื™ื”.
  • ืฉื—ืจืจื ื• ืืช ืžื”ื ื“ืกื™ ื”ื—ื•ืžืจื” ื•ื”ืจืฉืช ืžืขื‘ื“ื•ืช.
  • ื”ื•ืคื™ืขื• ืืคืฉืจื•ื™ื•ืช ืื™ื ื˜ื’ืจืฆื™ื” ืฉื”ืŸ ื›ืžืขื˜ ื‘ืœืชื™ ืžื•ื’ื‘ืœื•ืช: ืืคื™ืœื• ืขื Kubernetes, ืืคื™ืœื• ืขื Ansible, ืืคื™ืœื• ืขื Python.

ื—ืกืจื•ื ื•ืช: ืงื•ื ืกื•ืœ, ืื™ืชื• ืื ื—ื ื• ืฆืจื™ื›ื™ื ืœื—ื™ื•ืช ืขื›ืฉื™ื•, ื•ื”ืขืœื•ืช ื”ื’ื‘ื•ื”ื” ืžืื•ื“ ืฉืœ ื˜ืขื•ืช. ื›ื“ื•ื’ืžื”, ืคืขื ืื—ืช ื‘-6:XNUMX (ืคืจื™ื™ื ื˜ื™ื™ื ื‘ืจื•ืกื™ื”) ืขืจื›ืชื™ ืžืฉื”ื• ื‘ืจืฉื™ืžื•ืช ื”ืจืฉืชื•ืช. ื‘ื“ื™ื•ืง ื‘ื ื™ื ื• ื‘ื™ื“ื•ื“ ื‘-BEFW ื‘ืื•ืชื• ื–ืžืŸ. ืขืฉื™ืชื™ ื˜ืขื•ืช ืื™ืคืฉื”ื•, ื ืจืื” ืฉืฆื™ื™ื ืชื™ ืืช ื”ืžืกื›ื” ื”ืœื ื ื›ื•ื ื”, ืื‘ืœ ื”ื›ืœ ื ืคืœ ืชื•ืš ืฉืชื™ ืฉื ื™ื•ืช. ื”ื ื™ื˜ื•ืจ ื ื“ืœืง, ืื™ืฉ ื”ืชืžื™ื›ื” ื”ืชื•ืจืŸ ื‘ื ื‘ืจื™ืฆื”: "ื™ืฉ ืœื ื• ื”ื›ืœ!" ืจืืฉ ื”ืžื—ืœืงื” ื”ืืคื™ืจ ื›ืฉื”ืกื‘ื™ืจ ืœื‘ื™ืช ื”ืขืกืง ืžื“ื•ืข ื–ื” ืงืจื”.

ืขืœื•ืช ื”ื˜ืขื•ืช ื”ื™ื ื›ืœ ื›ืš ื’ื‘ื•ื”ื” ืฉื”ืžืฆืื ื• ื”ืœื™ืš ืžื ื™ืขื” ืžื•ืจื›ื‘ ืžืฉืœื ื•. ืื ืืชื” ืžื™ื™ืฉื ืืช ื–ื” ื‘ืืชืจ ื™ื™ืฆื•ืจ ื’ื“ื•ืœ, ืืชื” ืœื ืฆืจื™ืš ืœืชืช ืืกื™ืžื•ืŸ ืžืืกื˜ืจ ืขืœ ืงื•ื ืกื•ืœ ืœื›ื•ืœื. ื–ื” ื™ื™ื’ืžืจ ืจืข.

ืขืœื•ืช. ื›ืชื‘ืชื™ ืงื•ื“ ืœ-400 ืฉืขื•ืช ืœื‘ื“. ื”ืฆื•ื•ืช ืฉืœื™ ืฉืœ 4 ืื ืฉื™ื ืžืงื“ื™ืฉ 10 ืฉืขื•ืช ื‘ื—ื•ื“ืฉ ืขืœ ืชืžื™ื›ื” ืœื›ื•ืœื. ื‘ื”ืฉื•ื•ืื” ืœืžื—ื™ืจ ืฉืœ ื›ืœ ื—ื•ืžืช ืืฉ ืžื”ื“ื•ืจ ื”ื—ื“ืฉ, ื–ื” ื‘ื—ื™ื ื.

ืชื•ื›ื ื™ื•ืช. ื”ืชื•ื›ื ื™ืช ืืจื•ื›ืช ื”ื˜ื•ื•ื— ื”ื™ื ืœืžืฆื•ื ืชื—ื‘ื•ืจื” ื—ืœื•ืคื™ืช ื›ื“ื™ ืœื”ื—ืœื™ืฃ ืื• ืœื”ืฉืœื™ื ืืช ืงื•ื ืกื•ืœ. ืื•ืœื™ ื–ื” ื™ื”ื™ื” ืงืคืงื ืื• ืžืฉื”ื• ื“ื•ืžื”. ืื‘ืœ ื‘ืฉื ื™ื ื”ืงืจื•ื‘ื•ืช ื ื—ื™ื” ืขืœ ืงื•ื ืกื•ืœ.

ืชื•ื›ื ื™ื•ืช ืžื™ื™ื“ื™ื•ืช: ืื™ื ื˜ื’ืจืฆื™ื” ืขื Fail2ban, ืขื ื ื™ื˜ื•ืจ, ืขื nftables, ืื•ืœื™ ืขื ื”ืคืฆื•ืช ืื—ืจื•ืช, ืžื“ื“ื™ื, ื ื™ื˜ื•ืจ ืžืชืงื“ื, ืื•ืคื˜ื™ืžื™ื–ืฆื™ื”. ื’ื ื”ืชืžื™ื›ื” ืฉืœ Kubernetes ื ืžืฆืืช ืื™ืคืฉื”ื• ื‘ืชื•ื›ื ื™ื•ืช, ื›ื™ ืขื›ืฉื™ื• ื™ืฉ ืœื ื• ื›ืžื” ืืฉื›ื•ืœื•ืช ื•ื”ืจืฆื•ืŸ.

ืขื•ื“ ืžื”ืชื•ื›ื ื™ื•ืช:

  • ื—ื™ืคื•ืฉ ื—ืจื™ื’ื•ืช ื‘ืชื ื•ืขื”;
  • ื ื™ื”ื•ืœ ืžืคื•ืช ืจืฉืช;
  • ืชืžื™ื›ืช Kubernetes;
  • ื”ืจื›ื‘ืช ื—ื‘ื™ืœื•ืช ืœื›ืœ ื”ืžืขืจื›ื•ืช;
  • Web-UI.

ืื ื• ืขื•ื‘ื“ื™ื ื›ืœ ื”ื–ืžืŸ ืขืœ ื”ืจื—ื‘ืช ื”ืชืฆื•ืจื”, ื”ื’ื“ืœืช ืžื“ื“ื™ื ื•ืื•ืคื˜ื™ืžื™ื–ืฆื™ื”.

ื”ืฆื˜ืจืคื• ืœืคืจื•ื™ืงื˜. ื”ืคืจื•ื™ืงื˜ ื”ืชื‘ืจืจ ื›ืžื’ื ื™ื‘, ืื‘ืœ, ืœืžืจื‘ื” ื”ืฆืขืจ, ื–ื” ืขื“ื™ื™ืŸ ืคืจื•ื™ืงื˜ ืฉืœ ืื“ื ืื—ื“. ื‘ื•ื ืœ GitHub ื•ืœื ืกื•ืช ืœืขืฉื•ืช ืžืฉื”ื•: ืœื”ืชื—ื™ื™ื‘, ืœื‘ื“ื•ืง, ืœื”ืฆื™ืข ืžืฉื”ื•, ืœืชืช ืืช ื”ื”ืขืจื›ื” ืฉืœืš.

ื‘ื™ื ืชื™ื™ื ืื ื—ื ื• ืžืชื›ื•ื ื ื™ื Saint HighLoad++, ืฉื™ืชืงื™ื™ื ื‘-6 ื•ื‘-7 ื‘ืืคืจื™ืœ ื‘ืกื ื˜ ืคื˜ืจืกื‘ื•ืจื’, ื•ืื ื• ืžื–ืžื™ื ื™ื ืžืคืชื—ื™ื ืฉืœ ืžืขืจื›ื•ืช ืขื•ืžืก ื’ื‘ื•ื” ืœื”ื’ื™ืฉ ื‘ืงืฉื” ืœื“ื•ื—. ื“ื•ื‘ืจื™ื ืžื ื•ืกื™ื ื›ื‘ืจ ื™ื•ื“ืขื™ื ืžื” ืœืขืฉื•ืช, ืื‘ืœ ืœืžื™ ืฉื ื•ื“ืข ืœื“ื‘ืจ ื—ื“ืฉ ืื ื—ื ื• ืžืžืœื™ืฆื™ื ืœืคื—ื•ืช ืœื ืกื•ืช. ืœื”ืฉืชืชืคื•ืช ื‘ื›ื ืก ื›ื“ื•ื‘ืจ ื™ืฉ ืžืกืคืจ ื™ืชืจื•ื ื•ืช. ืืชื” ื™ื›ื•ืœ ืœืงืจื•ื ืื™ืœื• ืžื”ื, ืœืžืฉืœ, ื‘ืกื•ืฃ ื‘ืžืืžืจ ื–ื”.

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”