Score:0

Dovecot ไม่สามารถอ่านใบรับรอง TLS

ธง ke

ในระบบ CentOS 7 ของฉัน ฉันพยายามเรียกใช้ dovecot โดยต้องใช้ TLS ด้วยเหตุนี้ ฉันจึงสร้างคีย์ส่วนตัวและใบรับรองใน

[root@homeserver /]# ls -lZ indernet/cert/homeserver.*
-r--r--r--. ผู้ใช้ใบรับรอง root system_u:object_r:default_t:s0 indernet/cert/homeserver.crt
-ร--ร-----. ผู้ใช้ใบรับรองหลัก system_u:object_r:default_t:s0 indernet/cert/homeserver.key
[รูท@โฮมเซิร์ฟเวอร์ /]#

ในการทำให้ dovecot โหลดไฟล์จริง ๆ ฉันมั่นใจว่า /etc/dovecot/conf.d/10-ssl.conf มีบรรทัดเหล่านี้:

ssl=จำเป็น
ssl_key=</indernet/cert/homeserver.key
ssl_cert=</indernet/cert/homeserver.crt

ส่วนที่มีปัญหา: Dovecot ไม่สามารถเริ่มทำงาน มันล้มเหลวด้วยข้อผิดพลาดนี้:

dovecot: doveconf: ร้ายแรง: ข้อผิดพลาดในไฟล์การกำหนดค่า /etc/dovecot/conf.d/10-ssl.conf บรรทัดที่ 14: ssl_key: ไม่สามารถเปิดไฟล์ /indernet/cert/homeserver.key: สิทธิ์ถูกปฏิเสธ

ฉันพยายามแก้ไขการอนุญาตไฟล์ของใบรับรองและคีย์ (สิ่งนี้ไม่ควรบังคับตาม https://doc.dovecot.org/configuration_manual/dovecot_ssl_configuration/) แม้จะเป็น 777 และไม่มีอะไรเปลี่ยนแปลง มีคนแนะนำฉันว่าอาจเป็น SELinux ที่ป้องกันการเข้าถึง และฉันได้กำหนดค่า unconfined_u:object_r:default_t:s0 รวมทั้ง system_u:object_r:default_t:s0 ตามที่คุณเห็นด้านบน ไม่มีการเปลี่ยนแปลง.

ตอนนี้ส่วนที่น่าแปลกใจ: ฉันอยากรู้อยากเห็นมากและแก้ไข /usr/lib/systemd/system/dovecot.service เพื่อให้มี

ExecStart=/bin/strace /usr/sbin/dovecot

จากนั้นใน /var/log/messages ฉันเห็นใบรับรองและคีย์ที่เข้าถึงและโหลดได้ และโดฟคอตก็ใช้ได้ แต่เมื่อฉันถอดสายรัดออกอีกครั้ง ฉันก็ยังมีปัญหาเดิม

เกิดอะไรขึ้นที่นี่?

in flag
คุณเปิดใช้งาน AppArmor หรือไม่ อาจทำให้เกิดปัญหาประเภทนี้ได้เช่นกัน
Hiran Chaudhuri avatar
ke flag
ฉันเปิดใช้งาน SELinux แล้ว AFAIK apparmor ใช้สำหรับระบบ Debian หรือไม่
Score:3
ธง cz

ไม่สามารถอ่านคีย์ได้เนื่องจาก SELinux ปฏิเสธการเข้าถึง

ในการแก้ไขปัญหา สำเนา (โดยใช้ ซีพี หรือ mv -Z) คีย์ไปยังไดเร็กทอรีที่ SELinux ต้องการเก็บคีย์ TLS และใบรับรอง เช่น /etc/pki/tls และไดเร็กทอรีย่อย ไฟล์ใหม่จะมีบริบท SELinux ที่ถูกต้องหากคุณใช้ ซีพี หรือ mv -Z. จากนั้นอัปเดตตำแหน่งของไฟล์ในการกำหนดค่า Dovecot ของคุณ

Hiran Chaudhuri avatar
ke flag
วิธีแก้ปัญหาได้ผลจริง แต่ทำไม strace นั้นสามารถหลีกเลี่ยง SELinux ได้?
Michael Hampton avatar
cz flag
@HiranChaudhuri SELinux อนุญาตให้ strace ทำได้ทุกอย่าง
Hiran Chaudhuri avatar
ke flag
ฟังดูแปลกเพราะคนอื่นใช้ strace เพื่อแก้ปัญหาการอนุญาต มีข้อมูลเพิ่มเติมเกี่ยวกับเรื่องนี้หรือไม่?

โพสต์คำตอบ

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