āĻ­āĻŋāĻĒāĻŋāĻāĻ¨ āĻĨā§‡āĻ•ā§‡ āĻšā§‹āĻŽ āĻ˛ā§āĻ¯āĻžāĻ¨

āĻ­āĻŋāĻĒāĻŋāĻāĻ¨ āĻĨā§‡āĻ•ā§‡ āĻšā§‹āĻŽ āĻ˛ā§āĻ¯āĻžāĻ¨

TL; āĻĄāĻŋāĻ†āĻ°: āĻ†āĻŽāĻŋ āĻāĻ•āĻŸāĻŋ VPS-āĻ āĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ°āĻ—āĻžāĻ°ā§āĻĄ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°āĻŋ, OpenWRT-āĻ¤ā§‡ āĻ†āĻŽāĻžāĻ° āĻšā§‹āĻŽ āĻ°āĻžāĻ‰āĻŸāĻžāĻ° āĻĨā§‡āĻ•ā§‡ āĻāĻŸāĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻ‚āĻ¯ā§‹āĻ— āĻ•āĻ°āĻŋ āĻāĻŦāĻ‚ āĻ†āĻŽāĻžāĻ° āĻĢā§‹āĻ¨ āĻĨā§‡āĻ•ā§‡ āĻ†āĻŽāĻžāĻ° āĻšā§‹āĻŽ āĻ¸āĻžāĻŦāĻ¨ā§‡āĻŸ āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸ āĻ•āĻ°āĻŋāĨ¤

āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻ•āĻŸāĻŋ āĻšā§‹āĻŽ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡ āĻ†āĻĒāĻ¨āĻžāĻ° āĻŦā§āĻ¯āĻ•ā§āĻ¤āĻŋāĻ—āĻ¤ āĻĒāĻ°āĻŋāĻ•āĻžāĻ āĻžāĻŽā§‹ āĻ°āĻžāĻ–ā§‡āĻ¨ āĻŦāĻž āĻŦāĻžāĻĄāĻŧāĻŋāĻ¤ā§‡ āĻ…āĻ¨ā§‡āĻ•āĻ—ā§āĻ˛āĻŋ āĻ†āĻ‡āĻĒāĻŋ-āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŋāĻ¤ āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸ āĻĨāĻžāĻ•ā§‡, āĻ¤āĻžāĻšāĻ˛ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻ­āĻŦāĻ¤ āĻ•āĻžāĻœ āĻĨā§‡āĻ•ā§‡, āĻŦāĻžāĻ¸, āĻŸā§āĻ°ā§‡āĻ¨ āĻāĻŦāĻ‚ āĻŽā§‡āĻŸā§āĻ°ā§‹ āĻĨā§‡āĻ•ā§‡ āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋāĻ¤ā§‡ āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸ āĻĒā§‡āĻ¤ā§‡ āĻšāĻžāĻ¨ā§ˇ āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ‡, āĻ…āĻ¨ā§āĻ°ā§‚āĻĒ āĻ•āĻžāĻœā§‡āĻ° āĻœāĻ¨ā§āĻ¯, āĻĒā§āĻ°āĻĻāĻžāĻ¨āĻ•āĻžāĻ°ā§€āĻ° āĻ•āĻžāĻ› āĻĨā§‡āĻ•ā§‡ āĻ†āĻ‡āĻĒāĻŋ āĻ•ā§‡āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻ°āĻĒāĻ°ā§‡ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻžāĻ° āĻĒā§‹āĻ°ā§āĻŸāĻ—ā§āĻ˛āĻŋ āĻŦāĻžāĻ‡āĻ°ā§‡āĻ° āĻĻāĻŋāĻ•ā§‡ āĻĢāĻ°ā§‹āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧāĨ¤

āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§‡, āĻ†āĻŽāĻŋ āĻ†āĻŽāĻžāĻ° āĻšā§‹āĻŽ LAN-āĻ āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸ āĻ¸āĻš āĻāĻ•āĻŸāĻŋ VPN āĻ¸ā§‡āĻŸ āĻ†āĻĒ āĻ•āĻ°ā§‡āĻ›āĻŋāĨ¤ āĻāĻ‡ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§‡āĻ° āĻ¸ā§āĻŦāĻŋāĻ§āĻž:

  • āĻ¸ā§āĻŦāĻšā§āĻ›āĻ¤āĻž: āĻ†āĻŽāĻŋ āĻ¯ā§‡ āĻ•ā§‹āĻ¨ā§‹ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¤ā§‡ āĻŦāĻžāĻĄāĻŧāĻŋāĻ¤ā§‡ āĻŦā§‹āĻ§.
  • āĻ†āĻ°āĻžāĻŽ: āĻāĻŸāĻŋ āĻ¸ā§‡āĻŸ āĻ•āĻ°ā§āĻ¨ āĻāĻŦāĻ‚ āĻ­ā§āĻ˛ā§‡ āĻ¯āĻžāĻ¨, āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻĒā§‹āĻ°ā§āĻŸ āĻĢāĻ°ā§‹āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ•āĻ°āĻžāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧā§‡ āĻšāĻŋāĻ¨ā§āĻ¤āĻž āĻ•āĻ°āĻžāĻ° āĻĻāĻ°āĻ•āĻžāĻ° āĻ¨ā§‡āĻ‡āĨ¤
  • āĻŽā§‚āĻ˛ā§āĻ¯: āĻ†āĻŽāĻžāĻ° āĻ‡āĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§‡ āĻāĻ•āĻŸāĻŋ VPS āĻ†āĻ›ā§‡; āĻāĻ‡ āĻ§āĻ°āĻ¨ā§‡āĻ° āĻ•āĻžāĻœā§‡āĻ° āĻœāĻ¨ā§āĻ¯, āĻāĻ•āĻŸāĻŋ āĻ†āĻ§ā§āĻ¨āĻŋāĻ• VPN āĻ¸āĻŽā§āĻĒāĻĻā§‡āĻ° āĻĒāĻ°āĻŋāĻĒā§āĻ°ā§‡āĻ•ā§āĻˇāĻŋāĻ¤ā§‡ āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻŦāĻŋāĻ¨āĻžāĻŽā§‚āĻ˛ā§āĻ¯ā§‡āĨ¤
  • āĻ¨āĻŋāĻ°āĻžāĻĒāĻ¤ā§āĻ¤āĻž: āĻ•āĻŋāĻ›ā§āĻ‡ āĻ†āĻŸāĻ•ā§‡ āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻž, āĻ†āĻĒāĻ¨āĻŋ āĻĒāĻžāĻ¸āĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ›āĻžāĻĄāĻŧāĻžāĻ‡ MongoDB āĻ›ā§‡āĻĄāĻŧā§‡ āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻāĻŦāĻ‚ āĻ•ā§‡āĻ‰ āĻ†āĻĒāĻ¨āĻžāĻ° āĻĄā§‡āĻŸāĻž āĻšā§āĻ°āĻŋ āĻ•āĻ°āĻŦā§‡ āĻ¨āĻžāĨ¤

āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§‡, downsides āĻ†āĻ›ā§‡. āĻĒā§āĻ°āĻĨāĻŽāĻ¤, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻ¸āĻžāĻ‡āĻĄ āĻ¸āĻš āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸāĻ•ā§‡ āĻ†āĻ˛āĻžāĻĻāĻžāĻ­āĻžāĻŦā§‡ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ° āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ¯āĻĻāĻŋ āĻĒā§āĻ°āĻšā§āĻ° āĻ¸āĻ‚āĻ–ā§āĻ¯āĻ• āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸ āĻĨāĻžāĻ•ā§‡ āĻ¯āĻž āĻĨā§‡āĻ•ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻžāĻ—ā§āĻ˛āĻŋ āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻžāĻ¨ āĻ¤āĻŦā§‡ āĻāĻŸāĻŋ āĻ…āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻœāĻ¨āĻ• āĻšāĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĨ¤ āĻĻā§āĻŦāĻŋāĻ¤ā§€āĻ¯āĻŧāĻ¤, āĻ†āĻĒāĻ¨āĻžāĻ° āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻāĻ•āĻ‡ āĻĒāĻ°āĻŋāĻ¸āĻ°ā§‡āĻ° āĻāĻ•āĻŸāĻŋ LAN āĻĨāĻžāĻ•āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ - āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻāĻ‡ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻŸāĻŋ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤

āĻ†āĻŽāĻžāĻĻā§‡āĻ° āĻĻāĻ°āĻ•āĻžāĻ°:

  1. āĻ­āĻŋāĻĒāĻŋāĻāĻ¸ (āĻ†āĻŽāĻžāĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻĄā§‡āĻŦāĻŋāĻ¯āĻŧāĻžāĻ¨ 10 āĻ)āĨ¤
  2. OpenWRT āĻ°āĻžāĻ‰āĻŸāĻžāĻ°āĨ¤
  3. āĻŸā§‡āĻ˛āĻŋāĻĢā§‹āĻ¨āĨ¤
  4. āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ•āĻŋāĻ›ā§ āĻ“āĻ¯āĻŧā§‡āĻŦ āĻĒāĻ°āĻŋāĻˇā§‡āĻŦāĻž āĻ¸āĻš āĻšā§‹āĻŽ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°āĨ¤
  5. āĻ¸ā§‹āĻœāĻž āĻ…āĻ¸ā§āĻ¤ā§āĻ°āĨ¤

āĻ†āĻŽāĻŋ āĻ¯ā§‡ āĻ­āĻŋāĻĒāĻŋāĻāĻ¨ āĻĒā§āĻ°āĻ¯ā§āĻ•ā§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻŦ āĻ¤āĻž āĻšāĻ˛ āĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ°āĻ—āĻžāĻ°ā§āĻĄāĨ¤ āĻāĻ‡ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨āĻŸāĻŋāĻ°āĻ“ āĻļāĻ•ā§āĻ¤āĻŋ āĻāĻŦāĻ‚ āĻĻā§āĻ°ā§āĻŦāĻ˛āĻ¤āĻž āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡, āĻ†āĻŽāĻŋ āĻ¸ā§‡āĻ—ā§āĻ˛āĻŋ āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻ•āĻ°āĻŦ āĻ¨āĻžāĨ¤ VPN āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻŽāĻŋ āĻāĻ•āĻŸāĻŋ āĻ¸āĻžāĻŦāĻ¨ā§‡āĻŸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ•āĻ°āĻŋ 192.168.99.0/24, āĻāĻŦāĻ‚ āĻ†āĻŽāĻžāĻ° āĻŦāĻžāĻĄāĻŧāĻŋāĻ¤ā§‡ 192.168.0.0/24.

