Web Analytics

self-hosted-simplelogin

⭐ 88 stars Persian by springcomp

🌐 زبان

سیمپل‌لاگین

این یک پیکربندی docker-compose خود-میزبان برای SimpleLogin است.

پیش‌نیازها

به جز تنظیمات DNS که معمولاً در پنل رجیسترار دامنه شما انجام می‌شود، سایر مراحل زیر باید روی سرور شما انجام شوند. دستورات باید با شل bash (یا هر شل سازگار با bash مانند zsh) اجرا شوند. اگر از شل‌های دیگری مانند fish استفاده می‌کنید، لطفاً دستورات را مطابق آن تغییر دهید.

sudo apt update \
  && sudo apt install -y net-tools dnsutils

پیکربندی DNS

_برای جزئیات بیشتر به مستندات مرجع مراجعه کنید_

لطفاً توجه کنید که اعمال تغییرات DNS ممکن است تا ۲۴ ساعت طول بکشد تا در سراسر اینترنت پخش شود. البته در عمل این زمان معمولاً بسیار کمتر است (در آزمایش ما حدود ۱ دقیقه). در پیکربندی DNS، معمولاً دامنه را با یک نقطه (.) در انتها وارد می‌کنیم تا استفاده از دامنه مطلق اجباری شود.

شما باید رکوردهای DNS زیر را تنظیم کنید:

سیاست‌های امنیتی الزامی را تنظیم کنید:

مراحل اضافی:

هشدار: تنظیم رکورد CAA محدود می‌کند که کدام مرجع صدور گواهی می‌تواند با موفقیت برای دامنه شما گواهی SSL صادر کند. این کار صدور گواهی از سرورهای staging مربوط به Let’s Encrypt را متوقف می‌کند. ممکن است بخواهید اضافه کردن این رکورد DNS را تا پس از صدور موفقیت‌آمیز گواهی‌های SSL برای دامنه خود به تأخیر بیندازید.

داکر

اگر هنوز Docker را روی سرور خود نصب نکرده‌اید، لطفاً مراحل موجود در Docker CE برای اوبونتو را جهت نصب Docker دنبال کنید.

همچنین می‌توانید Docker را با استفاده از اسکریپت docker-install نصب کنید که

curl -fsSL https://get.docker.com | sh

فعال کردن IPv6 برای شبکه پل پیش‌فرض

{
  "ipv6": true,
  "fixed-cidr-v6": "2001:db8:1::/64",
  "experimental": true,
  "ip6tables": true
}
این راهنما شما را در اجرای کل استک با استفاده از کانتینرهای داکر راهنمایی می‌کند. این شامل موارد زیر است:

اجرای SimpleLogin از طریق کانتینرهای داکر:

پایگاه داده Postgres SQL

این مخزن یک پایگاه داده postgres SQL را در یک کانتینر داکر اجرا می‌کند.

هشدار: نسخه‌های قبلی این مخزن نسخه 12.1 را اجرا می‌کردند. لطفاً برای جزئیات بیشتر و دستورالعمل‌های ارتقاء به مستندات مرجع مراجعه کنید.

اجرای برنامه

برنامه را با استفاده از دستورات زیر اجرا کنید:

docker compose up --detach --remove-orphans --build && docker compose logs -f

شاید بخواهید در این مرحله مجوز مرجع صدور گواهی (CAA) را تنظیم کنید.

مراحل بعدی

اگر همه مراحل بالا با موفقیت انجام شد، را باز کنید و اولین حساب خود را ایجاد کنید!

به طور پیش‌فرض، حساب‌های جدید پرمیوم نیستند، بنابراین آدرس مستعار نامحدود ندارند. برای پرمیوم کردن حساب خود، لطفاً به پایگاه داده رفته، جدول "users" را باز کرده و مقدار ستون "lifetime" را به "1" یا "TRUE" تغییر دهید:

docker compose exec -it postgres psql -U myuser simplelogin
UPDATE users SET lifetime = TRUE;
\q

