Score:0

CRON[83463]: ล้มเหลวในการตั้งค่าข้อมูลรับรองผู้ใช้

ธง us

ฉันมีคอนเทนเนอร์นักเทียบท่าจำนวนหนึ่ง ซึ่งส่วนใหญ่ตั้งค่าเหมือนกันทั้งหมด ซึ่งใช้ cron เพื่อเรียกใช้งานการสำรองข้อมูลทุกคืนได้สำเร็จ

ฉันมีคอนเทนเนอร์อื่น ตั้งค่าเหมือนกันเป็นส่วนใหญ่ ซึ่งพยายามใช้ cron เพื่อเรียกใช้งานสำรองข้อมูลทุกคืนและล้มเหลว

ฉันติดตั้ง rsyslog เพื่อรับข้อมูลเพิ่มเติม และเมื่อ cron รัน crontab ของ root ฉันเห็นรายการต่อไปนี้ในไฟล์ syslog:

CRON[83463]: ล้มเหลวในการตั้งค่าข้อมูลรับรองผู้ใช้

ข้อแตกต่างอย่างหนึ่งระหว่างคอนเทนเนอร์นี้กับคอนเทนเนอร์อื่นๆ คือคอนเทนเนอร์นี้อนุญาตให้ผู้ใช้เข้าสู่ระบบโดยใช้ LDAP มีบรรทัดพิเศษต่อไปนี้ใน Dockerfile:

RUN echo '*;*;*;Al0000-2400;svn' >> /etc/security/group.conf
คัดลอก pam_group /usr/share/pam-configs/groups
RUN echo "ต้องการเซสชัน pam_mhomedir.so skel=/etc/skel umask=077" >> /etc/pam.d/common-session
RUN sed -i 's#\(.*pam_ldap.so.*\)#auth จำเป็น pam_group.so\n\1#' /etc/pam.d/common-auth
RUN sed -i 's#^passwd:.*#passwd: files ldap systemd#;s#^group:.*#group: files ldap systemd#;s#^shadow:.*#shadow: files ldap#' / etc/nsswitch.conf

เดอะ แพม_กรุ๊ป ไฟล์มีลักษณะดังนี้:

ชื่อ: เปิดใช้งาน /etc/security/group.conf
ค่าเริ่มต้น: ใช่

ลำดับความสำคัญ: 900
ประเภทการตรวจสอบสิทธิ์: การตรวจสอบสิทธิ์หลัก:
        ต้องการ pam_group.so

เห็นได้ชัดว่ามีบางอย่างเกี่ยวกับการตั้งค่า LDAP และการพยายามทำให้แน่ใจว่าผู้ใช้ทั้งหมดได้รับการเพิ่มใน svn กลุ่ม (ซึ่งใช้งานไม่ได้เลย) ทำลายเซสชันผู้ใช้รูทสำหรับ cron

ฉันได้ค้นหาทั่วอินเทอร์เน็ต แต่ไม่พบข้อผิดพลาดเฉพาะนี้ ฉันได้ลองวิธีแก้ปัญหาที่เกี่ยวข้องแล้ว แต่ไม่มีอะไรทำงาน

อัปเดต:

pam.d/common-auth ดูเหมือนว่า:

รับรองความถูกต้อง [success=2 default=ignore] pam_unix.so nullok_secure
จำเป็นต้องมีการตรวจสอบสิทธิ์ pam_group.so
รับรองความถูกต้อง [success=1 default=ignore] pam_ldap.so use_first_pass
# นี่คือทางเลือกหากโมดูลไม่สำเร็จ
การตรวจสอบสิทธิ์ที่จำเป็น pam_deny.so
# ไพรม์สแต็กด้วยค่าส่งคืนที่เป็นบวกหากยังไม่มี
# สิ่งนี้ช่วยป้องกันไม่ให้เราส่งคืนข้อผิดพลาดเพียงเพราะไม่มีรหัสความสำเร็จ
# เนื่องจากโมดูลด้านบนแต่ละโมดูลจะกระโดดไปมา
จำเป็นต้องมีการตรวจสอบสิทธิ์ pam_permit.so
# และนี่คือโมดูลต่อแพ็คเกจเพิ่มเติม (บล็อก "เพิ่มเติม")
รับรองความถูกต้องทางเลือก pam_cap.so 

