تخطى إلى المحتوى الرئيسي

إعداد خادم بريد إلكتروني آمن باستخدام Mailcow و Caddy: دليل خطوة بخطوة

فريق جليتش نيوز
منذ ساعتين3 مشاهدة5 دقائق
الوسوم
إعداد خادم بريد إلكتروني آمن باستخدام Mailcow و Caddy: دليل خطوة بخطوة

تعلم خطوة بخطوة كيفية بناء خادم بريد إلكتروني خاص واحترافي باستخدام Mailcow ووكيل Caddy العكسي. دليل عملي شامل لتكوين إعدادات الحماية (SPF, DKIM, DMARC) وضمان وصول رسائلك إلى صندوق الوارد بتقييم 10/10 على Mail-Tester.

المتطلبات الأساسية

  • خادم افتراضي (VPS) بنظام تشغيل حديث (مثل Ubuntu) وذاكرة عشوائية لا تقل عن 6 جيجابايت.
  • اسم نطاق (Domain Name) مربوط بخدمة إدارة DNS (مثل Cloudflare).
  • إيقاف تفعيل الوكيل (Proxy) في إعدادات DNS لأي سجل يخص البريد (جعل السحابة رمادية DNS-Only).
  • تثبيت Docker و Docker Compose على الخادم.

المرحلة الأولى: إعداد Caddy (الوكيل العكسي)

لضمان عمل واجهة الويب (UI) وواجهة البريد (SOGo) بشكل صحيح وبدون أخطاء توجيه أو حجب داخلي، يجب إعداد ملف Caddyfile لتمرير الترويسات (Headers) الحقيقية إلى Mailcow.

Code snippet


mail.yourdomain.com {
    reverse_proxy https://172.17.0.1:8443 {
        transport http {
            tls_insecure_skip_verify
        }
        header_up Host mail.yourdomain.com
        header_up X-Real-IP {remote}
        header_up X-Forwarded-For {remote}
        header_up X-Forwarded-Proto https
        header_up X-Forwarded-Host mail.yourdomain.com
        header_up X-Forwarded-Port 443
    }
}

المرحلة الثانية: تثبيت وتكوين Mailcow

  1. سحب ملفات المشروع من المستودع الرسمي:
  2. Bash

git clone https://github.com/mailcow/mailcow-dockerized
cd mailcow-dockerized
  1. إنشاء ملف الإعدادات الأساسي عبر تشغيل السكربت:
  2. Bash

./generate_config.sh
  1. (سيُطلب إدخال اسم النطاق الفرعي للخادم، مثال: mail.yourdomain.com)
  2. خطوة هامة لمنع حظر Caddy: افتح ملف mailcow.conf وأضف شبكات Docker الداخلية كنطاقات موثوقة:
  3. Plaintext

TRUSTED_PROXIES=172.16.0.0/12, 172.17.0.0/12, 10.0.0.0/8
  1. تشغيل الحاويات:
  2. Bash

docker compose up -d

المرحلة الثالثة: إعدادات حماية البريد (DNS Records)

لضمان وصول الرسائل إلى صندوق الوارد (Inbox)، يجب إضافة السجلات التالية في لوحة تحكم النطاق (Cloudflare):

نوع السجل (Type)الاسم (Name)المحتوى (Content / Value)MX@mail.yourdomain.com (Priority: 10)TXT@v=spf1 mx a:mail.yourdomain.com -allTXT_dmarcv=DMARC1; p=quarantine;

المرحلة الرابعة: ضبط لوحة تحكم Mailcow

  1. الدخول إلى لوحة التحكم عبر الرابط [https://mail.yourdomain.com](https://mail.yourdomain.com) باستخدام متصفح في وضع التخفي (Incognito).
  2. تسجيل الدخول بالبيانات الافتراضية (User: admin | Pass: moohoo).
  3. الانتقال إلى تبويب Domains وإضافة النطاق الأساسي (مثال: yourdomain.com).
  4. الانتقال إلى تبويب Mailboxes وإنشاء حساب بريد إلكتروني جديد للمستخدم.
  5. استخراج مفتاح DKIM: من القائمة العلوية System -> Configuration -> ARC/DKIM keys.
  6. نسخ الكود الخاص بالنطاق، وإضافته في لوحة تحكم النطاق (DNS) كالتالي:
  • Type: TXT
  • Name: dkim._domainkey
  • Content: (الصق الكود المستخرج هنا).

المرحلة الخامسة: إعداد Reverse DNS (rDNS)

هذه الخطوة إلزامية للحصول على تقييم 10/10 في اختبارات فلاتر السبام، ولا تتم من خلال مزود النطاق، بل من لوحة تحكم مزود الخادم (VPS Provider).

  • ابحث عن إعدادات الشبكة (Networking) أو إعدادات IP في لوحة الخادم.
  • قم بتعديل سجل PTR Record / rDNS للـ IP الخاص بك ليكون مطابقاً لاسم خادم البريد: mail.yourdomain.com.

المرحلة السادسة: حلول المشاكل الشائعة (Troubleshooting)

1. رسالة "Login failed" المستمرة لحساب Admin:

يحدث هذا عندما يقوم نظام الحماية (Netfilter) بحظر الـ IP الداخلي لـ Caddy. للحل الجذري:

Bash


# إعادة تعيين كلمة مرور الأدمن عبر السكربت الرسمي
bash ./helper-scripts/mailcow-reset-admin.sh

# إعادة تشغيل النظام لتفريغ الجلسات المعلقة
docker compose down
docker compose up -d

ثم تسجيل الدخول عبر نافذة تصفح خفي (Incognito).

2. توجيه خاطئ لواجهة SOGo أو ظهور IP داخلي:

إذا كانت الروابط تظهر كـ 172.17.0.1:8443، فهذا يعني أن ترويسات Caddy غير مكتملة. تأكد من تطبيق Caddyfile المذكور في المرحلة الأولى بالكامل، ثم أعد تشغيل Caddy وامسح ذاكرة التخزين المؤقت للمتصفح.

المرحلة السابعة: بيانات الربط لتطبيقات الأجهزة الذكية

لربط البريد بتطبيقات مثل Outlook أو Apple Mail، استخدم الإعدادات اليدوية (IMAP/SMTP) التالية:

  • خادم البريد الوارد (IMAP): mail.yourdomain.com (المنفذ: 993 | الأمان: SSL/TLS)
  • خادم البريد الصادر (SMTP): mail.yourdomain.com (المنفذ: 465 | الأمان: SSL/TLS)
  • اسم المستخدم: عنوان البريد الإلكتروني كاملاً.
  • كلمة المرور: كلمة المرور الخاصة بصندوق البريد.


تحتاج إلى مساعدة في إعداد سيرفرك أو تواجه أي مشكلة تقنية؟ نحن هنا لمساعدتك! تواصل معنا مباشرة عبر البريد الإلكتروني: [email protected] وسيقوم فريقنا بضبط كل شيء من أجلك.


أعجبك المقال؟ شاركه

النشرة البريدية

كن أول من يعرف بمستقبل التقنية

أهم الأخبار والتحليلات التقنية مباشرة في بريدك.

مقالات قد تهمك