Защита Cron файлов

Cro

Отец-основатель
👑
🏆
📜
Сообщения
1,454
Реакции
254
Всем привет возник вопрос как лучше защитить Cron файлы от сторонних вмешательств ?

Есть первое это поместить Cron в папку и защитить с помощью .htaccess ( Работает )
какие еще варианты есть ?

И в файле была такая интересная вещь как
PHP:
if( $_GET['key'] != 'HhdffSssaaasdfDSW1' )
Но как правильно это писать в планировщике ? хз чтобы запускался убрав данную строчку все ок крон работает но легко запускается в браузере !


Также в файле были закоментированы вот такие строчки
PHP:
if (empty($_SERVER['LOGNAME']) || empty($_SERVER['USER'])) { die("not found"); }

if ($_SERVER['HTTP_USER_AGENT']!='Wget/1.12 (linux-gnu)') { die("not found"); }

Они также не дают запустить крон ! )

Есть варианты еще как защитить сам файл крон или понять как работают выше перечисленные
 

Insallah

¯\_(ツ)_/¯
🏆
📜
Сообщения
1,512
Реакции
468
chmod 700 + поместить его выше public_html
 
  • Like
Реакции: oxy

gosu

Интересующийся
🏆
📜
Сообщения
322
Реакции
15
Код:
if(isset($cron) && $cron == "ключ")
{

в планировщике будет выглядеть как site.ru/файлик_крона.php?cron=ключ
по сути незная ключа крон не запустить)
 

DARKNESSS

Интересующийся
Мудила!
📜
Сообщения
169
Реакции
11
Screenshot
я так сделал )
хоть тыкай 100 раз - крона не запускать.
посторонним фотку )
а системку можно. real ip
 

Insallah

¯\_(ツ)_/¯
🏆
📜
Сообщения
1,512
Реакции
468
Зашёл я в файлы крона и понял, что нихрена не понял. Что они делают? Зачем они это делают?
Видимо надо удалить весь крон и запускать вручную, поштучно.

Попадается прекрасное:
1518548311052.png
 

Orion

Продвинутый
📜
Сообщения
278
Реакции
57
chmod 700 + поместить его выше public_html
в Unix задачи cron-а лежат в нескольких местах:
1. /etc/cron.d - здесь можно создавать файлы с заданиями крону, которые он будет загружать и исполнять по указанному расписанию. в этих файлах нужно указывать пользователя, от имени которого будет исполнено задание
*/10 * * * * root /root/backup.db.sh
2. /etc/cron.daily, /etc/cron.hourly, /etc/cron.monthly, /etc/cron.weekly - здесь кладем скрипты, которые будут исполняться ежедневно, ежечасно, ежемесячно и еженедельно. это такие себе подготовленные расписания, которые подгружаются и исполняются в определенное время
3. crontab -e - исполнение этой команды с ключом откроет текстовый редактор для редактирования заданий крону текущего пользователя. будьте внимательны - эти задания относятся к текущему пользователю и будут исполняться от его имени
соответственно, самый просто способ для динамического редактирования заданий для крона - это манипуляция с заданиями в /etc/cron.d
Можно разъяснить,что значит (поместить его выше public_html) ? как и где они должны лежать , а то как то сдается ощущения,что я не те книжки читаю :unsure:
 

Insallah

¯\_(ツ)_/¯
🏆
📜
Сообщения
1,512
Реакции
468
Ну ты крон в кронтабе как запускать будешь?
Примерно вот так: /usr/bin/php /var/www/LOGIN/data/www/SITE/cron.php указывая абсолютный путь к файлу.

Что такое public_html? Это корневая папка сервера. Та, в которую ты смотришь, переходя браузером по http://localhost, например.

Что случится если ты положишь свой исполняемый файл выше этой папки?
  1. Ты сможешь выполнить cron по абсолютному пути к файлу.
  2. Ни одни пользователь через web-браузер не сможет зайти на твой файл крона вручную, потому что… ну просто не сможет, так как для веб-сервера папок выше корневой не существует. Ну как. Существует, но не для пользователя по ту сторону браузера.
У тебя, кстати, написано то же самое, только более умными словами.
 

RoBoT

Некто
📜
Сообщения
16
Реакции
5
Это не крон.... Это его злое подобие из-за лени или глупости разработчиков.
Какой дурак делает исполняемый файл через http протокол... Для этого есть php-cli который несет гораздо меньшую нагрузку на сервер, чем забивать стек веб-сервера путем глупых wget запросов сервера самому к себе, да еще и через всю громозкую связку LAMP, LEMP...

А если все-таки дошли руки до такой глупой штуки. То разрешить доступ к этому файлу с помощью htaccess или nginx, только с локально ip, без всяких извращений, впрочем, такой файл уже извращение...
 

Insallah

¯\_(ツ)_/¯
🏆
📜
Сообщения
1,512
Реакции
468
разрешить доступ к этому файлу с помощью htaccess или nginx, только с локально ip, без всяких извращений
Это уже извращение. Зачам так, если можно запустить файл напрямик без этих вот шашечек?
 
Внимание! Эта тема устарела на 1183 дней.
Тут обсуждать нечего, лучше создай новую тему. Конечно, если очень-очень нужно (например хочешь ответить на древний вопрос), то отвечай. Но помни: некропост — зло, а модератор не дремлет!
Сверху