āĻ¸ā§āĻĨāĻžāĻ¨ āĻĻāĻ–āĻ˛ āĻ•āĻ°ā§‡āĻ›ā§‡ āĻāĻ•āĻŸāĻŋ āĻ•āĻžāĻ°ā§āĻ¯āĻ•āĻ°ā§€ āĻĒā§āĻ°ā§‹āĻ—ā§āĻ°āĻžāĻŽāĻŋāĻ‚ āĻ­āĻžāĻˇāĻž āĻĒā§āĻ°āĻ•āĻžāĻļ Erlang 23, āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻ•āĻ°āĻž, āĻ¤ā§āĻ°ā§āĻŸāĻŋ-āĻ¸āĻšāĻ¨āĻļā§€āĻ˛ āĻ…ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻ•ā§‡āĻļāĻ¨āĻ—ā§āĻ˛āĻŋ āĻ¤ā§ˆāĻ°āĻŋ āĻ•āĻ°āĻžāĻ° āĻ˛āĻ•ā§āĻˇā§āĻ¯ āĻ¯āĻž āĻ°āĻŋāĻ¯āĻŧā§‡āĻ˛ āĻŸāĻžāĻ‡āĻŽā§‡ āĻ…āĻ¨ā§āĻ°ā§‹āĻ§āĻ—ā§āĻ˛āĻŋāĻ° āĻ¸āĻŽāĻžāĻ¨ā§āĻ¤āĻ°āĻžāĻ˛ āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ•āĻ°āĻŖ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°ā§‡ā§ˇ āĻ­āĻžāĻˇāĻžāĻŸāĻŋ āĻŸā§‡āĻ˛āĻŋāĻ¯ā§‹āĻ—āĻžāĻ¯ā§‹āĻ—, āĻŦā§āĻ¯āĻžāĻ™ā§āĻ•āĻŋāĻ‚ āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ, āĻ‡-āĻ•āĻŽāĻžāĻ°ā§āĻ¸, āĻ•āĻŽā§āĻĒāĻŋāĻ‰āĻŸāĻžāĻ° āĻŸā§‡āĻ˛āĻŋāĻĢā§‹āĻ¨āĻŋ āĻāĻŦāĻ‚ āĻ¤āĻžāĻ¤ā§āĻ•ā§āĻˇāĻŖāĻŋāĻ• āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĒā§āĻ°āĻ­ā§ƒāĻ¤āĻŋ āĻ•ā§āĻˇā§‡āĻ¤ā§āĻ°ā§‡ āĻŦā§āĻ¯āĻžāĻĒāĻ• āĻšāĻ¯āĻŧā§‡ āĻ‰āĻ ā§‡āĻ›ā§‡āĨ¤ āĻāĻ•āĻ‡ āĻ¸āĻŽāĻ¯āĻŧā§‡, āĻ“āĻŸāĻŋāĻĒāĻŋ 23 (āĻ“āĻĒā§‡āĻ¨ āĻŸā§‡āĻ˛āĻŋāĻ•āĻŽ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻŸāĻĢāĻ°ā§āĻŽ) āĻĒā§āĻ°āĻ•āĻžāĻļ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›āĻŋāĻ˛ - āĻāĻ°āĻ˛āĻžāĻ‚ āĻ­āĻžāĻˇāĻžāĻ¯āĻŧ āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻ•āĻ°āĻž āĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽā§‡āĻ° āĻŦāĻŋāĻ•āĻžāĻļā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋ āĻāĻŦāĻ‚ āĻ‰āĻĒāĻžāĻĻāĻžāĻ¨āĻ—ā§āĻ˛āĻŋāĻ° āĻāĻ•āĻŸāĻŋ āĻ¸āĻšāĻšāĻ° āĻ¸ā§‡āĻŸāĨ¤

āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻ‰āĻĻā§āĻ­āĻžāĻŦāĻ¨:

  • SSL āĻŽāĻĄāĻŋāĻ‰āĻ˛ āĻ†āĻ° SSL 3.0 āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ•āĻ°ā§‡ āĻ¨āĻžāĨ¤ TLS 1.3-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻĄāĻŋāĻĢāĻ˛ā§āĻŸāĻ°ā§‚āĻĒā§‡ āĻ¸āĻ•ā§āĻ°āĻŋāĻ¯āĻŧ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻāĻŦāĻ‚ TLS 1.3-āĻāĻ° āĻ¸āĻžāĻĨā§‡ TLS 1.2 āĻ¸āĻ‚āĻ¯ā§‹āĻ— āĻ†āĻ˛ā§‹āĻšāĻ¨āĻž āĻĒā§āĻ°āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻ¸āĻžāĻŽāĻžā§āĻœāĻ¸ā§āĻ¯āĻ¤āĻž āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡;
  • ssh āĻŽāĻĄāĻŋāĻ‰āĻ˛āĻŸāĻŋ OpenSSH 1-āĻ āĻšāĻžāĻ˛ā§ āĻ•āĻ°āĻž āĻ¨āĻ¤ā§āĻ¨ āĻ•ā§€ āĻĢāĻžāĻ‡āĻ˛ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻŸ openssh-key-v6.5-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¯ā§‹āĻ— āĻ•āĻ°ā§‡āĻ›ā§‡āĨ¤ “.config” āĻĢāĻžāĻ‡āĻ˛ āĻĨā§‡āĻ•ā§‡ āĻ…ā§āĻ¯āĻžāĻ˛āĻ—āĻ°āĻŋāĻĻāĻŽā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻ•āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻ•āĻ°āĻž āĻ¸āĻŽā§āĻ­āĻŦāĨ¤ SSH (tcp-forward/direct-tcp) āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§‡ āĻĒā§‹āĻ°ā§āĻŸ āĻĢāĻ°āĻ“āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡;
  • āĻ›āĻžāĻĄāĻŧāĻž āĻāĻ•āĻŸāĻŋ Erlang āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻšāĻžāĻ˛āĻžāĻ¨ā§‹āĻ° āĻœāĻ¨ā§āĻ¯ āĻ¸āĻ°āĻžā§āĻœāĻžāĻŽ āĻ‡āĻĒāĻŋāĻāĻŽāĻĄāĻŋ;
  • gen_tcp āĻāĻŦāĻ‚ inet-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻĒāĻ°ā§€āĻ•ā§āĻˇāĻžāĻŽā§‚āĻ˛āĻ• āĻ¸āĻ•ā§‡āĻŸ āĻŦā§āĻ¯āĻžāĻ•āĻāĻ¨ā§āĻĄ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ (gen_udp āĻāĻŦāĻ‚ gen_sctp-āĻāĻ° āĻœāĻ¨ā§āĻ¯ āĻ­āĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§‡āĻ° āĻ°āĻŋāĻ˛āĻŋāĻœā§‡ āĻ‰āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻšāĻŦā§‡);
  • āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ā§‡ āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ erpc āĻŽāĻĄāĻŋāĻ‰āĻ˛ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¯āĻž rpc āĻŽāĻĄāĻŋāĻ‰āĻ˛ā§‡āĻ° āĻ•ā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ•āĻ˛āĻžāĻĒā§‡āĻ° āĻāĻ•āĻŸāĻŋ āĻ‰āĻĒāĻ¸ā§‡āĻŸ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻ•āĻ°ā§‡, āĻ‰āĻšā§āĻšāĻ¤āĻ° āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻž āĻāĻŦāĻ‚ āĻŦāĻ°ā§āĻ§āĻŋāĻ¤ āĻ°āĻŋāĻŸāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨, āĻŦā§āĻ¯āĻ¤āĻŋāĻ•ā§āĻ°āĻŽ āĻāĻŦāĻ‚ āĻ¤ā§āĻ°ā§āĻŸāĻŋāĻ—ā§āĻ˛āĻŋ āĻ†āĻ˛āĻžāĻĻāĻž āĻ•āĻ°āĻžāĻ° āĻ•ā§āĻˇāĻŽāĻ¤āĻž āĻ¸āĻš;
  • āĻŽāĻžāĻĒāĻ¯ā§‹āĻ—ā§āĻ¯āĻ¤āĻž āĻāĻŦāĻ‚ āĻ•āĻ°ā§āĻŽāĻ•ā§āĻˇāĻŽāĻ¤āĻž āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻ•āĻ°āĻžāĻ° āĻœāĻ¨ā§āĻ¯ āĻ‰āĻ¨ā§āĻ¨āĻ¤āĻŋ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡;
  • āĻŦāĻžāĻ‡āĻ¨āĻžāĻ°āĻŋ āĻŽā§āĻ¯āĻžāĻĒāĻŋāĻ‚-āĻ āĻ¸ā§‡āĻ—āĻŽā§‡āĻ¨ā§āĻŸ āĻ¸āĻžāĻ‡āĻœ āĻāĻŦāĻ‚ āĻĄāĻŋāĻ•āĻļāĻ¨āĻžāĻ°āĻŋ āĻŽā§‡āĻ˛āĻŋāĻ‚āĻ¯āĻŧā§‡āĻ° āĻ•ā§€āĻ—ā§āĻ˛āĻŋ āĻāĻ–āĻ¨ āĻ—āĻžāĻ°ā§āĻĄ āĻāĻ•ā§āĻ¸āĻĒā§āĻ°ā§‡āĻļāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻŸ āĻ•āĻ°āĻž āĻ¯ā§‡āĻ¤ā§‡ āĻĒāĻžāĻ°ā§‡;
  • āĻ¸āĻ‚āĻ–ā§āĻ¯āĻžāĻ° āĻĒāĻ āĻ¨āĻ¯ā§‹āĻ—ā§āĻ¯āĻ¤āĻž āĻ‰āĻ¨ā§āĻ¨āĻ¤ āĻ•āĻ°āĻ¤ā§‡ āĻ†āĻ¨ā§āĻĄāĻžāĻ°āĻ¸ā§āĻ•ā§‹āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ…āĻ¨ā§āĻŽā§‹āĻĻāĻŋāĻ¤ (āĻ‰āĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§‚āĻĒ, 123_456_789);
  • āĻŽāĻĄāĻŋāĻ‰āĻ˛, āĻĢāĻžāĻ‚āĻļāĻ¨ āĻāĻŦāĻ‚ āĻĒā§āĻ°āĻ•āĻžāĻ°ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĄāĻ•ā§āĻŽā§‡āĻ¨ā§āĻŸā§‡āĻļāĻ¨ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ•āĻŽāĻžāĻ¨ā§āĻĄ āĻļā§‡āĻ˛āĻŸāĻŋāĻ¤ā§‡ āĻ¨āĻ¤ā§āĻ¨ āĻĢāĻžāĻ‚āĻļāĻ¨ āĻ¯ā§‹āĻ— āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ (āĻŽāĻĄāĻŋāĻ‰āĻ˛ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ h/1,2,3 āĻāĻŦāĻ‚ āĻŽāĻĄāĻŋāĻ‰āĻ˛ā§‡āĻ° āĻœāĻ¨ā§āĻ¯ ht/1,2,3: Type/Arity);
  • āĻĄāĻŋāĻ¸ā§āĻŸā§āĻ°āĻŋāĻŦāĻŋāĻ‰āĻŸā§‡āĻĄ āĻ¨āĻžāĻŽā§‡āĻ° āĻĒā§āĻ°āĻ¸ā§‡āĻ¸ āĻ—ā§āĻ°ā§āĻĒāĻ—ā§āĻ˛āĻŋāĻ° āĻāĻ•āĻŸāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻ•āĻžāĻ°ā§āĻ¨ā§‡āĻ˛ pg āĻŽāĻĄāĻŋāĻ‰āĻ˛ā§‡āĻ° āĻ¸āĻžāĻĨā§‡ āĻĒāĻ°āĻŋāĻšāĻ¯āĻŧ āĻ•āĻ°āĻŋāĻ¯āĻŧā§‡ āĻĻā§‡āĻ¯āĻŧ;
  • āĻ‰āĻ‡āĻ¨ā§āĻĄā§‹āĻœ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻŸāĻĢāĻ°ā§āĻŽā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻĒā§āĻ¯āĻžāĻ•ā§‡āĻœ āĻŦāĻŋāĻ˛ā§āĻĄ āĻŸā§āĻ˛āĻ•āĻŋāĻŸ āĻ†āĻĒāĻĄā§‡āĻŸ āĻ•āĻ°āĻž āĻšāĻ¯āĻŧā§‡āĻ›ā§‡, āĻ¯āĻž WSL (āĻ‰āĻ‡āĻ¨ā§āĻĄā§‹āĻœā§‡āĻ° āĻœāĻ¨ā§āĻ¯ āĻ˛āĻŋāĻ¨āĻžāĻ•ā§āĻ¸ āĻ¸āĻžāĻŦāĻ¸āĻŋāĻ¸ā§āĻŸā§‡āĻŽ) āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§‡ āĻ°ā§‚āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧā§‡āĻ›ā§‡ āĻāĻŦāĻ‚ āĻāĻ¤ā§‡ C++ āĻ•āĻŽā§āĻĒāĻžāĻ‡āĻ˛āĻžāĻ°, āĻœāĻžāĻ­āĻž āĻ•āĻŽā§āĻĒāĻžāĻ‡āĻ˛āĻžāĻ°, OpenSSL āĻāĻŦāĻ‚ wxWidgets āĻ˛āĻžāĻ‡āĻŦā§āĻ°ā§‡āĻ°āĻŋāĻ° āĻ¨āĻ¤ā§āĻ¨ āĻ¸āĻ‚āĻ¸ā§āĻ•āĻ°āĻŖ āĻ…āĻ¨ā§āĻ¤āĻ°ā§āĻ­ā§āĻ•ā§āĻ¤ āĻ°āĻ¯āĻŧā§‡āĻ›ā§‡āĨ¤

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

āĻ‰āĻ¤ā§āĻ¸: opennet.ru

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