āĻŦāĻ¨ā§āĻ§ā§āĻ°āĻž, āĻšā§āĻ¯āĻžāĻ˛ā§!
āĻŦāĻžāĻĄāĻŧāĻŋ āĻĨā§āĻā§ āĻāĻĒāĻ¨āĻžāĻ° āĻ
āĻĢāĻŋāĻ¸ā§āĻ° āĻāĻ°ā§āĻŽāĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻžāĻ° āĻ
āĻ¨ā§āĻ āĻāĻĒāĻžāĻ¯āĻŧ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻ¤āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻšāĻ˛ āĻŽāĻžāĻāĻā§āĻ°ā§āĻ¸āĻĢāĻ āĻ°āĻŋāĻŽā§āĻ āĻĄā§āĻ¸ā§āĻāĻāĻĒ āĻā§āĻāĻāĻ¯āĻŧā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĨ¤ āĻāĻāĻŋ HTTP āĻāĻ° āĻāĻĒāĻ° RDPāĨ¤ āĻāĻŽāĻŋ āĻāĻāĻžāĻ¨ā§ RDGW āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ āĻ¨āĻž, āĻā§āĻ¨ āĻāĻāĻŋ āĻāĻžāĻ˛ āĻŦāĻž āĻāĻžāĻ°āĻžāĻĒ āĻ¤āĻž āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻ˛ā§āĻāĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻāĻžāĻ āĻ¨āĻž, āĻāĻ¸ā§āĻ¨ āĻāĻāĻŋāĻā§ āĻĻā§āĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻ
ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ā§āĻ° āĻ¸āĻ°āĻā§āĻāĻžāĻŽāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻŋāĨ¤ āĻāĻŽāĻŋ āĻāĻĒāĻ¨āĻžāĻ° RDGW āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°āĻā§ āĻāĻžāĻ°āĻžāĻĒ āĻāĻ¨ā§āĻāĻžāĻ°āĻ¨ā§āĻ āĻĨā§āĻā§ āĻ°āĻā§āĻˇāĻž āĻāĻ°āĻžāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧā§ āĻāĻĨāĻž āĻŦāĻ˛āĻ¤ā§ āĻāĻžāĻāĨ¤ āĻāĻŽāĻŋ āĻ¯āĻāĻ¨ RDGW āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻŋ, āĻ¤āĻāĻ¨āĻ āĻāĻŽāĻŋ āĻ¨āĻŋāĻ°āĻžāĻĒāĻ¤ā§āĻ¤āĻžāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧā§ āĻāĻĻā§āĻŦāĻŋāĻā§āĻ¨ āĻšāĻ¯āĻŧā§ āĻĒāĻĄāĻŧāĻŋ, āĻŦāĻŋāĻļā§āĻˇ āĻāĻ°ā§ āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄā§āĻ° āĻĒāĻžāĻļāĻŦāĻŋāĻ āĻļāĻā§āĻ¤āĻŋāĻ° āĻŦāĻŋāĻ°ā§āĻĻā§āĻ§ā§ āĻ¸ā§āĻ°āĻā§āĻˇāĻžāĨ¤ āĻāĻŽāĻŋ āĻ
āĻŦāĻžāĻ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĻžāĻŽ āĻ¯ā§ āĻāĻŽāĻŋ āĻāĻ¨ā§āĻāĻžāĻ°āĻ¨ā§āĻā§ āĻāĻāĻŋ āĻā§āĻāĻžāĻŦā§ āĻāĻ°āĻŦ āĻ¸ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻā§āĻ¨āĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ āĻā§āĻāĻā§ āĻĒāĻžāĻāĻ¨āĻŋāĨ¤ āĻāĻ¯āĻŧā§āĻ˛, āĻāĻĒāĻ¨āĻŋ āĻ¨āĻŋāĻā§āĻā§ āĻāĻāĻŋ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§.
RDGW āĻāĻ° āĻ¨āĻŋāĻā§āĻ° āĻā§āĻ¨ā§ āĻ¸ā§āĻ°āĻā§āĻˇāĻž āĻ¨ā§āĻāĨ¤ āĻšā§āĻ¯āĻžāĻ, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻžāĻĻāĻž āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻā§ āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻ¨ā§āĻŽā§āĻā§āĻ¤ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŦāĻ āĻāĻāĻŋ āĻĻā§āĻ°ā§āĻĻāĻžāĻ¨ā§āĻ¤ āĻāĻžāĻ āĻāĻ°āĻŦā§āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŋ āĻ¸āĻ āĻŋāĻ āĻĒā§āĻ°āĻļāĻžāĻ¸āĻ āĻŦāĻž āĻ¤āĻĨā§āĻ¯ āĻ¨āĻŋāĻ°āĻžāĻĒāĻ¤ā§āĻ¤āĻž āĻŦāĻŋāĻļā§āĻˇāĻā§āĻāĻā§ āĻ
āĻ¸ā§āĻŦāĻ¸ā§āĻ¤āĻŋāĻ¤ā§ āĻĢā§āĻ˛āĻŦā§āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ, āĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻ
ā§āĻ¯āĻžāĻāĻžāĻāĻ¨ā§āĻ āĻŦā§āĻ˛āĻ āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻ
āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻŦā§, āĻ¯āĻāĻ¨ āĻāĻāĻāĻ¨ āĻ
āĻ¸āĻžāĻŦāĻ§āĻžāĻ¨ āĻāĻ°ā§āĻŽāĻāĻžāĻ°ā§ āĻ¤āĻžāĻ° āĻŦāĻžāĻĄāĻŧāĻŋāĻ° āĻāĻŽā§āĻĒāĻŋāĻāĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻāĻ°ā§āĻĒā§āĻ°ā§āĻ āĻ
ā§āĻ¯āĻžāĻāĻžāĻāĻ¨ā§āĻā§āĻ° āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄāĻāĻŋ āĻŽāĻ¨ā§ āĻ°āĻžāĻā§ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻ¤āĻžāĻ° āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĨ¤
āĻŦāĻžāĻšā§āĻ¯āĻŋāĻ āĻĒāĻ°āĻŋāĻŦā§āĻļ āĻĨā§āĻā§ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻ¸āĻŽā§āĻĒāĻĻ āĻ°āĻā§āĻˇāĻž āĻāĻ°āĻžāĻ° āĻāĻāĻāĻŋ āĻāĻžāĻ˛ āĻāĻĒāĻžāĻ¯āĻŧ āĻšāĻ˛ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻĒā§āĻ°āĻā§āĻ¸āĻŋ, āĻĒā§āĻ°āĻāĻžāĻļāĻ¨āĻž āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻŦāĻ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ WAF āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§āĨ¤ āĻāĻ¸ā§āĻ¨ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ RDGW āĻāĻāĻ¨āĻ http, āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻāĻāĻŋ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻŦāĻ āĻāĻ¨ā§āĻāĻžāĻ°āĻ¨ā§āĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻˇ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻĒā§āĻ˛āĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻāĻ°ā§āĨ¤
āĻāĻŽāĻŋ āĻāĻžāĻ¨āĻŋ āĻ¯ā§ āĻāĻāĻžāĻ¨ā§ āĻĻā§āĻ°ā§āĻĻāĻžāĻ¨ā§āĻ¤ F5, A10, Netscaler(ADC) āĻāĻā§āĨ¤ āĻāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋāĻ° āĻāĻāĻāĻ¨ āĻĒā§āĻ°āĻļāĻžāĻ¸āĻ āĻšāĻŋāĻ¸āĻžāĻŦā§, āĻāĻŽāĻŋ āĻŦāĻ˛āĻŦ āĻ¯ā§ āĻāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻā§āĻ˛āĻŋāĻ¤ā§ āĻ¨ā§āĻļāĻāĻ¸ āĻļāĻā§āĻ¤āĻŋāĻ° āĻŦāĻŋāĻ°ā§āĻĻā§āĻ§ā§ āĻ¸ā§āĻ°āĻā§āĻˇāĻž āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻžāĻ āĻ¸āĻŽā§āĻāĻŦāĨ¤ āĻāĻŦāĻ āĻšā§āĻ¯āĻžāĻ, āĻāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻā§āĻ˛āĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻ¯ā§āĻā§āĻ¨ā§ āĻ¸āĻŋāĻ¨ āĻĒā§āĻ˛āĻžāĻĄ āĻĨā§āĻā§ āĻ°āĻā§āĻˇāĻž āĻāĻ°āĻŦā§āĨ¤
āĻ¤āĻŦā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ āĻāĻ āĻāĻžāĻ¤ā§āĻ¯āĻŧ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻā§āĻ¨āĻžāĻ° āĻ¸āĻžāĻŽāĻ°ā§āĻĨā§āĻ¯ āĻ°āĻžāĻā§ āĻ¨āĻž (āĻāĻŦāĻ āĻāĻ āĻāĻžāĻ¤ā§āĻ¯āĻŧ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻ¨ āĻĒā§āĻ°āĻļāĻžāĻ¸āĻ āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°ā§āĻ¨ :), āĻ¤āĻŦā§ āĻāĻāĻ āĻ¸āĻžāĻĨā§ āĻ¤āĻžāĻ°āĻž āĻ¸ā§āĻ°āĻā§āĻˇāĻžāĻ° āĻ¯āĻ¤ā§āĻ¨ āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§!
āĻāĻāĻāĻŋ āĻŦāĻŋāĻ¨āĻžāĻŽā§āĻ˛ā§āĻ¯ā§āĻ° āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ HAProxy-āĻāĻ° āĻāĻāĻāĻŋ āĻŦāĻŋāĻ¨āĻžāĻŽā§āĻ˛ā§āĻ¯ā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻž āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻ¸āĻŽā§āĻāĻŦā§ˇ āĻāĻŽāĻŋ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§āĻ˛ āĻ¸āĻāĻā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛ā§ āĻĄā§āĻŦāĻŋāĻ¯āĻŧāĻžāĻ¨ 10, āĻšā§āĻ¯āĻžāĻĒā§āĻ°āĻā§āĻ¸āĻŋ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ 1.8.19 āĻ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻāĻŋāĨ¤ āĻāĻŽāĻŋ āĻā§āĻ¸ā§āĻāĻŋāĻ āĻ°āĻŋāĻĒā§āĻāĻŋāĻāĻ°āĻŋ āĻĨā§āĻā§ āĻāĻāĻŋ 2.0.xx āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻāĻŋāĨ¤
āĻāĻŽāĻ°āĻž āĻāĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§āĻ° āĻ¸ā§āĻ¯ā§āĻā§āĻ° āĻŦāĻžāĻāĻ°ā§ āĻĄā§āĻŦāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻž āĻā§āĻĄāĻŧā§ āĻĻā§āĻŦāĨ¤ āĻ¸āĻāĻā§āĻˇā§āĻĒā§: āĻ¸āĻžāĻĻāĻž āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ā§, āĻĒā§āĻ°ā§āĻ 443 āĻāĻžāĻĄāĻŧāĻž āĻ¸āĻŦāĻāĻŋāĻā§ āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§āĻ¨, āĻ§ā§āĻ¸āĻ° āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ā§ - āĻāĻĒāĻ¨āĻžāĻ° āĻ¨ā§āĻ¤āĻŋ āĻ āĻ¨ā§āĻ¸āĻžāĻ°ā§, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻĒā§āĻ°ā§āĻ 22 āĻāĻžāĻĄāĻŧāĻž āĻ¸āĻŦāĻāĻŋāĻā§ āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§āĻ¨āĨ¤ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻžāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¯āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ¤āĻž āĻā§āĻ˛ā§āĻ¨ (āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻžāĻ¸āĻŽāĻžāĻ¨ āĻāĻāĻĒāĻŋāĻ° āĻāĻ¨ā§āĻ¯ VRRP)āĨ¤
āĻĒā§āĻ°āĻĨāĻŽāĻ¤, āĻāĻŽāĻŋ SSL āĻŦā§āĻ°āĻŋāĻāĻŋāĻ āĻŽā§āĻĄā§ āĻšā§āĻ¯āĻžāĻĒā§āĻ°āĻā§āĻ¸āĻŋ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°ā§āĻāĻŋ (āĻāĻ°āĻĢā§ HTTP āĻŽā§āĻĄ) āĻāĻŦāĻ RDP-āĻāĻ° āĻāĻŋāĻ¤āĻ°ā§ āĻā§ āĻāĻ˛āĻā§ āĻ¤āĻž āĻĻā§āĻāĻ¤ā§ āĻ˛āĻāĻŋāĻ āĻāĻžāĻ˛ā§ āĻāĻ°ā§āĻāĻŋāĨ¤ āĻ¤āĻžāĻ āĻāĻĨāĻž āĻŦāĻ˛āĻ¤ā§ āĻā§āĻ˛ā§ āĻŽāĻžāĻāĻĒāĻĨā§ āĻāĻ˛ā§ āĻāĻ˛āĻžāĻŽāĨ¤ āĻ¸ā§āĻ¤āĻ°āĻžāĻ, RDGateway āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ "āĻ¸āĻŽāĻ¸ā§āĻ¤" āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻž /RDWeb āĻĒāĻĨāĻāĻŋ āĻ āĻ¨ā§āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤āĨ¤ āĻ¸ā§āĻāĻžāĻ¨ā§ āĻ¯āĻž āĻāĻā§ āĻ¤āĻž āĻšāĻ˛ /rpc/rpcproxy.dll āĻāĻŦāĻ /remoteDesktopGateway/āĨ¤ āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ GET/POST āĻ āĻ¨ā§āĻ°ā§āĻ§āĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž; āĻ¤āĻžāĻĻā§āĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻ§āĻ°āĻ¨ā§āĻ° āĻ āĻ¨ā§āĻ°ā§āĻ§ RDG_IN_DATA, RDG_OUT_DATA āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻŦā§āĻļāĻŋ āĻ¨āĻž, āĻ¤āĻŦā§ āĻ āĻ¨ā§āĻ¤āĻ¤ āĻāĻŋāĻā§āĨ¤
āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻ¯āĻžāĻāĨ¤
āĻāĻŽāĻŋ mstsc āĻāĻžāĻ˛ā§ āĻāĻ°āĻŋ, āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻ¯āĻžāĻ¨, āĻ˛āĻāĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻžāĻ°āĻāĻŋ 401 (āĻ āĻ¨āĻ¨ā§āĻŽā§āĻĻāĻŋāĻ¤) āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĻā§āĻā§āĻ¨, āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻŽāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻ¨āĻžāĻŽ/āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ˛āĻŋāĻā§āĻ¨ āĻāĻŦāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž 200 āĻĻā§āĻā§āĻ¨āĨ¤
āĻāĻŽāĻŋ āĻāĻāĻŋ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻŋ, āĻāĻŦāĻžāĻ° āĻļā§āĻ°ā§ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻ˛āĻāĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻŽāĻŋ āĻāĻāĻ āĻāĻžāĻ°āĻāĻŋ 401 āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§ˇ āĻāĻŽāĻŋ āĻā§āĻ˛ āĻ˛āĻāĻāĻ¨/āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻĒā§āĻ°āĻŦā§āĻļ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻāĻŦāĻžāĻ° āĻāĻžāĻ°āĻāĻŋ 401 āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĻā§āĻāĻŋā§ˇ āĻāĻŽāĻžāĻ° āĻāĻāĻŋāĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§ˇ āĻāĻ āĻāĻŽāĻ°āĻž āĻāĻŋ āĻ§āĻ°āĻž āĻšāĻŦā§.
āĻ¯ā§āĻšā§āĻ¤ā§ āĻ˛āĻāĻāĻ¨ āĻāĻāĻāĻ°āĻāĻ˛ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻž āĻ¸āĻŽā§āĻāĻŦ āĻāĻŋāĻ˛ āĻ¨āĻž, āĻāĻŦāĻ āĻāĻ° āĻĒāĻžāĻļāĻžāĻĒāĻžāĻļāĻŋ, āĻšā§āĻ¯āĻžāĻĒā§āĻ°āĻā§āĻ¸āĻŋāĻ¤ā§ 401 āĻ¤ā§āĻ°ā§āĻāĻŋ āĻā§āĻāĻžāĻŦā§ āĻ§āĻ°āĻ¤ā§ āĻšāĻ¯āĻŧ āĻ¤āĻž āĻāĻŽāĻŋ āĻāĻžāĻ¨āĻŋ āĻ¨āĻž, āĻāĻŽāĻŋ 4xx āĻ¤ā§āĻ°ā§āĻāĻŋāĻā§āĻ˛āĻŋ āĻ§āĻ°āĻŦ (āĻāĻ¸āĻ˛ā§ āĻ§āĻ°āĻŦ āĻ¨āĻž, āĻ¤āĻŦā§ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻŦ)āĨ¤ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯āĻ āĻāĻĒāĻ¯ā§āĻā§āĻ¤āĨ¤
āĻ¸ā§āĻ°āĻā§āĻˇāĻžāĻ° āĻ¸āĻžāĻ°āĻŽāĻ°ā§āĻŽāĻāĻŋ āĻšāĻŦā§ āĻ¯ā§ āĻāĻŽāĻ°āĻž āĻĒā§āĻ°āĻ¤āĻŋ āĻāĻāĻ¨āĻŋāĻā§ 4xx āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻ¸āĻāĻā§āĻ¯āĻž (āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄā§) āĻāĻŖāĻ¨āĻž āĻāĻ°āĻŦ āĻāĻŦāĻ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸ā§āĻŽāĻž āĻ āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ°ā§, āĻ¤āĻŦā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ āĻāĻāĻĒāĻŋ āĻĨā§āĻā§ āĻāĻ°āĻ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸āĻāĻ¯ā§āĻ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻā§āĻ¯āĻžāĻ¨ (āĻĢā§āĻ°āĻ¨ā§āĻāĻāĻ¨ā§āĻĄā§) .
āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¤āĻŋāĻāĻ¤āĻāĻžāĻŦā§, āĻāĻāĻŋ āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻŦā§āĻ°ā§āĻ āĻĢā§āĻ°ā§āĻ¸ āĻĨā§āĻā§ āĻ¸ā§āĻ°āĻā§āĻˇāĻž āĻšāĻŦā§ āĻ¨āĻž, āĻāĻāĻŋ 4xx āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻŦāĻŋāĻ°ā§āĻĻā§āĻ§ā§ āĻ¸ā§āĻ°āĻā§āĻˇāĻž āĻšāĻŦā§āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ āĻāĻāĻāĻŋ āĻ āĻ¸ā§āĻ¤āĻŋāĻ¤ā§āĻŦāĻšā§āĻ¨ url (404) āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§ āĻ¸ā§āĻ°āĻā§āĻˇāĻžāĻāĻŋāĻ āĻāĻžāĻ āĻāĻ°āĻŦā§ā§ˇ
āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻ¸āĻšāĻ āĻāĻŦāĻ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻĒāĻžāĻ¯āĻŧ āĻšāĻ˛ āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄā§ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻž āĻāĻŦāĻ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻāĻŋāĻā§ āĻĻā§āĻāĻž āĻā§āĻ˛ā§ āĻ°āĻŋāĻĒā§āĻ°ā§āĻ āĻāĻ°āĻž:
frontend fe_rdp_tsc
bind *:443 ssl crt /etc/haproxy/cert/desktop.example.com.pem
mode http
...
default_backend be_rdp_tsc
backend be_rdp_tsc
...
mode http
...
#ŅОСдаŅŅ ŅĐ°ĐąĐģиŅŅ, ŅŅŅĐžĐēОвŅŅ, 1000 ŅĐģĐĩĐŧĐĩĐŊŅОв, ĐŋŅĐžŅŅŅ
Đ°ĐĩŅ ŅĐĩŅĐĩС 15 ŅĐĩĐē, СаĐŋиŅĐ°ŅŅ ĐēĐžĐģ-вО ĐžŅийОĐē Са ĐŋĐžŅĐģĐĩĐ´ĐŊиĐĩ 10 ŅĐĩĐē
stick-table type string len 128 size 1k expire 15s store http_err_rate(10s)
#СаĐŋĐžĐŧĐŊиŅŅ ip
http-request track-sc0 src
#СаĐŋŅĐĩŅиŅŅ Ņ http ĐžŅийĐēОК 429, ĐĩŅĐģи Са ĐŋĐžŅĐģĐĩĐ´ĐŊиĐĩ 10 ŅĐĩĐē йОĐģŅŅĐĩ 4 ĐžŅийОĐē
http-request deny deny_status 429 if { sc_http_err_rate(0) gt 4 }
...
server rdgw01 192.168.1.33:443 maxconn 1000 weight 10 ssl check cookie rdgw01
server rdgw02 192.168.2.33:443 maxconn 1000 weight 10 ssl check cookie rdgw02
āĻ¸ā§āĻ°āĻž āĻŦāĻŋāĻāĻ˛ā§āĻĒ āĻ¨āĻ¯āĻŧ, āĻāĻ¸ā§āĻ¨ āĻāĻāĻŋāĻā§ āĻāĻāĻŋāĻ˛ āĻāĻ°āĻŋāĨ¤ āĻāĻŽāĻ°āĻž āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄā§ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻŦ āĻāĻŦāĻ āĻĢā§āĻ°āĻ¨ā§āĻāĻāĻ¨ā§āĻĄā§ āĻŦā§āĻ˛āĻ āĻāĻ°āĻŦāĨ¤
āĻāĻŽāĻ°āĻž āĻāĻā§āĻ°āĻŽāĻŖāĻāĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ āĻāĻĻā§āĻ° āĻāĻāĻ°āĻŖ āĻāĻ°āĻŦ āĻāĻŦāĻ āĻ¤āĻžāĻ° TCP āĻ¸āĻāĻ¯ā§āĻ āĻŦāĻžāĻĻ āĻĻā§āĻŦāĨ¤
frontend fe_rdp_tsc
bind *:443 ssl crt /etc/haproxy/cert/ertelecom_ru_2020_06_11.pem
mode http
...
#ŅОСдаŅŅ ŅĐ°ĐąĐģиŅŅ ip Đ°Đ´ŅĐĩŅОв, 1000 ŅĐģĐĩĐŧĐĩĐŊŅОв, ĐŋŅĐžŅŅŅ
ĐŊĐĩŅ ŅĐĩŅĐĩС 15 ŅĐĩĐē, ŅĐžŅ
ŅŅĐŊŅŅŅ иС ĐŗĐģОйаĐģŅĐŊĐžĐŗĐž ŅŅŅŅŅиĐēĐ°
stick-table type ip size 1k expire 15s store gpc0
#вСŅŅŅ иŅŅĐžŅĐŊиĐē
tcp-request connection track-sc0 src
#ĐžŅĐēĐģĐžĐŊиŅŅ tcp ŅĐžĐĩдиĐŊĐĩĐŊиĐĩ, ĐĩŅĐģи ĐŗĐģОйаĐģŅĐŊŅĐš ŅŅŅŅŅиĐē >0
tcp-request connection reject if { sc0_get_gpc0 gt 0 }
...
default_backend be_rdp_tsc
backend be_rdp_tsc
...
mode http
...
#ŅОСдаŅŅ ŅĐ°ĐąĐģиŅŅ ip Đ°Đ´ŅĐĩŅОв, 1000 ŅĐģĐĩĐŧĐĩĐŊŅОв, ĐŋŅĐžŅŅŅ
ĐŊĐĩŅ ŅĐĩŅĐĩС 15 ŅĐĩĐē, ŅĐžŅ
ŅĐ°ĐŊŅŅŅ ĐēĐžĐģ-вО ĐžŅийОĐē Са 10 ŅĐĩĐē
stick-table type ip size 1k expire 15s store http_err_rate(10s)
#ĐŧĐŊĐžĐŗĐž ĐžŅийОĐē, ĐĩŅĐģи ĐēĐžĐģ-вО ĐžŅийОĐē Са 10 ŅĐĩĐē ĐŋŅĐĩвŅŅиĐģĐž 8
acl errors_too_fast sc1_http_err_rate gt 8
#ĐŋĐžĐŧĐĩŅиŅŅ Đ°ŅĐ°ĐēŅ в ĐŗĐģОйаĐģŅĐŊĐžĐŧ ŅŅŅŅŅиĐēĐĩ (ŅвĐĩĐģиŅиŅŅ ŅŅŅŅŅиĐē)
acl mark_as_abuser sc0_inc_gpc0(fe_rdp_tsc) gt 0
#ОйĐŊŅĐģиŅŅ ĐŗĐģОйаĐģŅĐŊŅĐš ŅŅŅŅŅиĐē
acl clear_as_abuser sc0_clr_gpc0(fe_rdp_tsc) ge 0
#вСŅŅŅ иŅŅĐžŅĐŊиĐē
tcp-request content track-sc1 src
#ĐžŅĐēĐģĐžĐŊиŅŅ, ĐŋĐžĐŧĐĩŅиŅŅ, ŅŅĐž Đ°ŅĐ°ĐēĐ°
tcp-request content reject if errors_too_fast mark_as_abuser
#ŅаСŅĐĩŅиŅŅ, ŅĐąŅĐžŅиŅŅ ŅĐģĐ°ĐļĐžĐē Đ°ŅĐ°Đēи
tcp-request content accept if !errors_too_fast clear_as_abuser
...
server rdgw01 192.168.1.33:443 maxconn 1000 weight 10 ssl check cookie rdgw01
server rdgw02 192.168.2.33:443 maxconn 1000 weight 10 ssl check cookie rdgw02
āĻāĻāĻ āĻāĻŋāĻ¨āĻŋāĻ¸, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦāĻŋāĻ¨āĻ¯āĻŧā§āĻ° āĻ¸āĻžāĻĨā§, āĻāĻŽāĻ°āĻž āĻ¤ā§āĻ°ā§āĻāĻŋāĻāĻŋ āĻĢāĻŋāĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻŦ http 429 (āĻ āĻ¨ā§āĻ āĻ āĻ¨ā§āĻ°ā§āĻ§)
frontend fe_rdp_tsc
...
stick-table type ip size 1k expire 15s store gpc0
http-request track-sc0 src
http-request deny deny_status 429 if { sc0_get_gpc0 gt 0 }
...
default_backend be_rdp_tsc
backend be_rdp_tsc
...
stick-table type ip size 1k expire 15s store http_err_rate(10s)
acl errors_too_fast sc1_http_err_rate gt 8
acl mark_as_abuser sc0_inc_gpc0(fe_rdp_tsc) gt 0
acl clear_as_abuser sc0_clr_gpc0(fe_rdp_tsc) ge 0
http-request track-sc1 src
http-request allow if !errors_too_fast clear_as_abuser
http-request deny deny_status 429 if errors_too_fast mark_as_abuser
...
āĻāĻŽāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻŋ: āĻāĻŽāĻŋ mstsc āĻāĻžāĻ˛ā§ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻāĻ˛ā§āĻŽā§āĻ˛ā§āĻāĻžāĻŦā§ āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ˛āĻŋāĻāĻ¤ā§ āĻļā§āĻ°ā§ āĻāĻ°āĻŋāĨ¤ āĻ¤ā§āĻ¤ā§āĻ¯āĻŧ āĻĒā§āĻ°āĻā§āĻˇā§āĻāĻžāĻ° āĻĒāĻ°ā§, 10 āĻ¸ā§āĻā§āĻ¨ā§āĻĄā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻŋ āĻāĻŽāĻžāĻā§ āĻĒāĻŋāĻāĻŋāĻ¯āĻŧā§ āĻĻā§āĻ¯āĻŧ āĻāĻŦāĻ mstsc āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĻā§āĻ¯āĻŧāĨ¤ āĻ˛āĻā§ āĻĻā§āĻāĻž āĻ¯āĻžāĻ¯āĻŧāĨ¤
āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž. āĻāĻŽāĻŋ āĻāĻāĻāĻ¨ āĻšā§āĻ¯āĻžāĻĒā§āĻ°āĻā§āĻ¸āĻŋ āĻŽāĻžāĻ¸ā§āĻāĻžāĻ° āĻĨā§āĻā§ āĻ
āĻ¨ā§āĻ āĻĻā§āĻ°ā§āĨ¤ āĻāĻŽāĻŋ āĻŦā§āĻāĻ¤ā§ āĻĒāĻžāĻ°āĻāĻŋ āĻ¨āĻž āĻā§āĻ¨, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ
http-āĻ
āĻ¨ā§āĻ°ā§āĻ§ āĻ
āĻ¸ā§āĻŦā§āĻāĻžāĻ° āĻāĻ°ā§āĻ¨ deny_status 429 āĻ¯āĻĻāĻŋ { sc_http_err_rate(0) gt 4 }
āĻāĻāĻŋ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻĒā§āĻ°āĻžāĻ¯āĻŧ 10āĻāĻŋ āĻā§āĻ˛ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧāĨ¤
āĻāĻŽāĻŋ āĻāĻžāĻāĻ¨ā§āĻāĻžāĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤ āĻāĻ°āĻāĻŋ. āĻšā§āĻ¯āĻžāĻĒā§āĻ°āĻā§āĻ¸āĻŋāĻ° āĻāĻ¸ā§āĻ¤āĻžāĻĻ, āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻŽāĻžāĻā§ āĻĒāĻ°āĻŋāĻĒā§āĻ°āĻ āĻāĻ°ā§āĻ¨, āĻāĻŽāĻžāĻā§ āĻ¸āĻāĻļā§āĻ§āĻ¨ āĻāĻ°ā§āĻ¨, āĻāĻŽāĻžāĻā§ āĻāĻ°āĻ āĻāĻžāĻ˛ āĻāĻ°ā§āĻ¨ āĻ¤āĻŦā§ āĻāĻŽāĻŋ āĻā§āĻļāĻŋ āĻšāĻŦāĨ¤
āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ā§ āĻāĻĒāĻ¨āĻŋ RD āĻā§āĻāĻāĻ¯āĻŧā§ āĻ°āĻā§āĻˇāĻž āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻāĻĒāĻžāĻ¯āĻŧā§āĻ° āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ āĻĻāĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻāĻāĻŋ āĻ āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨ āĻāĻ°āĻž āĻāĻāĻ°ā§āĻˇāĻŖā§āĻ¯āĻŧ āĻšāĻŦā§āĨ¤
āĻāĻāĻ¨ā§āĻĄā§āĻ āĻ°āĻŋāĻŽā§āĻ āĻĄā§āĻ¸ā§āĻāĻāĻĒ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ (mstsc) āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§, āĻāĻāĻŋ āĻ˛āĻā§āĻˇāĻŖā§āĻ¯āĻŧ āĻ¯ā§ āĻāĻāĻŋ TLS1.2 āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻ¨āĻž (āĻ āĻ¨ā§āĻ¤āĻ¤ āĻāĻāĻ¨ā§āĻĄā§āĻ 7 āĻ), āĻ¤āĻžāĻ āĻāĻŽāĻžāĻā§ TLS1 āĻā§āĻĄāĻŧā§ āĻ¯ā§āĻ¤ā§ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛; āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸āĻžāĻāĻĢāĻžāĻ° āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻ¨āĻž, āĻ¤āĻžāĻ āĻāĻŽāĻžāĻā§āĻ āĻĒā§āĻ°āĻžāĻ¨ā§āĻā§āĻ˛āĻŋ āĻā§āĻĄāĻŧā§ āĻ¯ā§āĻ¤ā§ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤
āĻ¯āĻžāĻ°āĻž āĻāĻŋāĻā§āĻ āĻŦā§āĻā§āĻ¨ āĻ¨āĻž, āĻļā§āĻ§ā§ āĻļāĻŋāĻāĻā§āĻ¨ āĻāĻŦāĻ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ āĻāĻžāĻ˛ā§ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¤āĻžāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻĻā§āĻŦāĨ¤
haproxy.conf
global
log /dev/log local0
log /dev/log local1 notice
chroot /var/lib/haproxy
stats socket /run/haproxy/admin.sock mode 660 level admin expose-fd listeners
stats timeout 30s
user haproxy
group haproxy
daemon
# Default SSL material locations
ca-base /etc/ssl/certs
crt-base /etc/ssl/private
# See: https://ssl-config.mozilla.org/#server=haproxy&server-version=2.0.3&config=intermediate
#ssl-default-bind-ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE
-RSA-AES256-GCM-SHA384
ssl-default-bind-ciphers ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:RSA+AESGCM:RSA+AES:!aNULL:!MD5:!DSS
ssl-default-bind-ciphersuites TLS_AES_128_GCM_SHA256:TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256
#ssl-default-bind-options ssl-min-ver TLSv1.2 no-tls-tickets
ssl-default-bind-options no-sslv3
ssl-server-verify none
defaults
log global
mode http
option httplog
option dontlognull
timeout connect 5000
timeout client 15m
timeout server 15m
errorfile 400 /etc/haproxy/errors/400.http
errorfile 403 /etc/haproxy/errors/403.http
errorfile 408 /etc/haproxy/errors/408.http
errorfile 500 /etc/haproxy/errors/500.http
errorfile 502 /etc/haproxy/errors/502.http
errorfile 503 /etc/haproxy/errors/503.http
errorfile 504 /etc/haproxy/errors/504.http
frontend fe_rdp_tsc
bind *:443 ssl crt /etc/haproxy/cert/dektop.example.com.pem
mode http
capture request header Host len 32
log global
option httplog
timeout client 300s
maxconn 1000
stick-table type ip size 1k expire 15s store gpc0
tcp-request connection track-sc0 src
tcp-request connection reject if { sc0_get_gpc0 gt 0 }
acl rdweb_domain hdr(host) -i beg dektop.example.com
http-request deny deny_status 400 if !rdweb_domain
default_backend be_rdp_tsc
backend be_rdp_tsc
balance source
mode http
log global
stick-table type ip size 1k expire 15s store http_err_rate(10s)
acl errors_too_fast sc1_http_err_rate gt 8
acl mark_as_abuser sc0_inc_gpc0(fe_rdp_tsc) gt 0
acl clear_as_abuser sc0_clr_gpc0(fe_rdp_tsc) ge 0
tcp-request content track-sc1 src
tcp-request content reject if errors_too_fast mark_as_abuser
tcp-request content accept if !errors_too_fast clear_as_abuser
option forwardfor
http-request add-header X-CLIENT-IP %[src]
option httpchk GET /
cookie RDPWEB insert nocache
default-server inter 3s rise 2 fall 3
server rdgw01 192.168.1.33:443 maxconn 1000 weight 10 ssl check cookie rdgw01
server rdgw02 192.168.2.33:443 maxconn 1000 weight 10 ssl check cookie rdgw02
frontend fe_stats
mode http
bind *:8080
acl ip_allow_admin src 192.168.66.66
stats enable
stats uri /stats
stats refresh 30s
#stats admin if LOCALHOST
stats admin if ip_allow_admin
āĻŦā§āĻ¯āĻžāĻāĻāĻ¨ā§āĻĄā§ āĻĻā§āĻāĻŋ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻā§āĻ¨? āĻāĻžāĻ°āĻŖ āĻāĻāĻžāĻŦā§āĻ āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻˇ āĻ¸āĻšāĻ¨āĻļā§āĻ˛āĻ¤āĻž āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻšā§āĻ¯āĻžāĻĒā§āĻ°āĻā§āĻ¸āĻŋ āĻāĻāĻāĻŋ āĻāĻžāĻ¸āĻŽāĻžāĻ¨ āĻ¸āĻžāĻĻāĻž āĻāĻāĻĒāĻŋ āĻĻāĻŋāĻ¯āĻŧā§ āĻĻā§āĻāĻŋāĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻāĻŽā§āĻĒāĻŋāĻāĻāĻŋāĻ āĻ¸āĻāĻ¸ā§āĻĨāĻžāĻ¨: āĻāĻĒāĻ¨āĻŋ "āĻā§ āĻāĻŋāĻ, āĻĻā§āĻ āĻā§āĻ°, āĻā§āĻŽāĻŋāĻ āĻĒāĻŋāĻ¸āĻŋ" āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻ
āĻ¨ā§āĻ¸āĻžāĻ°ā§
āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸:
āĻāĻ¤ā§āĻ¸: www.habr.com