- Подготовка к установке скрипта
Необходимые пакеты для работы скрипта:
python3 (apt-get install python3)
pip3 (apt-get install python3-pip)
pymysql (pip install pymysql)
Файл Connections/Connections.json содержит в себе реквизиты для подключения скрипта к базе данных(перед началом работы следует заменить тестовые данные на реальные, т.е. имя хостинга, имя самой базы, пользователь и пароль. Порт не меняется!)
Пример:
{
"DataBaseName": "имя_базы_данных",
"DataBaseUser": "имя_пользователя",
"DataBasePassword": "пароль",
"DataBaseHost": "имя_хоста",
"DataBasePort": "3306"
}
Файл Configs/Configs.json содержит в себе настройки, которые учитываются при непосредственной работе скрипта: -игнорируемые ip адреса (обращение на эти ip адреса не будут записываться в базу) -прослушиваемые порты (обращение на эти порты будут записываться в базу) Редактирование данного файла также следует осуществлять перед запуском скрипта. Количество адресов и портов не ограничено.
Пример:
{
"removedIps": ["ip-address1","ip-address2",...,"ip-address..."],
"usingPorts": [ "port1", "port2",...,"port..."]
}
- Установка скрипта
Работу скрипта можно проверить запустив файл SherLock.py, используя следующую команду:
python3 SherLock.py
(Однако, в таком случае программа будет работать только на время текущей сессии)
По-этому для удобства запишем его в cron:
crontab -e
После, в открывшемся файле вводим необходимые данные о частоте запуска программы.
Немного теории:
Параметр: Допустимый интервал
минуты: 0-59
часы: 0-23
день месяца: 1-31
месяц: 1-12
день недели: 0-7 (0-Вс,1-Пн,2-Вт,3-Ср,4-Чт,5-Пт,6-Сб,7-Вс)
Поле может быть задано явно или шаблоном:
1)* — любая цифра;
2)целое число;
3)целые числа через запятую — задание дискретного множества значений,например 1,2,5;
4)два целых числа, разделенные дефисом, соответствующие диапазону значений,например 3-6.
Пример готовой строки сценария cron:
Выполнять задание в 18 часов 7 минут 13 мая если это пятница
7 18 13 5 5 .../SherLock/SherLock/SherLock.py
Выполнять задание раз в час в 0 минут
0 */1 * * * .../SherLock/SherLock/SherLock.py
Выполнять задание каждые семь часов в 0 минут
0 */7 * * * .../SherLock/SherLock/SherLock.py
Выполнять задание по воскресеньям в 10 час 30 минут
30 10 * * 0 .../SherLock/SherLock/SherLock.py
P.S.
1) вместо {...} вводится полный путь к папке
2) папка скрипта может находиться в любом месте, главное, чтобы все файлы,
нахощиеся в папке никуда не перемещались и не удалялись.
После сохраняем изменения и перезагружаем систему.