āĻ­āĻŋāĻĒāĻŋāĻāĻ¸ āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ°ā§‡āĻļāĻ¨

āĻāĻŽāĻ¨āĻ•āĻŋ āĻāĻ•āĻŸāĻŋ āĻŽāĻžāĻ¸ā§‡ 30 āĻ°ā§āĻŦā§‡āĻ˛ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻŦāĻšā§‡āĻ¯āĻŧā§‡ āĻĻā§āĻƒāĻ–āĻœāĻ¨āĻ• VPS āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¯āĻĨā§‡āĻˇā§āĻŸ, āĻ¯āĻĻāĻŋ āĻ†āĻĒāĻ¨āĻŋ āĻ¯āĻĨā§‡āĻˇā§āĻŸ āĻ­āĻžāĻ—ā§āĻ¯āĻŦāĻžāĻ¨ āĻšāĻ¨ āĻ›āĻŋāĻ¨āĻ¤āĻžāĻ‡.

āĻ†āĻŽāĻŋ āĻāĻ•āĻŸāĻŋ āĻĒāĻ°āĻŋāĻˇā§āĻ•āĻžāĻ° āĻŽā§‡āĻļāĻŋāĻ¨ā§‡ āĻ°ā§āĻŸ āĻšāĻŋāĻ¸āĻžāĻŦā§‡ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ•āĻ˛āĻžāĻĒ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨ āĻ•āĻ°āĻŋ; āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻšāĻ˛ā§‡, `sudo` āĻ¯ā§‹āĻ— āĻ•āĻ°ā§āĻ¨ āĻāĻŦāĻ‚ āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļāĻžāĻŦāĻ˛ā§€ āĻŽāĻžāĻ¨āĻŋāĻ¯āĻŧā§‡ āĻ¨āĻŋāĻ¨āĨ¤

āĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ°āĻ—āĻžāĻ°ā§āĻĄā§‡āĻ° āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§€āĻ˛āĻ¤āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§‡ āĻ†āĻ¨āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ›āĻŋāĻ˛ āĻ¨āĻž, āĻ¤āĻžāĻ‡ āĻ†āĻŽāĻŋ 'āĻ…ā§āĻ¯āĻžāĻĒā§āĻŸ āĻāĻĄāĻŋāĻŸ-āĻ¸ā§‹āĻ°ā§āĻ¸' āĻšāĻžāĻ˛āĻžāĻ‡ āĻāĻŦāĻ‚ āĻĢāĻžāĻ‡āĻ˛ā§‡āĻ° āĻļā§‡āĻˇā§‡ āĻĻā§āĻŸāĻŋ āĻ˛āĻžāĻ‡āĻ¨ā§‡ āĻŦā§āĻ¯āĻžāĻ•āĻĒā§‹āĻ°ā§āĻŸ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻŋ:

deb http://deb.debian.org/debian/ buster-backports main
# deb-src http://deb.debian.org/debian/ buster-backports main

āĻĒā§āĻ¯āĻžāĻ•ā§‡āĻœāĻŸāĻŋ āĻ¸ā§āĻŦāĻžāĻ­āĻžāĻŦāĻŋāĻ• āĻ‰āĻĒāĻžāĻ¯āĻŧā§‡ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡: apt update && apt install wireguard.

āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§€, āĻ†āĻŽāĻ°āĻž āĻāĻ•āĻŸāĻŋ āĻ•ā§€ āĻœā§‹āĻĄāĻŧāĻž āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻŋ: wg genkey | tee /etc/wireguard/vps.private | wg pubkey | tee /etc/wireguard/vps.public. āĻ¸āĻžāĻ°ā§āĻ•āĻŋāĻŸā§‡ āĻ…āĻ‚āĻļāĻ—ā§āĻ°āĻšāĻŖāĻ•āĻžāĻ°ā§€ āĻĒā§āĻ°āĻ¤āĻŋāĻŸāĻŋ āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻāĻ‡ āĻ…āĻĒāĻžāĻ°ā§‡āĻļāĻ¨āĻŸāĻŋ āĻ†āĻ°āĻ“ āĻĻā§āĻŦāĻžāĻ° āĻĒā§āĻ¨āĻ°āĻžāĻŦā§ƒāĻ¤ā§āĻ¤āĻŋ āĻ•āĻ°ā§āĻ¨āĨ¤ āĻ…āĻ¨ā§āĻ¯ āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ•ā§€ āĻĢāĻžāĻ‡āĻ˛āĻ—ā§āĻ˛āĻŋāĻ° āĻĒāĻĨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°ā§āĻ¨ āĻāĻŦāĻ‚ āĻŦā§āĻ¯āĻ•ā§āĻ¤āĻŋāĻ—āĻ¤ āĻ•ā§€āĻ—ā§āĻ˛āĻŋāĻ° āĻ¸ā§āĻ°āĻ•ā§āĻˇāĻž āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ•ā§‡ āĻ­ā§āĻ˛āĻŦā§‡āĻ¨ āĻ¨āĻžāĨ¤

