เหตุใดฉันจึงเห็นการเปิดและปิดเซสชัน 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ตื่นขึ้นมาทุกชั่วโมงและทำงาน scrips ใด ๆ /etc/cron.hourlyที่ตั้งอยู่ใน คุณอาจไม่มีสิ่งใดซึ่งเป็นสาเหตุว่าทำไมมันไม่ทำอะไรเลย มันเพียงเรียกใช้rootเซสชั่นซึ่งดำเนินการrun-partsแล้วปิดเซสชั่นอีกครั้ง


1
มันปิดการใช้งานจะต้องเสีย ....
Tebe

15

รายการบันทึกเหล่านี้ถูกเขียนโดยไลบรารี PAM เมื่อcronddaemon รันภารกิจในเบื้องหลัง 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 ( /etc/pam.d/sshd) หรือการเข้าสู่ระบบคอนโซล ( /etc/pam.d/login)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.