Чому я бачу, що сесія CRON відкривається та закривається щогодини в /var/log/auth.log?


45

Я цілком свіжий з Linux в цілому, тому це може бути дурним питанням - але я все одно хотів би відповісти

Сьогодні вранці, коли я переглядаю мій /var/log/auth.log (який мені сказали скласти звичку), я помічаю, що раз на годину він реєстрував подію, яка виглядає приблизно так:

     May 13 20:17:01 Ubuntu-Server-1401-VM CRON[2280]: pam_unix(cron:session): session opened for user root by (uid=0)
     May 13 20:17:01 Ubuntu-Server-1401-VM CRON[2280]: session closed for user root

Потім це відбувалося щогодини о x: 17: 01, поки я не відкрив журнал. Підключення SSH до цього сервера протягом цього часу зберігається в живих (там, де відбувся вхід журналу). Я найкраще здогадуюсь, що кожну годину мій клієнт SSH розглядав, чи може він отримати кореневий доступ як спосіб перевірити з’єднання з SSH-з'єднанням із сервером - але я хотів би бути в безпечній стороні. Хтось знає, що це?

Відповіді:


50

Якщо припустити, що ви нічого не змінили в cronналаштуваннях за замовчуванням , це ваш /etc/crontabзапуск. На моєму сервері Ubuntu 10.04.3 LTS його вміст включає:

# m h dom mon dow user  command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly

Отже, cronпрокидається щогодини і запускає будь-які скрипти, розташовані в /etc/cron.hourly. У вас, мабуть, немає жодного, через що він нічого не робить. Він просто запускає rootсеанс, який виконується, run-partsа потім знову закриває сеанс.


1
його відключили, треба просто відходити ....
Tebe

15

Ці записи в журналі були записані бібліотеками PAM, коли crondдемон виконує завдання у фоновому режимі. crondвиконує завдання за розкладом від імені системи та користувачів у системі.

У кожного користувача є свій crontabконфігураційний файл, який можна редагувати за допомогою crontab -eкоманди або показувати за допомогою crontab -l. Системний адміністратор також може налаштувати завдання за допомогою безлічі /etc/файлів і каталогів; /etc/cron.d/забезпечує легке місце для послуг відмовитися від своїх власних конфігурацій, а також /etc/crontabдиски з hourly, dailyі weeklyкаталоги, а також прогонів незалежно адміністратор може вибрати для запуску.

crondзмінить користувачів на правильного користувача (або вказаний у /etc/crontabфайлі та /etc/cron.d/каталозі, або з crontabфайлів, що надаються користувачем ) перед запуском завдань; вона використовує систему PAM для зміни користувачів.

PAM надає єдине місце для налаштування різних способів аутентифікації та авторизації користувачів та забезпечення налаштування сеансу, а також надає спосіб зміни паролів (або інших маркерів аутентифікації). Кожна служба, що використовує PAM, має файл конфігурації, в /etc/pam.d/якому описано, які модулі PAM використовувати для "входу" користувача.

Мій /etc/pam.d/cronфайл виглядає приблизно так:

# The PAM configuration file for the cron daemon

@include common-auth

# Read environment variables from pam_env's default files, /etc/environment
# and /etc/security/pam_env.conf.
session       required   pam_env.so

# In addition, read system locale information
session       required   pam_env.so envfile=/etc/default/locale

@include common-account
@include common-session-noninteractive 

# Sets up user limits, please define limits for cron tasks
# through /etc/security/limits.conf
session    required   pam_limits.so

Це гарантує, що обмеження, налаштовані для користувачів, застосовуються до завдань користувачів, коли вони виконують їх через cron. Якщо ви хочете змінити ці обмеження для послуги, ви можете налаштувати pam_limits.soв цьому файлі свій власний conf=/etc/security/cron-limits.confі застосувати інші обмеження, ніж ssh logins ( /etc/pam.d/sshd) або консольні входи ( /etc/pam.d/login).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.