āĻāĻ–āĻ¨ āĻ†āĻŽāĻ°āĻž āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ°ā§‡āĻļāĻ¨ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻ•āĻ°āĻŋāĨ¤ āĻ¨āĻĨāĻŋāĻ¤ā§‡ /etc/wireguard/wg0.conf config āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ:

[Interface] Address = 192.168.99.1/24
ListenPort = 57953
PrivateKey = 0JxJPUHz879NenyujROVK0YTzfpmzNtbXmFwItRKdHs=

[Peer] # OpenWRT
PublicKey = 36MMksSoKVsPYv9eyWUKPGMkEs3HS+8yIUqMV8F+JGw=
AllowedIPs = 192.168.99.2/32,192.168.0.0/24

[Peer] # Smartphone
PublicKey = /vMiDxeUHqs40BbMfusB6fZhd+i5CIPHnfirr5m3TTI=
AllowedIPs = 192.168.99.3/32

āĻŦāĻŋāĻ­āĻžāĻ—ā§‡ [Interface] āĻŽā§‡āĻļāĻŋāĻ¨ā§‡āĻ° āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ āĻ¨āĻŋāĻœā§‡āĻ‡ āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļāĻŋāĻ¤, āĻāĻŦāĻ‚ āĻŽāĻ§ā§āĻ¯ā§‡ [Peer] - āĻ¯āĻžāĻ°āĻž āĻāĻŸāĻŋāĻ° āĻ¸āĻžāĻĨā§‡ āĻ¸āĻ‚āĻ¯ā§āĻ•ā§āĻ¤ āĻšāĻŦā§‡ āĻ¤āĻžāĻĻā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ā§ˇ āĻ­āĻŋāĻ¤āĻ°ā§‡ AllowedIPs āĻ•āĻŽāĻž āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦāĻŋāĻ­āĻ•ā§āĻ¤, āĻ¸āĻ‚āĻļā§āĻ˛āĻŋāĻˇā§āĻŸ āĻĒāĻŋāĻ¯āĻŧāĻžāĻ°ā§‡ āĻ¯ā§‡ āĻ¸āĻžāĻŦāĻ¨ā§‡āĻŸāĻ—ā§āĻ˛āĻŋ āĻ°āĻžāĻ‰āĻŸ āĻ•āĻ°āĻž āĻšāĻŦā§‡ āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤ āĻāĻ‡ āĻ•āĻžāĻ°āĻŖā§‡, āĻ­āĻŋāĻĒāĻŋāĻāĻ¨ āĻ¸āĻžāĻŦāĻ¨ā§‡āĻŸā§‡ "āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ" āĻĄāĻŋāĻ­āĻžāĻ‡āĻ¸āĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻšāĻ•āĻ°ā§āĻŽā§€āĻĻā§‡āĻ° āĻ…āĻŦāĻļā§āĻ¯āĻ‡ āĻāĻ•āĻŸāĻŋ āĻŽāĻžāĻ¸ā§āĻ• āĻĨāĻžāĻ•āĻ¤ā§‡ āĻšāĻŦā§‡ /32, āĻŦāĻžāĻ•āĻŋ āĻ¸āĻŦāĻ•āĻŋāĻ›ā§ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ°āĻžāĻ‰āĻŸ āĻ•āĻ°āĻž āĻšāĻŦā§‡āĨ¤ āĻ¯ā§‡āĻšā§‡āĻ¤ā§ āĻšā§‹āĻŽ āĻ¨ā§‡āĻŸāĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻ•āĻŸāĻŋ OpenWRT āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻ°āĻžāĻ‰āĻŸ āĻ•āĻ°āĻž āĻšāĻŦā§‡, āĻ‡āĻ¨ AllowedIPs āĻ†āĻŽāĻ°āĻž āĻ¸āĻ‚āĻļā§āĻ˛āĻŋāĻˇā§āĻŸ āĻĒāĻŋāĻ¯āĻŧāĻžāĻ°ā§‡āĻ° āĻšā§‹āĻŽ āĻ¸āĻžāĻŦāĻ¨ā§‡āĻŸ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻŋāĨ¤ āĻ­āĻŋāĻ¤āĻ°ā§‡ PrivateKey и PublicKey VPS-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ‰āĻ¤ā§āĻĒāĻ¨ā§āĻ¨ āĻĒā§āĻ°āĻžāĻ‡āĻ­ā§‡āĻŸ āĻ•ā§€ āĻāĻŦāĻ‚ āĻ¸ā§‡āĻ‡ āĻ…āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§€ āĻ¸āĻŽāĻŦāĻ¯āĻŧāĻ¸ā§€āĻĻā§‡āĻ° āĻĒāĻžāĻŦāĻ˛āĻŋāĻ• āĻ•ā§€āĻ—ā§āĻ˛āĻŋāĻ•ā§‡ āĻĒāĻšāĻ¨ āĻ•āĻ°ā§‡āĨ¤

