рдкреЛрд░реНрдЯ рдЦрдЯрдЦрдЯрд╛рдирд╛ рдпрд╛ ssh рджреНрд╡рд╛рд░рд╛ рдЦреБрдж рдХреЛ рдкрд╛рд╢рд╡рд┐рдХрддрд╛ рд╕реЗ рдХреИрд╕реЗ рдмрдЪрд╛рдПрдВ

рд╣рдо рдХрд╖реНрдЯрдкреНрд░рдж рдХреНрд░реВрд░рддрд╛ рдФрд░ рдкреЛрд░реНрдЯ рд╕реНрдХреИрдирд░ рдХреЗ рдЦрд┐рд▓рд╛рдл рд▓рдбрд╝рд╛рдИ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ, рдЬреЛ рд╣рд░ рд╕рдВрднрд╡ рддрд░реАрдХреЗ рд╕реЗ рд╕рд░реНрд╡рд░ рддрдХ рдкрд╣реБрдВрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╣реИрдВред рд▓реЗрдЦ рдкреЛрд░реНрдЯ рдиреЙрдХрд┐рдВрдЧ рддрдХрдиреАрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдЧрд╛, рдЬреЛ рдЖрдкрдХреЛ рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рдХреЛ рдЫрд┐рдкрд╛рдХрд░ рд╕рд░реНрд╡рд░ рддрдХ рд╕реБрд░рдХреНрд╖рд┐рдд рдкрд╣реБрдВрдЪрдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред



рддрдХрдиреАрдХ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕рд╛


рдкреЛрд░реНрдЯ рдиреЙрдХрд┐рдВрдЧ рдореЗрдВ рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реИред рдпрд╣ рдмрдВрдж рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рд╕реЗ рдЬреБрдбрд╝рдиреЗ рдХреЗ рдХрдИ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реИред рдЖрдк рдкреВрдЫрддреЗ рд╣реИрдВ: "рдпрд╣ рдХреНрдпреЛрдВ рдЖрд╡рд╢реНрдпрдХ рд╣реИ?" рдЖрдЗрдП рдХрд▓реНрдкрдирд╛ рдХрд░реЗрдВ рдХрд┐ рдЖрдк рдкрд╣реБрдВрдЪ рдирд┐рдпрдВрддреНрд░рдг рдХреЗ рд╕рд╛рде рдХрд┐рд╕реА рд╕рдВрдЧрдарди рдореЗрдВ рд╕рд╛рдХреНрд╖рд╛рддреНрдХрд╛рд░ рдХреЗ рд▓рд┐рдП рдЖрдП рдереЗред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдЖрдк (1) рд╕реБрд░рдХреНрд╖рд╛ рдкрдж рдкрд░ рдкрд╣реБрдБрдЪрддреЗ рд╣реИрдВ, рдЬрд╣рд╛рдБ рдПрдХ рдкрд╛рд╕ рдЖрдкрдХреЛ рд▓рд┐рдЦрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдлрд┐рд░ (2) рдЖрдкрдХреЛ рдХрд╛рд░реНрдорд┐рдХ рд╡рд┐рднрд╛рдЧ рдореЗрдВ рд▓реЗ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд╣рд╛рдБ рдЖрдк рдкреНрд░рд╢реНрдирд╛рд╡рд▓реА рднрд░рддреЗ рд╣реИрдВ рдФрд░ рдЖрдкрд╕реЗ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдЕрдВрддрддрдГ (3) рдЖрдк рдкреНрд░рдмрдВрдзрдХ рдХреЗ рдХрд╛рд░реНрдпрд╛рд▓рдп рдореЗрдВ рдкрд╣реБрдБрдЪрддреЗ рд╣реИрдВ, рдЬреЛ рдЕрдВрддрд┐рдо рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИред рдмрд╛рддрдЪреАрдд рдФрд░ рдПрдХ рдирд┐рд░реНрдгрдп рдХрд░рддрд╛ рд╣реИред рдЕрдм рд╕реЛрдЪрд┐рдП рдХрд┐ рдЕрдЧрд░ рд╣рд░ рдХреЛрдИ рд╕реАрдзреЗ рдореИрдиреЗрдЬрд░ рдХреЗ рдкрд╛рд╕ рдЬрд╛рдирд╛ рдЪрд╛рд╣реЗ рддреЛ рдХреНрдпрд╛ рд╣реЛрдЧрд╛?

