Автоматизація DirectAdmin
Проводити тестування на вразливості можна або просто, або мудро. Просто це вручну пишучи, наприклад, кавички скрізь. А по мудрому – це один раз написати скрипт, а потім він автоматично буде тестувати замість вас. І коли ми берем сайти на аудит, то коли ми більшість багів якраз знаходимо автоматичними тулзами.
Але сьогодні не про хак поговорим, а про бекап. Бекап – це ідеальне спасіння після хакерів
. Отже в такій штучкі як DirectAdmin є функції для створення бекапів, і дозвольте показати вам маленький скрипт, що можна поставити в крон на ніч, і він буде постійно замість вас створювати бекапи:
import time
from twill.commands import *
from ftplib import FTP
def make_backup():
go("http://tutamc.com:2222/")
fv("1", "username", "tutamc")
fv("1", "password", "пароль")
submit()
go('/CMD_SITE_BACKUP?domain=tutamc.com')
fv(1,14,'ok')
submit()
code(200)
def get_backup():
ftp = FTP('193.9.28.13')
ftp.login('tutamc','пароль','')
file_list = ftp.nlst('/backups')
first = file_list[0]
first_name = first.split('/')[2]
ftp.retrbinary('RETR '+first, open('d:\\\\TutaMC\\'+first_name, 'wb').write)
for item in file_list[1:-2]:
ftp.delete(item)
ftp.quit()
make_backup()
time.sleep(60*30)# = 30m
get_backup()
В цьому простому скрипті особливо цікаве використання бібліотека twill яка частіше використовується для тестування сайту. Але й для нашої задачі вона підходить ідельно. Раджу вам почитати про цю бібліотеку. Ну а інше в коді повинно бути зрозумілим, бо це ж Пітон
>> Бекап – це ідельний захист від хакерів
це не захист, і не _від_ хакерів )
а скоріше спасіння, і _після_ хакерів )
@poma
Абсолютно згоден. Виправився )