VPS-āĻ, āĻ¯āĻž āĻ…āĻŦāĻļāĻŋāĻˇā§āĻŸ āĻĨāĻžāĻ•ā§‡ āĻ¤āĻž āĻšāĻ˛ āĻ•āĻŽāĻžāĻ¨ā§āĻĄāĻŸāĻŋ āĻšāĻžāĻ˛āĻžāĻ¨ā§‹ āĻ¯āĻž āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻĢā§‡āĻ¸āĻŸāĻŋ āĻ†āĻ¨āĻŦā§‡ āĻāĻŦāĻ‚ āĻāĻŸāĻŋ āĻ…āĻŸā§‹āĻ°āĻžāĻ¨ā§‡ āĻ¯ā§āĻ•ā§āĻ¤ āĻ•āĻ°āĻŦā§‡: systemctl enable --now wg-quick@wg0. āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸āĻ‚āĻ¯ā§‹āĻ—ā§‡āĻ° āĻ…āĻŦāĻ¸ā§āĻĨāĻž āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻšā§‡āĻ• āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡ wg.

OpenWRT āĻ•āĻ¨āĻĢāĻŋāĻ—āĻžāĻ°ā§‡āĻļāĻ¨

āĻāĻ‡ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ†āĻĒāĻ¨āĻžāĻ° āĻ¯āĻž āĻ•āĻŋāĻ›ā§ āĻĻāĻ°āĻ•āĻžāĻ° āĻ¤āĻž āĻ˛ā§āĻ¸āĻŋ āĻŽāĻĄāĻŋāĻ‰āĻ˛ā§‡ (āĻ“āĻĒā§‡āĻ¨āĻĄāĻŦā§āĻ˛āĻŋāĻ‰āĻ†āĻ°āĻŸāĻŋ āĻ“āĻ¯āĻŧā§‡āĻŦ āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻĢā§‡āĻ¸)āĨ¤ āĻ˛āĻ— āĻ‡āĻ¨ āĻ•āĻ°ā§āĻ¨ āĻāĻŦāĻ‚ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ āĻŽā§‡āĻ¨ā§āĻ¤ā§‡ āĻ¸āĻĢā§āĻŸāĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻŸā§āĻ¯āĻžāĻŦāĻŸāĻŋ āĻ–ā§āĻ˛ā§āĻ¨āĨ¤ OpenWRT āĻŽā§‡āĻļāĻŋāĻ¨ā§‡ āĻāĻ•āĻŸāĻŋ āĻ•ā§āĻ¯āĻžāĻļā§‡ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖ āĻ•āĻ°ā§‡ āĻ¨āĻž, āĻ¤āĻžāĻ‡ āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ¸āĻŦā§āĻœ āĻ†āĻĒāĻĄā§‡āĻŸ āĻ¤āĻžāĻ˛āĻŋāĻ•āĻž āĻŦā§‹āĻ¤āĻžāĻŽā§‡ āĻ•ā§āĻ˛āĻŋāĻ• āĻ•āĻ°ā§‡ āĻ‰āĻĒāĻ˛āĻŦā§āĻ§ āĻĒā§āĻ¯āĻžāĻ•ā§‡āĻœā§‡āĻ° āĻ¤āĻžāĻ˛āĻŋāĻ•āĻž āĻ†āĻĒāĻĄā§‡āĻŸ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤ āĻ¸āĻŽāĻžāĻĒā§āĻ¤āĻŋāĻ° āĻĒāĻ°ā§‡, āĻĢāĻŋāĻ˛ā§āĻŸāĻžāĻ°ā§‡ āĻĄā§āĻ°āĻžāĻ‡āĻ­ āĻ•āĻ°ā§āĻ¨ luci-app-wireguard āĻāĻŦāĻ‚, āĻāĻ•āĻŸāĻŋ āĻ¸ā§āĻ¨ā§āĻĻāĻ° āĻ¨āĻŋāĻ°ā§āĻ­āĻ°āĻ¤āĻž āĻ—āĻžāĻ›ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ‰āĻ‡āĻ¨ā§āĻĄā§‹āĻŸāĻŋāĻ° āĻĻāĻŋāĻ•ā§‡ āĻ¤āĻžāĻ•āĻŋāĻ¯āĻŧā§‡, āĻāĻ‡ āĻĒā§āĻ¯āĻžāĻ•ā§‡āĻœāĻŸāĻŋ āĻ‡āĻ¨āĻ¸ā§āĻŸāĻ˛ āĻ•āĻ°ā§āĻ¨āĨ¤

āĻ¨ā§‡āĻŸāĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻ• āĻŽā§‡āĻ¨ā§āĻ¤ā§‡, āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻĢā§‡āĻ¸ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨ āĻ•āĻ°ā§āĻ¨ āĻāĻŦāĻ‚ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻ¤āĻžāĻ˛āĻŋāĻ•āĻžāĻ° āĻ¨ā§€āĻšā§‡ āĻ¸āĻŦā§āĻœ āĻ¯ā§āĻ•ā§āĻ¤ āĻ¨āĻ¤ā§āĻ¨ āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻĢā§‡āĻ¸ āĻŦā§‹āĻ¤āĻžāĻŽā§‡ āĻ•ā§āĻ˛āĻŋāĻ• āĻ•āĻ°ā§āĻ¨āĨ¤ āĻ¨āĻžāĻŽ āĻ˛ā§‡āĻ–āĻžāĻ° āĻĒāĻ° (āĻāĻ›āĻžāĻĄāĻŧāĻžāĻ“ wg0 āĻ†āĻŽāĻžāĻ° āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡) āĻāĻŦāĻ‚ WireGuard VPN āĻĒā§āĻ°ā§‹āĻŸā§‹āĻ•āĻ˛ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¨ āĻ•āĻ°āĻ˛ā§‡, āĻšāĻžāĻ°āĻŸāĻŋ āĻŸā§āĻ¯āĻžāĻŦ āĻ¸āĻš āĻāĻ•āĻŸāĻŋ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ āĻĢāĻ°ā§āĻŽ āĻ–ā§‹āĻ˛ā§‡āĨ¤