рдкреЛрд░реНрдЯ рдиреЙрдХрд┐рдВрдЧ рддрдХрдиреАрдХ рдмрдВрдж рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рд╕реЗ рдЬреБрдбрд╝рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреА рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдмрдирд╛рддреА рд╣реИред рд╕рднреА рдкреЛрд░реНрдЯ рдмрдВрдж рд╣реЛрдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдЖрдк рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рдХреА рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓реЛрдВ рдореЗрдВ рд╕рднреА рдХрдиреЗрдХреНрд╢рди рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреЛ рдЯреНрд░реИрдХ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╕рд░реНрд╡рд░, рд╕рдмрд╕реЗ рдЕрдзрд┐рдХ рдмрд╛рд░, рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ рдЗрди рдХрдиреЗрдХреНрд╢рдиреЛрдВ рдХрд╛ рдЬрд╡рд╛рдм рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЙрдиреНрд╣реЗрдВ рдкрдврд╝рддрд╛ рд╣реИ рдФрд░ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдХрдиреЗрдХреНрд╢рди рдХреА рд╢реНрд░реГрдВрдЦрд▓рд╛ рдкрд╣рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреА рдЧрдИ рдереА, рддреЛ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреА рдЬрд╛рдПрдЧреАред рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рдкреЛрд░реНрдЯ 22 рдкрд░ рдПрдХ рдПрд╕рдПрд╕рдПрдЪ рд╕реЗрд╡рд╛ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдирд╛ред рдкреЛрд░реНрдЯ рдиреЙрдХрд┐рдВрдЧ рдЖрдкрдХреЛ рдХреЗрд╡рд▓ рдЗрд╕ рдХрд╛рд░реНрд░рд╡рд╛рдИ рд╕реЗ рдЕрдзрд┐рдХ рдкреНрд░рджрд░реНрд╢рди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдПрдХ рдЯреНрд░рд┐рдЧрд░ рдЖрдкрдХреЛ рдЕрдиреНрдп рдХрд╛рд░реНрдпреЛрдВ (рдЬреИрд╕реЗ, рдкрд╛рд╡рд░ рдСрдл, рд╕рд┐рд╕реНрдЯрдо рд░рд┐рдмреВрдЯ, рдЖрджрд┐) рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

FreeBSD рдкрд░ рд╕реНрдерд╛рдкрдирд╛


рд░рд┐рдореЛрдЯ рдорд╢реАрди рдкрд░, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ FreeBSD 9.1 рд╣реИ
рдкреЛрд░реНрдЯ рдиреЙрдХрд┐рдВрдЧ рдореЗрдВ рджреЛ рдХрд╛рд░реНрдпрдХреНрд░рдо рд╣реЛрддреЗ рд╣реИрдВ:
- рд╕рд░реНрд╡рд░ (рдиреЙрдХ)
- рдЧреНрд░рд╛рд╣рдХ (рджрд╕реНрддрдХ)

рдореИрдВ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреВрдВрдЧрд╛ред
# cd /usr/ports/ # make search key=knocking Port: doorman-0.81_1 Path: /usr/ports/security/doorman Info: Port knocking implementation, both daemon and client Maint: lupe@lupe-christoph.de B-deps: lsof-4.88.d,8 R-deps: lsof-4.88.d,8 WWW: http://doorman.sourceforge.net/ Port: knock-0.5_1,1 Path: /usr/ports/security/knock Info: Flexible port-knocking server and client Maint: sbz@FreeBSD.org B-deps: R-deps: WWW: http://www.zeroflux.org/projects/knock 


рдкреЛрд░реНрдЯ рдХреЗ рд╕рд╛рде рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдкрд░ рдЬрд╛рдПрдВ рдФрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВред
 cd /usr/ports/security/knock make config 


рд╣рдо рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдкрд░ рдПрдХ рдорд╛рд░реНрдХрд░ рд░рдЦрддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рд╣рдо рдкреИрдХреЗрдЬ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВред

рд╡рд┐рдиреНрдпрд╛рд╕


рдЕрдм рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдиреАрдЪреЗ рдЙрддрд░реЗрдВред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, config рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдПрдБред
 # cd /usr/local/etc/ # cp knockd.conf.sample knockd.conf 

