рдлрд╝рд╛рдпрд░рд╡реЙрд▓-рдП рдХреЗ рдХрд╛рд░рдг рдкреЛрд░реНрдЯ рдлреЙрд░рд╡рд░реНрдбрд┐рдВрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рдмрд╛рд░ рдлрд┐рд░

рд╢реБрдн рджреЛрдкрд╣рд░
рдореИрдВрдиреЗ рдЗрд╕ рдкреЛрд╕реНрдЯ рдХреЛ рдХрдИ рдХрд╛рд░рдгреЛрдВ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рд╣реИ:
1) рдХрднреА-рдХрднреА рдХрд┐рд╕реА рд▓реЗрдЦ рдХреЛ рдПрдХ рд▓рд┐рдВрдХ рджреЗрдиреЗ рд╕реЗ рдЬреНрдпрд╛рджрд╛ рдЖрд╕рд╛рди рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдкрд╣рд▓реЗ рд╕реМ рдмрд╛рд░ рдмрддрд╛рдПрдВ рдХрд┐ рдЙрд╕реЗ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ рдФрд░ рд╡рд╣ рдЗрд╕ рд╕рдм рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХрд╣рд╛рдВ рдкрдврд╝ рд╕рдХрддрд╛ рд╣реИред
2) рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдЬреНрдЮрд╛рди рд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереАред рдФрд░ рдРрд╕рд╛ рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╣реИ рдЕрдЧрд░ рдЖрдк рдЗрд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдмрддрд╛ рд░рд╣реЗ рд╣реИрдВред
3) рд╡рд┐рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рд╕реНрд╡рд╛рд░реНрдереА рд╣рд┐рдд - рдореБрдЭреЗ рдирд┐рдордВрддреНрд░рдг рдЪрд╛рд╣рд┐рдПред

So. рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдмрдпрд╛рдиред
рдПрдХ рдХрд╛рд░реНрдпрд╕реНрдерд▓ ( рдбрдмреНрд▓реНрдпреВ ) рд╣реИ, рдПрдХ рд░рд╛рдЙрдЯрд░ рджреНрд╡рд╛рд░рд╛ рдмрдВрдж рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдПрдХ рд╣реЛрдо рдХрдВрдкреНрдпреВрдЯрд░ ( рдПрдЪ ) рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рд╕рдордп-рд╕рдордп рдкрд░ рдбрдмреНрд▓реНрдпреВ рдбреЗрд╕реНрдХрдЯреЙрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИ, рдФрд░ рдЬрд┐рд╕рдореЗрдВ "рд╕рдлреЗрдж" рдЖрдИрдкреА рдирд╣реАрдВ рд╣реИред
рд╕реНрдХреАрдорд╛ -1
рдЖрдк рд░рд╛рдЙрдЯрд░ рдХреА рд╕реЗрдЯрд┐рдВрдЧ рдореЗрдВ рдХреБрдЫ рдирд╣реАрдВ рдмрджрд▓ рд╕рдХрддреЗред рдЯреАрдорд╡реНрдпреВрдЕрд░ рдПрдВрдб рдХрдВрдкрдиреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ - рд╣рдорд╛рд░рд╛ рд░рд╛рд╕реНрддрд╛ рдирд╣реАрдВред


рд╕рдорд╛рдзрд╛рди рдХреЗ рд╡рд┐рдХрд▓реНрдкред
рдпрджрд┐ рд╣рдо рддреАрд╕рд░реЗ рдкрдХреНрд╖ рдХреЗ рдХрд╛рд░реНрдпрдХреНрд░рдореЛрдВ рдХреЛ рдЫреЛрдбрд╝ рджреЗрддреЗ рд╣реИрдВ, рддреЛ рдХреЗрд╡рд▓ 2 рд╡рд┐рдХрд▓реНрдк рдмрдЪреЗ рд╣реИрдВ:


рдореИрдВ рджреВрд╕рд░реЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ред
рд╕реНрдХреАрдорд╛ -2
рддреЛ, рд╣рдо рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╕рд╛рджрдЧреА рдХреЗ рд▓рд┐рдП, рд╕рднреА рдорд╢реАрдиреЗрдВ рд▓рд┐рдирдХреНрд╕ рдХреЗ рддрд╣рдд рдХрд╛рдо рдХрд░рддреА рд╣реИрдВред рдкреЛрд░реНрдЯ рдЕрдЧреНрд░реЗрд╖рдг рдПрдХ SSH рдХрдиреЗрдХреНрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕рд▓рд┐рдП, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдПрдХ рд╕рд╛рдзрд╛рд░рдг VDS рдПрдХ рдордзреНрдпрд╡рд░реНрддреА рд╕рд░реНрд╡рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреБрдХреНрдд рд╣реИред