āĻ­āĻŋāĻĒāĻŋāĻāĻ¨ āĻĨā§‡āĻ•ā§‡ āĻšā§‹āĻŽ āĻ˛ā§āĻ¯āĻžāĻ¨

āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ āĻŸā§āĻ¯āĻžāĻŦā§‡, āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ¸āĻžāĻŦāĻ¨ā§‡āĻŸā§‡āĻ° āĻ¸āĻžāĻĨā§‡ OpenWRT-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻŦā§āĻ¯āĻ•ā§āĻ¤āĻŋāĻ—āĻ¤ āĻ•ā§€ āĻāĻŦāĻ‚ IP āĻ āĻŋāĻ•āĻžāĻ¨āĻž āĻ˛āĻŋāĻ–āĻ¤ā§‡ āĻšāĻŦā§‡āĨ¤

āĻ­āĻŋāĻĒāĻŋāĻāĻ¨ āĻĨā§‡āĻ•ā§‡ āĻšā§‹āĻŽ āĻ˛ā§āĻ¯āĻžāĻ¨

āĻĢāĻžāĻ¯āĻŧāĻžāĻ°āĻ“āĻ¯āĻŧāĻžāĻ˛ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ āĻŸā§āĻ¯āĻžāĻŦā§‡, āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻĢā§‡āĻ¸āĻŸāĻŋāĻ•ā§‡ āĻ¸ā§āĻĨāĻžāĻ¨ā§€āĻ¯āĻŧ āĻ¨ā§‡āĻŸāĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻ•ā§‡ āĻ¸āĻ‚āĻ¯ā§āĻ•ā§āĻ¤ āĻ•āĻ°ā§āĻ¨āĨ¤ āĻāĻ‡āĻ­āĻžāĻŦā§‡, āĻ­āĻŋāĻĒāĻŋāĻāĻ¨ āĻĨā§‡āĻ•ā§‡ āĻ¸āĻ‚āĻ¯ā§‹āĻ—āĻ—ā§āĻ˛āĻŋ āĻ…āĻŦāĻžāĻ§ā§‡ āĻ¸ā§āĻĨāĻžāĻ¨ā§€āĻ¯āĻŧ āĻāĻ˛āĻžāĻ•āĻžāĻ¯āĻŧ āĻĒā§āĻ°āĻŦā§‡āĻļ āĻ•āĻ°āĻŦā§‡āĨ¤

āĻ­āĻŋāĻĒāĻŋāĻāĻ¨ āĻĨā§‡āĻ•ā§‡ āĻšā§‹āĻŽ āĻ˛ā§āĻ¯āĻžāĻ¨

āĻĒāĻŋāĻ¯āĻŧāĻžāĻ°ā§āĻ¸ āĻŸā§āĻ¯āĻžāĻŦā§‡, āĻāĻ•āĻŽāĻžāĻ¤ā§āĻ° āĻŦā§‹āĻ¤āĻžāĻŽāĻŸāĻŋ āĻ•ā§āĻ˛āĻŋāĻ• āĻ•āĻ°ā§āĻ¨, āĻ¤āĻžāĻ°āĻĒāĻ°ā§‡ āĻ†āĻĒāĻ¨āĻŋ āĻ†āĻĒāĻĄā§‡āĻŸ āĻĢāĻ°ā§āĻŽā§‡ āĻ­āĻŋāĻĒāĻŋāĻāĻ¸ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻĄā§‡āĻŸāĻž āĻĒā§‚āĻ°āĻŖ āĻ•āĻ°āĻŦā§‡āĻ¨: āĻ¸āĻ°ā§āĻŦāĻœāĻ¨ā§€āĻ¨ āĻ•ā§€, āĻ…āĻ¨ā§āĻŽā§‹āĻĻāĻŋāĻ¤ āĻ†āĻ‡āĻĒāĻŋ (āĻ†āĻĒāĻ¨āĻžāĻ•ā§‡ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ°ā§‡ āĻ¸āĻŽā§āĻĒā§‚āĻ°ā§āĻŖ āĻ­āĻŋāĻĒāĻŋāĻāĻ¨ āĻ¸āĻžāĻŦāĻ¨ā§‡āĻŸ āĻ°ā§āĻŸ āĻ•āĻ°āĻ¤ā§‡ āĻšāĻŦā§‡)āĨ¤ āĻāĻ¨ā§āĻĄāĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻšā§‹āĻ¸ā§āĻŸ āĻāĻŦāĻ‚ āĻāĻ¨ā§āĻĄāĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻĒā§‹āĻ°ā§āĻŸā§‡, āĻ¯āĻĨāĻžāĻ•ā§āĻ°āĻŽā§‡ ListenPort āĻ¨āĻŋāĻ°ā§āĻĻā§‡āĻļā§‡ āĻĒā§‚āĻ°ā§āĻŦā§‡ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ•āĻ°āĻž āĻĒā§‹āĻ°ā§āĻŸ āĻ¸āĻš VPS-āĻāĻ° IP āĻ āĻŋāĻ•āĻžāĻ¨āĻž āĻ˛āĻŋāĻ–ā§āĻ¨āĨ¤ āĻ°ā§āĻŸ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ°ā§āĻŸ āĻ…āĻ¨ā§āĻŽā§‹āĻĻāĻŋāĻ¤ āĻ†āĻ‡āĻĒāĻŋ āĻšā§‡āĻ• āĻ•āĻ°ā§āĻ¨āĨ¤ āĻāĻŦāĻ‚ Persistent Keep Alive āĻĒā§‚āĻ°āĻŖ āĻ•āĻ°āĻ¤ā§‡ āĻ­ā§āĻ˛āĻŦā§‡āĻ¨ āĻ¨āĻž, āĻ…āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ NAT āĻāĻ° āĻĒāĻŋāĻ›āĻ¨ā§‡ āĻĨāĻžāĻ•āĻ˛ā§‡ VPS āĻĨā§‡āĻ•ā§‡ āĻ°āĻžāĻ‰āĻŸāĻžāĻ° āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻŸāĻžāĻ¨ā§‡āĻ˛ āĻ­ā§‡āĻ™ā§‡ āĻ¯āĻžāĻŦā§‡āĨ¤