pam.d/cron ดูเหมือนว่า:

@รวมการตรวจสอบสิทธิ์ทั่วไป

# ตั้งค่าแอตทริบิวต์กระบวนการเข้าสู่ระบบ
ต้องการเซสชัน pam_loginuid.so

# อ่านตัวแปรสภาพแวดล้อมจากไฟล์เริ่มต้นของ pam_env /etc/environment
# และ /etc/security/pam_env.conf.
ต้องการเซสชัน pam_env.so

# นอกจากนี้ อ่านข้อมูลตำแหน่งที่ตั้งของระบบ
ต้องการเซสชัน pam_env.so envfile=/etc/default/locale

@รวมบัญชีทั่วไป
@รวมเซสชันทั่วไปที่ไม่โต้ตอบ 

# ตั้งค่าขีดจำกัดของผู้ใช้ โปรดกำหนดขีดจำกัดสำหรับงาน cron
# ผ่าน /etc/security/limits.conf
ต้องการเซสชัน pam_limits.so
Score:1
ธง pk

ปัญหาของคุณน่าจะอยู่ที่ผู้ใช้รูทไม่ได้อยู่ใน LDAP; คุณจะต้องรวม pam_unix.so ใน /etc/pam.d/cron อย่างใด

ตัวอย่างเช่น:

รับรองความถูกต้อง [success=2 default=ignore] pam_unix.so nullok_secure
@รวมการตรวจสอบสิทธิ์ทั่วไป

สมมติว่า รับรองความถูกต้องร่วมกัน เริ่มต้นสิ่งนี้:

รับรองความถูกต้อง [success=1 default=ignore] pam_ldap.so
การตรวจสอบสิทธิ์ที่จำเป็น pam_deny.so
จำเป็นต้องมีการตรวจสอบสิทธิ์ pam_permit.so
us flag
ฉันเพิ่มข้อมูลเพิ่มเติมในคำถาม ฉันคิดว่าฉันมีสิ่งที่คุณแนะนำโดยที่ฉันมี pam_unix.so บรรทัด "auth" ก่อนบรรทัด LDAP ในไฟล์ (common-auth) ซึ่งรวมอยู่ในไฟล์ pam.d/cron
András Korn avatar
pk flag
บิต `success=2` ผิด มันจะข้ามไปที่ pam_deny.so ทำให้มัน `สำเร็จ = 3`
us flag
ขอบคุณสำหรับความช่วยเหลือและคำแนะนำ ฉันจะไปดูมันพรุ่งนี้ ฉันจึงเรียนรู้เพิ่มเติม ฉันมีคำถาม ตัวอย่างของคุณให้ `"success=2"` และนั่นเป็นค่าเริ่มต้นด้วย ตัวเลขหมายถึงอะไรและทำไมต้องเป็น 3
András Korn avatar
pk flag
ตัวเลขจะบอก PAM ว่ามีโมดูลถัดไปกี่โมดูลที่จะข้ามหากผลลัพธ์ที่รายงานโดยโมดูลนี้ "สำเร็จ" มันเป็นเงื่อนไข `goto` ถ้าคุณต้องการ ในการกำหนดค่าของคุณ `success=2` ทำให้ `pam_group` และ `pam_ldap` ถูกข้ามหาก `pam_unix` สำเร็จ คุณยังต้องการข้าม `pam_deny` เพราะนั่นเป็นเพียงการปฏิเสธทุกอย่าง แนวคิดเกี่ยวกับกฎ `success=X` คือการข้ามผ่าน `pam_deny` ไปที่โมดูลเสริมใดๆ
us flag
ขอบคุณ.นั่นช่วยได้จริงๆ

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา