Score:0

Centos 7 Samba php:apache การอนุญาตถูกปฏิเสธเมื่อย้ายไฟล์ด้วยคอนเทนเนอร์ Docker หลังจากย้ายไปยัง: z ปริมาณจากการแชร์ samba

ธง in

ก่อนอื่น ขอบอกว่า chmod 777 ใช้ไม่ได้กับสิ่งนี้ (แม้ว่าฉันจะรู้ว่านั่นไม่ใช่วิธีแก้ปัญหาที่ถูกต้อง)

นี่คือสถานการณ์: ฉันมีเมลเซิร์ฟเวอร์ที่รับเมล บนเซิร์ฟเวอร์นั้นมี cronjob ที่รันสคริปต์ .sh ที่ย้ายไฟล์เมลไปยัง samba ที่แชร์ เซิร์ฟเวอร์แอพแยกต่างหาก (ซึ่งเป็นที่ที่ฉันมีปัญหา) ยังมี cronjob ที่รันสคริปต์ .sh ที่ย้ายไฟล์เมลเหล่านั้นจากการแชร์:

#!/bin/sh

ถ้า [ "$(ls -A /samba/reports)" ]; แล้ว
mv /samba/reports/* /home/adam/dmarc/reports/mail.mv
chown adam:อดัม /home/adam/dmarc/reports/mail/*
chmod 664 /home/adam/dmarc/reports/mail/*
ไฟ

ทั้งหมดนี้ดูเหมือนจะทำงานได้ดี โปรดทราบว่า cronjob จะทำงานในฐานะรูท (มันคือ crontab ของรูท) นอกจากนี้ ไดเร็กทอรี 'รายงาน' ยังเมาต์เป็นวอลุ่มภายในคอนเทนเนอร์ php:apache Docker (-./reports:/var/www/reports:z) ไฟล์อยู่ที่นั่นและสามารถอ่านได้ภายในคอนเทนเนอร์ อย่างไรก็ตาม เมื่อฉันใช้ php (เรียกใช้จากสคริปต์ ไม่ใช่ apache) ฉันไม่ได้รับอนุญาตให้เปลี่ยนชื่อ/ย้ายไฟล์ อย่างไรก็ตาม ถ้าฉันกำหนดให้แต่ละไฟล์เป็นไฟล์เดียวกันโดยใช้ชื่ออื่น:

cat theProblemFile > noProblem

....ก็ใช้งานได้ดี เจ้าของ/กลุ่มและการอนุญาตเหมือนกันทุกประการ

มีบางอย่างเกี่ยวกับไฟล์ที่ถูกย้ายจากการแชร์ของ Samba ที่ทำให้แตกต่างออกไปหรือไม่? เกิดขึ้นที่นี่คืออะไร? นอกจากนี้ ในเรื่องของการรับไฟล์จากเมลเซิร์ฟเวอร์ไปยังเซิร์ฟเวอร์แอพ มีวิธีที่เป็นมาตรฐานอุตสาหกรรม/วิธีปฏิบัติที่ดีที่สุด/ที่ต้องการหรือไม่?

ขอบคุณ

Score:2
ธง cz

คุณย้ายไฟล์ (โดยไม่มีไฟล์ -Z ตัวเลือก) แทนที่จะคัดลอก ดังนั้นพวกเขาจึงมีบริบท SELinux ดั้งเดิมแทนบริบทที่เหมาะสมสำหรับปลายทาง

เมื่อคุณสร้างไฟล์ใหม่ ไฟล์นั้นมีบริบท SELinux ที่ถูกต้องอยู่แล้ว

คุณสามารถใช้ได้ เรียกคืนคอน เพื่อแก้ไขบริบท SELinux ในไฟล์ที่ได้รับผลกระทบ ตัวอย่างเช่น:

restorecon -rv <ไดเร็กทอรี>
in flag
ขอขอบคุณ! คุณช่วยแนะนำวิธีที่ดีในการเรียนรู้สิ่งที่ฉันควร/จำเป็นต้องรู้เกี่ยวกับ SELinux ได้ไหม ฉันคิดว่ามันอาจเกี่ยวข้องกับ SELinux แต่ getfacl ไม่ได้แสดงอะไรที่แตกต่างออกไป
Michael Hampton avatar
cz flag
@AdamWinter คุณอาจลองใช้ [เอกสาร Red Hat](https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/8/html/using_selinux/index) เพื่อเริ่มต้น

โพสต์คำตอบ

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