рдФрд░ рдПрдХ рдФрд░ рдиреЛрдЯ - VDS рдкрд░ SSHd рдХреЛ рдПрдХ рдЕрд▓рдЧ рдкрддреЗ рд╕реЗ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдкреЛрд░реНрдЯ рд╕реЗ рдХрдиреЗрдХреНрд╢рди рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдиреА рдЪрд╛рд╣рд┐рдП ред рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ! рдЖрдк sshd_config рдХреЗ рд▓рд┐рдП GatewayPorts yes рд╕рдорд╛рдзрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ $ sudo /etc/init.d/ssh restart рд╕реЗрд╡рд╛ рдХреЛ $ sudo /etc/init.d/ssh restart рдХрд░рдирд╛ рди рднреВрд▓реЗрдВред

рдХрд╛рд░реНрдп рдХреА рдпреЛрдЬрдирд╛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ:
1) рдХреНрдпрд╛ рдбрдмреНрд▓реНрдпреВ рдорд╢реАрди рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдХреЛрдИ рдореБрдЭрд╕реЗ рдЬреБрдбрд╝рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ? (рд╡рд┐рд╡рд░рдг)
2) рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рд╣рдо рдХреБрдЫ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рдпрджрд┐ рд╣рд╛рдБ, рддреЛ VDS рд╕рд░реНрд╡рд░ рдкрд░ SSH рдХрдиреЗрдХреНрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред
3) рдорд╢реАрди рдПрдЪ VNC рдХреНрд▓рд╛рдЗрдВрдЯ рджреНрд╡рд╛рд░рд╛ VDS: 5900 рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реИ - рдФрд░ рдбреЗрд╕реНрдХрдЯреЙрдк W рддрдХ рдкрд╣реБрдБрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ ред
4) рд▓рд╛рдн!

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

рдЕрдм рдХреБрдЫ рд╕реНрдХреНрд░рд┐рдкреНрдЯ:
рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреНрдпрд╛ рдХреЛрдИ рддрд╛рд▓рд┐рдХрд╛ рддрдХ рдкрд╣реБрдВрдЪ рдЪрд╛рд╣рддрд╛ рд╣реИ?
$ crontab -u root -e
*/15 * * * * /usr/bin/connect_flag.sh

рд╣рд░ 15 рдорд┐рдирдЯ рдХреА рдЬрд╛рдБрдЪ рдХрд░реЗрдВред

рдЕрдЬрдЧрд░-рдП рдкрд░ рдЦреБрд▓реЗ рдмрдВрджрд░рдЧрд╛рд╣ рдХреА рдЬрд╛рдБрдЪ рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░рд┐рдкреНрдЯ
 import socket import subprocess def scan(host, port): while 1: sd = socket.socket(socket.AF_INET, socket.SOCK_STREAM) try: sd.connect((host, port)) except: return 0 else: sd.close() return 1 if __name__ == '__main__': if scan('yourServer', 5995): print 'start' else: print 'stop' 


рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ bash script connect_flag.sh, рдЬреЛ рдХрд╛рд░реНрдп рдХреЗ рддрд░реНрдХ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ
 #!/bin/bash export PATH=$PATH:/bin:/usr/bin:/usr/local/bin PID=`/bin/ps ux | awk '/ssh -N username/ && !/awk/ {print $2}'` FLAG=`/usr/bin/python /var/Script/portscan.py` PARAM="-N username@yourVDS -R 5900:127.0.0.1:5900" if [ $PID ]; then if [ $FLAG == 'stop' ]; then `kill $PID`; fi else if [ $FLAG == 'start' ]; then /usr/bin/ssh $PARAM & fi fi 


рд╡рд╣ рд╕рдм рд╣реИред рдореИрдВ рдХрд┐рди рдмрд╛рддреЛрдВ рдкрд░ рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛:


рдЗрд╕ рдкреЛрд╕реНрдЯ рдХреЛ рдЕрдВрдд рддрдХ рдкрдврд╝рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рдХреЛ рдзрдиреНрдпрд╡рд╛рджред

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


All Articles