āĻ¯āĻžāĻĻā§āĻ° āĻ¨āĻŋāĻā§āĻĻā§āĻ°āĻā§, āĻ¤āĻžāĻĻā§āĻ° āĻĒā§āĻ°āĻŋāĻ¯āĻŧāĻāĻ¨āĻā§, SSH/RDP/āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯, āĻāĻāĻāĻŋ āĻā§āĻ RTFM/spur-āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻŦāĻŋāĻļā§āĻŦā§āĻ° āĻ¯ā§āĻā§āĻ¨ āĻ¸ā§āĻĨāĻžāĻ¨ āĻĨā§āĻā§ āĻ¤āĻžāĻĻā§āĻ° āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻĻāĻŋāĻ¤ā§ āĻšāĻŦā§āĨ¤
āĻāĻŽāĻžāĻĻā§āĻ° āĻšāĻžāĻ¤ā§āĻ° āĻ¯ā§āĻā§āĻ¨ā§ āĻĄāĻŋāĻāĻžāĻāĻ¸ āĻĨā§āĻā§ VPN āĻāĻŦāĻ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻāĻŖā§āĻāĻž āĻāĻŦāĻ āĻŦāĻžāĻāĻļāĻŋ āĻāĻžāĻĄāĻŧāĻžāĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤
āĻāĻŦāĻ āĻ¯āĻžāĻ¤ā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻā§āĻŦ āĻŦā§āĻļāĻŋ āĻŦā§āĻ¯āĻžāĻ¯āĻŧāĻžāĻŽ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¨āĻžāĨ¤
āĻāĻĒāĻ¨āĻŋ āĻāĻ āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨
"āĻ¸āĻŦāĻāĻŋāĻā§āĻ āĻāĻ¨ā§āĻāĻžāĻ°āĻ¨ā§āĻā§," āĻ
āĻŦāĻļā§āĻ¯āĻ (āĻāĻŽāĻ¨āĻāĻŋ āĻāĻžāĻ˛ā§āĻ
āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĢā§āĻĄā§āĻ°āĻž/āĻ¸ā§āĻ¨ā§āĻāĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ āĻ¨ā§āĻļā§āĻ˛āĻ¨ āĻāĻ°āĻŦ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¤āĻžāĻ¤ā§ āĻāĻŋāĻā§ āĻ¯āĻžāĻ¯āĻŧ āĻāĻ¸ā§ āĻ¨āĻžāĨ¤
āĻ¸ā§āĻĒāĻžāĻ°āĻāĻŋ āĻāĻ āĻŦāĻŋāĻˇāĻ¯āĻŧā§ āĻ¨āĻ¤ā§āĻ¨ āĻāĻŦāĻ āĻŦāĻŋāĻļā§āĻˇāĻā§āĻ āĻāĻāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯āĻ āĻāĻĒāĻ¯ā§āĻā§āĻ¤, āĻ¤āĻžāĻ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻĨāĻžāĻāĻŦā§, āĻ¤āĻŦā§ āĻ¸ā§āĻā§āĻ˛āĻŋ āĻā§āĻ āĻšāĻŦā§āĨ¤
1. āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°
-
āĻ¨āĻ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°ā§āĻ¨:
yum/dnf install knock-server
-
āĻāĻāĻŋ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°ā§āĻ¨ (āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ ssh āĻ) - /etc/knockd.conf:
[options] UseSyslog interface = enp1s0f0 [SSHopen] sequence = 33333,22222,11111 seq_timeout = 5 tcpflags = syn start_command = iptables -A INPUT -s %IP% -p tcp --dport 22 -j ACCEPT cmd_timeout = 3600 stop_command = iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT [SSHclose] sequence = 11111,22222,33333 seq_timeout = 5 tcpflags = syn command = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT
"āĻā§āĻ˛āĻž" āĻ āĻāĻļāĻāĻŋ 1 āĻāĻ¨ā§āĻāĻž āĻĒāĻ°ā§ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ā§ˇ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻ¨ā§ āĻāĻžāĻ¨ā§āĻ¨ āĻ¨āĻž...
-
/etc/sysconfig/iptables:
... -A INPUT -p tcp -m state --state NEW -m tcp --dport 11111 -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 22222 -j ACCEPT -A INPUT -p tcp -m state --state NEW -m tcp --dport 33333 -j ACCEPT ...
-
āĻāĻāĻŋāĻ¯āĻŧā§:
service iptables restart service knockd start
-
āĻāĻĒāĻ¨āĻŋ āĻāĻžāĻ°ā§āĻā§āĻ¯āĻŧāĻžāĻ˛ āĻāĻāĻ¨ā§āĻĄā§āĻ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻāĻŋāĻ¤āĻ°ā§ āĻā§āĻ°āĻ¤ā§ āĻĨāĻžāĻāĻž RDP āĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ (/etc/knockd.conf; āĻāĻĒāĻ¨āĻžāĻ° āĻ¸ā§āĻŦāĻžāĻĻ āĻ āĻ¨ā§āĻ¸āĻžāĻ°ā§ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ā§āĻ° āĻ¨āĻžāĻŽ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĻ¨):
[RDPopen] sequence = 44444,33333,22222 seq_timeout = 5 tcpflags = syn start_command = iptables -t nat -A PREROUTING -s %IP% -i enp1s0f0 -p tcp -m tcp --dport 3389 -j DNAT --to-destination 192.168.0.2 cmd_timeout = 3600 stop_command = iptables -t nat -D PREROUTING -s %IP% -i enp1s0f0 -p tcp -m tcp --dport 3389 -j DNAT --to-destination 192.168.0.2 [RDPclose] sequence = 22222,33333,44444 seq_timeout = 5 tcpflags = syn command = iptables -t nat -D PREROUTING -s %IP% -i enp1s0f0 -p tcp -m tcp --dport 3389 -j DNAT --to-destination 192.168.0.2
āĻāĻŽāĻ°āĻž āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻĻāĻŋāĻ¯āĻŧā§ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻĨā§āĻā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻŋāĻ āĻā§āĻ°ā§āĻ¯āĻžāĻ āĻāĻ°āĻŋ
iptables -S
.
2. āĻ°ā§āĻ āĻāĻžāĻāĻĄ
knockd.conf:
āĻŽāĻžāĻ¨āĻžāĻ¤ā§āĻ āĻ¸āĻŦāĻāĻŋāĻā§ āĻ°āĻ¯āĻŧā§āĻā§ (āĻ¤āĻŦā§ āĻāĻāĻŋ āĻ¸āĻ āĻŋāĻ āĻ¨āĻ¯āĻŧ), āĻ¤āĻŦā§ āĻ¨āĻāĻĄ āĻāĻŽāĻ¨ āĻāĻāĻāĻ¨ āĻŦāĻ¨ā§āĻ§ā§ āĻ¯āĻŋāĻ¨āĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻŦā§āĻļ āĻā§āĻĒāĻŖ, āĻ¤āĻžāĻ āĻāĻĒāĻ¨āĻžāĻā§ āĻā§āĻŦ āĻ¸āĻ¤āĻ°ā§āĻ āĻĨāĻžāĻāĻ¤ā§ āĻšāĻŦā§āĨ¤
- āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ
Fedora/CentOS āĻ¸āĻāĻā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛ā§, āĻāĻāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻ°ā§āĻŦāĻļā§āĻˇ āĻ¨āĻāĻĄ āĻšāĻ˛ 0.63āĨ¤ āĻā§ UDP āĻāĻžāĻ¯āĻŧ - 0.70 āĻĒā§āĻ¯āĻžāĻā§āĻ āĻĻā§āĻā§āĻ¨āĨ¤ - āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸
āĻĄāĻŋāĻĢāĻ˛ā§āĻ Fedora/CentOS āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§ āĻāĻ āĻ˛āĻžāĻāĻ¨āĻāĻŋ āĻ¨āĻž. āĻāĻĒāĻ¨āĻžāĻ° āĻšāĻžāĻ¤ āĻĻāĻŋāĻ¯āĻŧā§ āĻ¯ā§āĻ āĻāĻ°ā§āĻ¨, āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻāĻŋ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻ¨āĻžāĨ¤ - āĻ¸āĻŽāĻ¯āĻŧ āĻļā§āĻˇ
āĻāĻāĻžāĻ¨ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸ā§āĻŦāĻžāĻĻ āĻ āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻāĻ¯āĻŧāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻāĻāĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻ¯ā§ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻŋāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻ°ā§āĻ¯āĻžāĻĒā§āĻ¤ āĻ¸āĻŽāĻ¯āĻŧ āĻ°āĻ¯āĻŧā§āĻā§ - āĻāĻŦāĻ āĻĒā§āĻ°ā§āĻ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨āĻžāĻ° āĻŦāĻāĻāĻŋ āĻā§āĻā§ āĻ¯āĻžāĻŦā§ (āĻāĻŦāĻ 146% āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ āĻāĻ°āĻŦā§)āĨ¤ - āĻ¸ā§āĻāĻžāĻ°ā§āĻ/āĻ¸ā§āĻāĻĒ/āĻāĻŽāĻžāĻ¨ā§āĻĄāĨ¤
āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻĨāĻžāĻā§, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻŽāĻžāĻ¨ā§āĻĄ, āĻ¯āĻĻāĻŋ āĻĻā§āĻāĻŋ āĻĨāĻžāĻā§, āĻ¤āĻžāĻšāĻ˛ā§ start_command+stop_commandāĨ¤
āĻā§āĻ˛ āĻāĻ°āĻ˛ā§ āĻ¨āĻāĻĄ āĻā§āĻĒ āĻĨāĻžāĻāĻŦā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻ¨āĻžāĨ¤ - āĻĒā§āĻ°ā§āĻā§
āĻ¤āĻžāĻ¤ā§āĻ¤ā§āĻŦāĻŋāĻāĻāĻžāĻŦā§, UDP āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻ āĻ¨ā§āĻļā§āĻ˛āĻ¨ā§, āĻāĻŽāĻŋ tcp āĻāĻŦāĻ udp āĻŽāĻŋāĻļā§āĻ°āĻŋāĻ¤ āĻāĻ°ā§āĻāĻŋ, āĻāĻŦāĻ āĻŦāĻžāĻ˛āĻŋāĻ° āĻ¸ā§āĻāĻ¤ āĻĨā§āĻā§ āĻāĻ¸āĻž āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻŽāĻžāĻ¤ā§āĻ° āĻĒāĻā§āĻāĻŽāĻŦāĻžāĻ° āĻā§āĻ āĻā§āĻ˛āĻ¤ā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ āĻāĻžāĻ°āĻŖ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻŋāĻ¸āĻŋāĻĒāĻŋ āĻāĻ¸ā§āĻā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻĄāĻŋāĻĒāĻŋ āĻā§āĻ¨ā§ āĻ¸āĻ¤ā§āĻ¯ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻž āĻāĻŦāĻžāĻ° āĻ¸ā§āĻŦāĻžāĻĻā§āĻ° āĻŦā§āĻ¯āĻžāĻĒāĻžāĻ°āĨ¤ - āĻā§āĻ°āĻŽ
āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤ āĻ°ā§āĻ āĻšāĻ˛ āĻ¯ā§ āĻā§āĻ°āĻŽāĻā§āĻ˛āĻŋāĻā§ āĻā§āĻĻ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ... āĻāĻŽāĻŋ āĻā§āĻāĻžāĻŦā§ āĻāĻāĻŋ āĻŦāĻ˛āĻŦ...
āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻ:
open: 11111,22222,33333
close: 22222,11111,33333
āĻāĻŋāĻ āĻĻā§āĻŦāĻžāĻ°āĻž 11111 āĻā§āĻ˛āĻž 22222-āĻ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻāĻŋāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻŦā§āĨ¤ āĻ¤āĻŦā§ āĻāĻ (22222) āĻāĻŋāĻā§āĻ° āĻĒāĻ° āĻāĻāĻŋ āĻāĻžāĻ āĻāĻ°āĻž āĻļā§āĻ°ā§ āĻāĻ°āĻŦā§ āĻāĻ¨āĻŋāĻˇā§āĻ āĻāĻŦāĻ āĻ¸āĻŦāĻāĻŋāĻā§ āĻā§āĻā§āĻā§ āĻ¯āĻžāĻŦā§āĨ¤ āĻāĻāĻŋ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻā§āĻ° āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§āĻ° āĻāĻĒāĻ°āĻ āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§āĨ¤ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻŋāĻ¨āĻŋāĻ¸ Š.
iptables- āĻ°
āĻ¯āĻĻāĻŋ /etc/sysconfig/iptables āĻāĻāĻŋ āĻšāĻ¯āĻŧ:
*nat
:PREROUTING ACCEPT [0:0]
āĻāĻāĻŋ āĻ¸āĻ¤ā§āĻ¯āĻŋāĻ āĻāĻŽāĻžāĻĻā§āĻ° āĻŦāĻŋāĻ°āĻā§āĻ¤ āĻāĻ°ā§ āĻ¨āĻž, āĻ¤āĻžāĻ āĻāĻāĻŋ āĻāĻāĻžāĻ¨ā§:
*filter
:INPUT ACCEPT [0:0]
...
-A INPUT -j REJECT --reject-with icmp-host-prohibited
āĻāĻāĻž āĻšāĻ¸ā§āĻ¤āĻā§āĻˇā§āĻĒ āĻāĻ°ā§.
āĻ¯ā§āĻšā§āĻ¤ā§ knockd INPUT āĻā§āĻāĻ¨ā§āĻ° āĻļā§āĻˇā§ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻ¯ā§āĻ āĻāĻ°ā§, āĻ¤āĻžāĻ āĻāĻŽāĻ°āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻā§āĻ¯āĻžāĻ¨ āĻāĻ°āĻŦāĨ¤
āĻāĻŦāĻ āĻāĻ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻā§āĻ¯āĻžāĻ¨āĻāĻŋ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻžāĻ° āĻ āĻ°ā§āĻĨ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦāĻžāĻ¤āĻžāĻ¸ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻžāĻĄāĻŧāĻŋ āĻā§āĻ˛āĻžāĨ¤
iptables āĻ āĻšāĻžāĻ°āĻŋāĻ¯āĻŧā§ āĻ¨āĻž āĻ¯āĻžāĻāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŋāĻ¸ā§āĻ° āĻāĻā§ āĻā§ āĻ¸āĻ¨ā§āĻ¨āĻŋāĻŦā§āĻļ āĻāĻ°āĻžāĻ¤ā§ āĻšāĻŦā§ (āĻāĻ° āĻŽāĻ¤ā§
- āĻĄāĻŋāĻĢāĻ˛ā§āĻ CentOS/Fedora-āĻ āĻĒā§āĻ°āĻĨāĻŽ āĻ¨āĻŋāĻ¯āĻŧāĻŽ ("āĻ¯āĻž āĻ¨āĻŋāĻˇāĻŋāĻĻā§āĻ§ āĻ¨āĻ¯āĻŧ āĻ¤āĻž āĻ āĻ¨ā§āĻŽā§āĻĻāĻŋāĻ¤") āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻŋāĻ¤ āĻšāĻŦā§,
- āĻāĻŦāĻ āĻāĻŽāĻ°āĻž āĻļā§āĻˇ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻŋāĨ¤
āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤:
*filter
:INPUT DROP [0:0]
...
#-A INPUT -j REJECT --reject-with icmp-host-prohibited
āĻāĻĒāĻ¨āĻŋ āĻ āĻŦāĻļā§āĻ¯āĻ, DROP āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ REJECT āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻāĻŋāĻ¨ā§āĻ¤ā§ DROP āĻāĻ° āĻ¸āĻžāĻĨā§ āĻā§āĻŦāĻ¨ āĻŦāĻāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ°āĻ āĻŽāĻāĻžāĻĻāĻžāĻ° āĻšāĻŦā§āĨ¤
3. āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ
āĻāĻ āĻāĻžāĻ¯āĻŧāĻāĻžāĻāĻŋ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻāĻ°ā§āĻˇāĻŖā§āĻ¯āĻŧ (āĻāĻŽāĻžāĻ° āĻĻā§āĻˇā§āĻāĻŋāĻā§āĻŖ āĻĨā§āĻā§), āĻ¯ā§āĻšā§āĻ¤ā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻā§āĻŦāĻ˛ āĻ¯ā§ āĻā§āĻ¨āĻ āĻ¸ā§āĻāĻ¤ āĻĨā§āĻā§ āĻ¨āĻ¯āĻŧ, āĻ¯ā§ āĻā§āĻ¨āĻ āĻĄāĻŋāĻāĻžāĻāĻ¸ āĻĨā§āĻā§āĻ āĻāĻžāĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤
āĻ¨ā§āĻ¤āĻŋāĻāĻ¤āĻāĻžāĻŦā§, āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻāĻĻā§āĻ° āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¯āĻž āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻāĻāĻāĻŋ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻĒāĻ¨āĻžāĻā§ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¯ā§ āĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻŦāĻŋāĻ˛āĻŽā§āĻŦ āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻāĻŋāĻā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§āĨ¤ āĻšā§āĻ¯āĻžāĻ, āĻ¸āĻŽā§āĻĻā§āĻ° āĻ¸ā§āĻāĻ¤ āĻāĻŦāĻ 100 āĻŽā§āĻāĻžāĻŦāĻŋāĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯ āĻ°āĻ¯āĻŧā§āĻā§ āĻāĻāĻ¨āĻ āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻāĻŋ āĻĻā§āĻ¯āĻŧ āĻ¨āĻž āĻ¯ā§ āĻĒā§āĻ¯āĻžāĻā§āĻāĻā§āĻ˛āĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻĨā§āĻā§ āĻ¸āĻ āĻŋāĻ āĻ¸āĻŽāĻ¯āĻŧā§ āĻ¸āĻ āĻŋāĻ āĻā§āĻ°āĻŽā§ āĻĒā§āĻāĻāĻžāĻŦā§ā§ˇ
āĻāĻŦāĻ āĻšā§āĻ¯āĻžāĻ, āĻāĻāĻāĻŋ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻĒāĻ¨āĻžāĻā§ āĻ¨āĻŋāĻā§āĻā§ āĻŦāĻŋāĻ˛āĻŽā§āĻŦ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻā§āĻŦ āĻŦā§āĻļāĻŋ āĻāĻžāĻāĻŽāĻāĻāĻ - āĻŦāĻ āĻāĻā§āĻ°āĻŽāĻŖ āĻāĻ°āĻŦā§, āĻā§āĻŦ āĻāĻŽ - āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĨāĻžāĻāĻŦā§ āĻ¨āĻžāĨ¤ āĻā§āĻŦ āĻŦā§āĻļāĻŋ āĻŦāĻŋāĻ˛āĻŽā§āĻŦ - āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸āĻŽāĻ¯āĻŧāĻŽāĻ¤ā§ āĻāĻāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦā§ āĻ¨āĻž āĻŦāĻž āĻŦā§āĻāĻžāĻĻā§āĻ° āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦ āĻšāĻŦā§ ("āĻ°ā§āĻ" āĻĻā§āĻā§āĻ¨), āĻā§āĻŦ āĻāĻŽ - āĻĒā§āĻ¯āĻžāĻā§āĻāĻā§āĻ˛āĻŋ āĻāĻ¨ā§āĻāĻžāĻ°āĻ¨ā§āĻā§ āĻšāĻžāĻ°āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻŦā§āĨ¤
āĻāĻžāĻāĻŽāĻāĻāĻ=5s, āĻŦāĻŋāĻ˛āĻŽā§āĻŦ=100..500ms āĻāĻāĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻžāĻ°ā§āĻ¯āĻāĻ°ā§ āĻŦāĻŋāĻāĻ˛ā§āĻĒ
āĻāĻāĻ¨ā§āĻĄā§āĻ
āĻāĻāĻŋ āĻ¯āĻ¤āĻ āĻŽāĻāĻžāĻ° āĻŽāĻ¨ā§ āĻšā§āĻ āĻ¨āĻž āĻā§āĻ¨, Google āĻāĻ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻ¨āĻ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻā§āĻ° āĻāĻžāĻā§ āĻāĻāĻŋ āĻŦā§āĻļ āĻ¤ā§āĻā§āĻāĨ¤ āĻ¯ā§āĻŽāĻ¨ CLI āĻŦāĻŋāĻ˛āĻŽā§āĻŦ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§, TCP - āĻāĻŦāĻ āĻ§āĻ¨ā§āĻ āĻāĻžāĻĄāĻŧāĻžāĨ¤
āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻāĻžāĻŦā§, āĻāĻĒāĻ¨āĻŋ āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻ˛āĻŋāĻ¨āĻžāĻā§āĻ¸
āĻāĻāĻžāĻ¨ā§ āĻ¸āĻŦāĻāĻŋāĻā§ āĻ¸āĻšāĻ:
dnf install knock -y
knock -d <delay> <dst_ip> 11111 22222 33333
āĻŽā§āĻ¯āĻžāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ
āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻ¸āĻšāĻ āĻāĻĒāĻžāĻ¯āĻŧ āĻšāĻ˛ āĻšā§āĻŽāĻŦā§āĻ°ā§ āĻĨā§āĻā§ āĻĒā§āĻ°ā§āĻ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻž:
brew install knock
āĻāĻŦāĻ āĻāĻŽāĻžāĻ¨ā§āĻĄā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻŦā§āĻ¯āĻžāĻ āĻĢāĻžāĻāĻ˛ āĻāĻāĻā§āĻ¨ āĻ¯ā§āĻŽāĻ¨:
#!bin/sh
knock -d <delay> <dst_ip> 11111 22222 33333
āĻāĻāĻāĻāĻ¸
āĻāĻāĻāĻŋ āĻāĻžāĻā§āĻ° āĻŦāĻŋāĻāĻ˛ā§āĻĒ āĻšāĻ˛ KnockOnD (āĻĢā§āĻ°āĻŋ, āĻ¸ā§āĻā§āĻ° āĻĨā§āĻā§)āĨ¤
āĻ ā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ°āĻ¯āĻŧā§āĻĄ
"āĻŦāĻ¨ā§āĻĻāĻ°āĻā§āĻ˛āĻŋāĻ¤ā§ āĻ¨āĻ" āĻŦāĻŋāĻā§āĻāĻžāĻĒāĻ¨ āĻ¨āĻ¯āĻŧ, āĻ¤āĻŦā§ āĻāĻāĻŋ āĻā§āĻŦāĻ˛ āĻāĻžāĻ āĻāĻ°ā§āĨ¤ āĻāĻŦāĻ āĻŦāĻŋāĻāĻžāĻļāĻāĻžāĻ°ā§āĻ°āĻž āĻŦā§āĻļ āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻļā§āĻ˛āĨ¤
āĻšāĻžāĻŦāĻ°ā§ āĻĒāĻŋāĻāĻ¸ āĻŽāĻžāĻ°ā§āĻāĻĄāĻžāĻāĻ¨, āĻ āĻŦāĻļā§āĻ¯āĻ, āĻāĻļā§āĻŦāĻ° āĻ¤āĻžāĻā§ āĻāĻāĻĻāĻŋāĻ¨ āĻāĻļā§āĻ°ā§āĻŦāĻžāĻĻ āĻāĻ°ā§āĻ¨...
āĻāĻāĻĒāĻŋāĻĄāĻŋ 1: āĻ§āĻ¨ā§āĻ¯āĻŦāĻžāĻĻ
āĻāĻāĻĒāĻŋāĻĄāĻŋ 2: āĻāĻ°ā§āĻāĻāĻž
āĻāĻ¤ā§āĻ¸: www.habr.com