рдиреЗрдЯрд╡рд░реНрдХ рдкрд░ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреА рдХрдИ рд╡рд┐рд╡рд┐рдзрддрд╛рдПрдВ рд╣реИрдВ, рдореИрдВ рдЕрдкрдирд╛ рдЦреБрдж рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдКрдВрдЧрд╛ред
knockd.conf
 [options] logfile = /var/log/knockd.log interface = em0 [opencloseSSH] sequence = 7000:udp,7007:tcp,7777:udp seq_timeout = 5 tcpflags = syn start_command = /sbin/pfctl -t good_hosts -T add %IP% cmd_timeout = 10 stop_command = /sbin/pfctl -t good_hosts -T delete %IP% [open22] sequence = 7134:tcp,7675:tcp,7253:udp seq_timeout = 5 tcpflags = syn command = /sbin/pfctl -t good_hosts -T add %IP% [close22] sequence = 7253:udp,7675:tcp,7134:tcp seq_timeout = 5 tcpflags = syn command = /sbin/pfctl -t good_hosts -T delete %IP% 


рд╣рдо рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЛ рд╕рд╣реЗрдЬрддреЗ рд╣реИрдВ, рдЗрд╕реЗ рдСрдЯреЛрд░рди рдореЗрдВ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВ рдФрд░ рд╕реЗрд╡рд╛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред
 # cd /usr/local/etc/rc.d/ # echo knockd_enable=\"YES\" >> /etc/rc.conf # service knockd start 


рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рд╕реЗрдЯрдЕрдк


рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдпрд╣ рдЕрдХреНрд╖рдо рд╣реИ, рддреЛ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рд╕рдорд░реНрдерди рдХреЛ рд╕рдХреНрд╖рдо рдХрд░реЗрдВ (рдЬреИрд╕рд╛ рдХрд┐ рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдерд╛)
 echo pf=\"YES\" >> /etc/rc.conf 

рдореИрдВ рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рджреВрд░рд╕реНрде рд░реВрдк рд╕реЗ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рдирд╣реАрдВ рджреЗрддрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╣рдо ssh рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рднреА рдХрдиреЗрдХреНрд╢рди рдФрд░ рдПрдХреНрд╕реЗрд╕ рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред
рдиреЛрдЯ: рдпрджрд┐ рдЖрдкрдиреЗ рдЗрд╕рдХрд╛ рдкрд╛рд▓рди рдирд╣реАрдВ рдХрд┐рдпрд╛ рдФрд░ рдЗрд╕ рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХреЛ рджреВрд░рд╕реНрде рд░реВрдк рд╕реЗ рдХрд┐рдпрд╛, рддреЛ рд╕рдорд╕реНрдпрд╛ рдХреЛ sshhd-config рдореЗрдВ рд░реВрдЯ рд▓реЙрдЧрд┐рди рд╕рд╣рд┐рдд рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

/etc/pf.conf
 ext_if="rl0" table <good_hosts> persist block in on $ext_if all pass in on $ext_if inet proto tcp from <good_hosts> \ to $ext_if port 22 keep state 


рд╣рдо рдлрд╝рд╛рдпрд░рд╡реЙрд▓ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдореЗрдВ рдирд┐рдпрдо рдмрдирд╛рддреЗ рд╣реИрдВ
 /sbin/ipfw add 100 allow tcp from %IP% to me 22 keep-state /sbin/ipfw delete 100 


рд░реАрдмреВрдЯред

рджрд╕реНрддрдХ


рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ MacOS рдХреЗ рд▓рд┐рдП рдПрдХ рддреГрддреАрдп-рдкрдХреНрд╖ рдХреНрд▓рд╛рдЗрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ - рд╣рд┐рдкрд┐рдВрдЧред
 # knock -v *e*m*o*c*.ru 7000:udp,7007:tcp,7777:udp hitting udp *1.*0*.*3*.*0:7000 hitting tcp *1.*0*.*3*.*0:7007 hitting udp *1.*0*.*3*.*0:7777 # ssh *e*m*o*c*.ru -l root Password: Last login: Thu May 9 11:30:40 2013 from ***** FreeBSD 9.1-RELEASE-p3 (GENERIC) #0: Mon Apr 29 18:11:52 UTC 2013 root@*e*m*o*c*:/root # 

Source: https://habr.com/ru/post/In179219/


All Articles