āĻ­āĻŋāĻĒāĻŋāĻāĻ¨ āĻĨā§‡āĻ•ā§‡ āĻšā§‹āĻŽ āĻ˛ā§āĻ¯āĻžāĻ¨

āĻ­āĻŋāĻĒāĻŋāĻāĻ¨ āĻĨā§‡āĻ•ā§‡ āĻšā§‹āĻŽ āĻ˛ā§āĻ¯āĻžāĻ¨

āĻāĻ° āĻĒāĻ°ā§‡, āĻ†āĻĒāĻ¨āĻŋ āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻāĻŦāĻ‚ āĻ¤āĻžāĻ°āĻĒāĻ°ā§‡ āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻĢā§‡āĻ¸ā§‡āĻ° āĻ¤āĻžāĻ˛āĻŋāĻ•āĻž āĻ¸āĻš āĻĒā§ƒāĻˇā§āĻ āĻžāĻ¯āĻŧ āĻ¸āĻ‚āĻ°āĻ•ā§āĻˇāĻŖ āĻ•āĻ°ā§āĻ¨ āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻ— āĻ•āĻ°ā§āĻ¨ āĻ•ā§āĻ˛āĻŋāĻ• āĻ•āĻ°ā§āĻ¨āĨ¤ āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ā§‡, āĻ°āĻŋāĻ¸ā§āĻŸāĻžāĻ°ā§āĻŸ āĻŦā§‹āĻ¤āĻžāĻŽ āĻĻāĻŋāĻ¯āĻŧā§‡ āĻ¸ā§āĻĒāĻˇā§āĻŸāĻ­āĻžāĻŦā§‡ āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻĢā§‡āĻ¸ āĻšāĻžāĻ˛ā§ āĻ•āĻ°ā§āĻ¨āĨ¤

āĻāĻ•āĻŸāĻŋ āĻ¸ā§āĻŽāĻžāĻ°ā§āĻŸāĻĢā§‹āĻ¨ āĻ¸ā§‡āĻŸ āĻ†āĻĒ āĻ•āĻ°āĻž āĻšāĻšā§āĻ›ā§‡