پس از ایجاد تمامی حساب‌های کاربری مورد نظر خود، این خطوط را به فایل .env اضافه کنید تا ثبت‌نام‌های بیشتر غیرفعال شود:

DISABLE_REGISTRATION=1
DISABLE_ONBOARDING=true
سپس، برای راه‌اندازی مجدد اپ وب، این دستور را اجرا کنید: docker compose restart app

متفرقه

پیکربندی Postfix - Spamhaus

پروژه Spamhaus لیست قابل اعتمادی از آدرس‌های IP که منبع SPAM شناخته می‌شوند را نگهداری می‌کند. شما می‌توانید بررسی کنید که آیا یک آدرس IP خاص در این لیست قرار دارد یا خیر با ارسال کوئری به زیرساخت DNS.

از آنجا که Spamhaus کوئری‌هایی که از Resolverهای عمومی (باز) می‌آیند را مسدود می‌کند (رجوع شود به: ) و کانتینر postfix شما ممکن است به طور پیش‌فرض از یک ریزولور عمومی استفاده کند، توصیه می‌شود برای سرویس رایگان Spamhaus Data Query Service ثبت‌نام کرده و یک کلید Spamhaus DQS دریافت کنید.

این کلید را به عنوان SPAMHAUS_DQS_KEY در فایل .env خود وارد کنید.

اگر کلید DQS ارائه نشود، کانتینر postfix شما بررسی می‌کند که آیا میرورهای عمومی Spamhaus کوئری‌هایش را می‌پذیرند یا خیر و در صورت امکان، آن‌ها را استفاده می‌کند. اگر Spamhaus کوئری‌ها از کانتینر postfix شما را به میرورهای عمومی رد کند، این قابلیت به طور کامل غیرفعال خواهد شد.

پیکربندی Postfix - آدرس‌های مجازی

پیکربندی postfix از آدرس‌های مجازی با استفاده از فایل‌های postfix/conf.d/virtual و postfix/conf.d/virtual-regexp پشتیبانی می‌کند. این فایل‌ها به طور خودکار در زمان راه‌اندازی بر اساس فایل‌های الگوی مربوطه postfix/templates/virtual.tpl و postfix/templates/virtual-regexp.tpl ایجاد می‌شوند.

پیکربندی پیش‌فرض به شرح زیر است:

#### virtual.tpl

فایل virtual از تنظیمات virtual_alias_maps در postfix پشتیبانی می‌کند. این شامل یک قانون است که آدرس unknown@mydomain.com را به contact@mydomain.com نگاشت می‌کند تا دریافت ایمیل از یک آدرس خاص که با هیچ یک از آدرس‌های مجازی موجود تطابق ندارد، به آدرسی که وجود دارد، نشان داده شود.

``postfix-conf unknown@mydomain.com contact@mydomain.com


#### virtual-regexp.tpl

فایل virtual-regexp از تنظیمات virtual_alias_maps در postfix پشتیبانی می‌کند. این شامل قانونی است که ایمیل‌های ارسال شده به زیردامنه‌های دلخواه را که با یک نام مستعار موجود مطابقت ندارند، به نام مستعاری جدید بازنویسی می‌کند که متعلق به دایرکتوری‌ای با نام گرفته شده از زیردامنه باشد. آن نام مستعار در صورت عدم وجود می‌تواند به صورت خودکار ایجاد شود.

postfix-conf /^([^@]+)@([^.]+)\.mydomain.com/ $2/$1@mydomain.com `

برای مثال، ایمیل‌هایی که به someone@directory.mydomain.com ارسال می‌شوند توسط postfix به directory/someone@mydomain.com` هدایت خواهند شد.

راهنمای ارتقاء از نسخه ۳.۴.۰

_این بخش به مستندات مرجع منتقل شده است_

راهنمای ارتقاء از تنظیمات قبلی مبتنی بر NGinx

_این بخش به مستندات مرجع منتقل شده است_

--- Tranlated By Open Ai Tx | Last indexed: 2026-03-15 ---