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

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

рддреЛ, рд╣рдо рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рд╕рд╛рджрдЧреА рдХреЗ рд▓рд┐рдП, рд╕рднреА рдорд╢реАрдиреЗрдВ рд▓рд┐рдирдХреНрд╕ рдХреЗ рддрд╣рдд рдХрд╛рдо рдХрд░рддреА рд╣реИрдВред рдкреЛрд░реНрдЯ рдЕрдЧреНрд░реЗрд╖рдг рдПрдХ 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, рдЬреЛ рдХрд╛рд░реНрдп рдХреЗ рддрд░реНрдХ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддрд╛ рд╣реИ
рд╡рд╣ рд╕рдм рд╣реИред рдореИрдВ рдХрд┐рди рдмрд╛рддреЛрдВ рдкрд░ рдзреНрдпрд╛рди рджреЗрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛:
- VDS рд╕рд░реНрд╡рд░ рдкрд░ - рдмрд╛рд╣рд░реА рдкрддреЗ рд╕реЗ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдкреЛрд░реНрдЯ рд╕реЗ рдХрдиреЗрдХреНрд╢рди рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдВред
- H рдорд╢реАрди рдкрд░ - рдХреЗрд╡рд▓ VNC рдХреНрд▓рд╛рдЗрдВрдЯ рдХреА рдЬрд░реВрд░рдд рд╣реЛрддреА рд╣реИред рдФрд░ рд╡рд╣ рд╕рдм рд╣реИред
- рдПрдХ рдбрдмреНрд▓реНрдпреВ рдорд╢реАрди рдкрд░ - рд╕рднреА рд▓рд┐рдкрд┐рдпреЛрдВ рдкрд░ рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдФрд░ рдЙрдиреНрд╣реЗрдВ рдбрд┐рдмрдЧ рдХрд░рдирд╛ рд╕рдмрд╕реЗ рдХрдард┐рди рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред
- рдЖрдк VDS рд╕рд░реНрд╡рд░ рдкрд░ trivial nc -vv -l 5995 рджреНрд╡рд╛рд░рд╛ рдкреЛрд░реНрдЯ рдлреНрд▓реИрдЧ рдЦреЛрд▓ рд╕рдХрддреЗ рд╣реИрдВред
рдЗрд╕ рдкреЛрд╕реНрдЯ рдХреЛ рдЕрдВрдд рддрдХ рдкрдврд╝рдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рдХреЛ рдзрдиреНрдпрд╡рд╛рджред