āĻ†āĻĒāĻ¨āĻžāĻ° āĻ“āĻ¯āĻŧā§āĻ¯āĻžāĻ°āĻ—āĻžāĻ°ā§āĻĄ āĻ•ā§āĻ˛āĻžāĻ¯āĻŧā§‡āĻ¨ā§āĻŸā§‡āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§‹āĻœāĻ¨ āĻšāĻŦā§‡, āĻāĻŸāĻŋ āĻĒāĻžāĻ“āĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ āĻāĻĢ āĻĄā§āĻ°āĻ¯āĻŧā§‡āĻĄ, āĻ—ā§āĻ—āĻ˛ āĻĒā§āĻ˛ā§‡ āĻāĻŦāĻ‚ āĻ…ā§āĻ¯āĻžāĻĒ āĻ¸ā§āĻŸā§‹āĻ°āĨ¤ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻŸāĻŋ āĻ–ā§‹āĻ˛āĻžāĻ° āĻĒāĻ°ā§‡, āĻĒā§āĻ˛āĻžāĻ¸ āĻ¸āĻžāĻ‡āĻ¨ āĻŸāĻŋāĻĒā§āĻ¨ āĻāĻŦāĻ‚ āĻ‡āĻ¨ā§āĻŸāĻžāĻ°āĻĢā§‡āĻ¸ āĻŦāĻŋāĻ­āĻžāĻ—ā§‡ āĻ¸āĻ‚āĻ¯ā§‹āĻ—ā§‡āĻ° āĻ¨āĻžāĻŽ, āĻŦā§āĻ¯āĻ•ā§āĻ¤āĻŋāĻ—āĻ¤ āĻ•ā§€ (āĻĒāĻžāĻŦāĻ˛āĻŋāĻ• āĻ•ā§€ āĻ¸ā§āĻŦāĻ¯āĻŧāĻ‚āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻ­āĻžāĻŦā§‡ āĻ¤ā§ˆāĻ°āĻŋ āĻšāĻŦā§‡) āĻāĻŦāĻ‚ /32 āĻŽāĻžāĻ¸ā§āĻ• āĻ¸āĻš āĻĢā§‹āĻ¨ āĻ āĻŋāĻ•āĻžāĻ¨āĻž āĻ˛āĻŋāĻ–ā§āĻ¨āĨ¤ āĻĒāĻŋāĻ¯āĻŧāĻžāĻ° āĻŦāĻŋāĻ­āĻžāĻ—ā§‡, āĻ­āĻŋāĻĒāĻŋāĻāĻ¸ āĻĒāĻžāĻŦāĻ˛āĻŋāĻ• āĻ•ā§€, āĻāĻ•āĻŸāĻŋ āĻ…ā§āĻ¯āĻžāĻĄā§āĻ°ā§‡āĻ¸ āĻĒā§‡āĻ¯āĻŧāĻžāĻ° āĻ‰āĻ˛ā§āĻ˛ā§‡āĻ– āĻ•āĻ°ā§āĻ¨: āĻāĻ¨ā§āĻĄāĻĒāĻ¯āĻŧā§‡āĻ¨ā§āĻŸ āĻšāĻŋāĻ¸ā§‡āĻŦā§‡ āĻ­āĻŋāĻĒāĻŋāĻāĻ¨ āĻ¸āĻžāĻ°ā§āĻ­āĻžāĻ° āĻĒā§‹āĻ°ā§āĻŸ āĻāĻŦāĻ‚ āĻ­āĻŋāĻĒāĻŋāĻāĻ¨ āĻāĻŦāĻ‚ āĻšā§‹āĻŽ āĻ¸āĻžāĻŦāĻ¨ā§‡āĻŸā§‡āĻ° āĻ°ā§āĻŸāĨ¤

āĻĢā§‹āĻ¨ āĻĨā§‡āĻ•ā§‡ āĻŦā§‹āĻ˛ā§āĻĄ āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻ¨āĻļāĻŸ
āĻ­āĻŋāĻĒāĻŋāĻāĻ¨ āĻĨā§‡āĻ•ā§‡ āĻšā§‹āĻŽ āĻ˛ā§āĻ¯āĻžāĻ¨

āĻ•ā§‹āĻŖā§‡ āĻĢā§āĻ˛āĻĒāĻŋ āĻĄāĻŋāĻ¸ā§āĻ•ā§‡ āĻ•ā§āĻ˛āĻŋāĻ• āĻ•āĻ°ā§āĻ¨, āĻāĻŸāĻŋ āĻšāĻžāĻ˛ā§ āĻ•āĻ°ā§āĻ¨ āĻāĻŦāĻ‚...

āĻ¸āĻŽā§āĻĒāĻ¨ā§āĻ¨ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧ

āĻāĻ–āĻ¨ āĻ†āĻĒāĻ¨āĻŋ āĻšā§‹āĻŽ āĻŽāĻ¨āĻŋāĻŸāĻ°āĻŋāĻ‚ āĻ…ā§āĻ¯āĻžāĻ•ā§āĻ¸ā§‡āĻ¸ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨, āĻ°āĻžāĻ‰āĻŸāĻžāĻ° āĻ¸ā§‡āĻŸāĻŋāĻ‚āĻ¸ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨ āĻŦāĻž āĻ†āĻ‡āĻĒāĻŋ āĻ˛ā§‡āĻ­ā§‡āĻ˛ā§‡ āĻ•āĻŋāĻ›ā§ āĻ•āĻ°āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡āĻ¨āĨ¤

āĻ¸ā§āĻĨāĻžāĻ¨ā§€āĻ¯āĻŧ āĻāĻ˛āĻžāĻ•āĻž āĻĨā§‡āĻ•ā§‡ āĻ¸ā§āĻ•ā§āĻ°āĻŋāĻ¨āĻļāĻŸ
āĻ­āĻŋāĻĒāĻŋāĻāĻ¨ āĻĨā§‡āĻ•ā§‡ āĻšā§‹āĻŽ āĻ˛ā§āĻ¯āĻžāĻ¨

āĻ­āĻŋāĻĒāĻŋāĻāĻ¨ āĻĨā§‡āĻ•ā§‡ āĻšā§‹āĻŽ āĻ˛ā§āĻ¯āĻžāĻ¨

āĻ­āĻŋāĻĒāĻŋāĻāĻ¨ āĻĨā§‡āĻ•ā§‡ āĻšā§‹āĻŽ āĻ˛ā§āĻ¯āĻžāĻ¨

āĻ‰āĻ¤ā§āĻ¸: www.habr.com

āĻāĻ•āĻŸāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻœā§āĻĄāĻŧā§āĻ¨