مدیریت دامنه‌ها، کاربران و ریسلرها در DirectAdmin

DirectAdmin مجموعه‌ای از ابزارهای قدرتمند برای مدیریت دامنه‌ها، کاربران و ریسلرها ارائه می‌دهد. در این مقاله، مهم‌ترین عملیات مدیریتی شامل تغییر نام دامنه، تغییر نام کاربری، انتقال دامنه بین کاربران، ادغام حساب‌ها، رفع خطای Domain Already Exists، ارسال پیام به همه کاربران، مدیریت پکیج‌ها، غیرفعال‌سازی mail_sni و نکات کاربردی دیگر را بررسی می‌کنیم.

Resellers in DirectAdminManaging Domains

~3 دقیقه مطالعه · آخرین به‌روزرسانی ۱۰ اسفند ۱۴۰۴

1. تغییر نام یک دامنه در DirectAdmin


برای تغییر نام دامنه (مثلاً domain1.com → domain2.com):

  1. به مسیر User Level → Domain Setup → Change a Domain Name بروید.
  2. دامنه را انتخاب کنید و نام جدید را وارد کنید.

نکات مهم:

  • فایل‌های وب (public_html) و ایمیل‌ها تحت تأثیر قرار می‌گیرند.
  • دیتابیس‌ها تغییر نام نمی‌دهند؛ ممکن است لازم باشد مسیرها یا config اسکریپت‌ها را اصلاح کنید.
---

2. تغییر نام کاربری (Username)


به‌عنوان root در SSH اجرا کنید:


cd /usr/local/directadmin/scripts
./change_username.sh olduser newuser

نکته امنیتی مهم: قبل از تغییر نام کاربری، از تمام دیتابیس‌ها بک‌آپ کامل بگیرید.

---

3. انتقال دامنه از یک کاربر به کاربر دیگر


از اسکریپت آماده استفاده کنید:


cd /usr/local/directadmin/scripts/
./move_domain.sh domain.com olduser newuser

اگر newuser وجود ندارد:

  • یک دامنه فیک (مثلاً fakedomain.com) بسازید.
  • دامنه اصلی را منتقل کنید.
  • دامنه فیک را حذف کنید.

برای انتقال دیتابیس‌ها:

از اسکریپت زیر استفاده کنید:


rename_database_with_user.sh
---

4. ادغام (Merge) دو حساب کاربری


این کار معمولاً برای کاهش تعداد حساب‌ها یا ساده‌سازی مدیریت انجام می‌شود.

روش ۱: ارتقاء کاربر و حذف حساب قدیمی


cd /usr/local/directadmin/scripts
./user_to_reseller.sh fred
echo "fred" >> /usr/local/directadmin/data/admin/admin.list
perl -pi -e 's/^fred\n//' /usr/local/directadmin/data/admin/reseller.list
perl -pi -e 's/usertype=reseller/usertype=admin/' /usr/local/directadmin/data/users/fred/user.conf

سپس با کاربر fred وارد شوید و حساب admin را حذف کنید.

روش ۲: Restore Merge با بک‌آپ

اگر کاربر حذف شده، فایل بک‌آپ را rename کنید:


user.admin.fred.tar.gz → admin.root.admin.tar.gz

و Restore کنید.

روش ۳: انتقال دستی (پیشرفته)

  • انتقال همه دامنه‌ها
  • انتقال دیتابیس‌ها با rename_database_with_user.sh
  • انتقال cronjobها:

crontab -u fred -l > crons.txt
crontab -u admin -e
---

5. رفع خطای “Domain already exists”


اگر دامنه در هیچ حسابی نیست اما خطا می‌دهد، موارد زیر را بررسی کنید:

  • named.conf
  • /etc/virtual/domains
  • /etc/virtual/domainowners
  • /etc/virtual/domain.com
  • فایل‌های .nzf در /var/named

در Multi-Server Setup نیز گزینه Domain Check ممکن است فعال باشد.

---

6. چرا برخی کاربران در Show All Users نمایش داده نمی‌شوند؟


کش خراب شده است. بازسازی کنید:


da taskq --run="action=cache&value=showallusers"

یا فایل را حذف کنید:


rm -f /usr/local/directadmin/data/admin/show_all_users.cache
---

7. ارسال پیام به همه ایمیل‌های سیستم


  1. Admin Level → Show All Users → Advanced Search
  2. Items per Page = All
  3. Search → Select All → Send a Message
  4. گزینه‌های All E-Mail Accounts و E-Mail Only را فعال کنید.
---

8. Suspend/Unsuspend کاربر یا دامنه از خط فرمان (DA v1.595+)



/usr/local/directadmin/directadmin --suspend-user user=fred
/usr/local/directadmin/directadmin --unsuspend-user user=fred

/usr/local/directadmin/directadmin --suspend-domain domain=domain.com
/usr/local/directadmin/directadmin --unsuspend-domain domain=domain.com
---

9. غیرفعال کردن Suspend خودکار ریسلر روی Overlimit


در فایل reseller.conf:


suspend_at_limit=OFF
---

10. تغییر پکیج همه کاربران


اسکریپت:


OLD=custom
NEW=fancy
for i in `ls /usr/local/directadmin/data/users`; do
    if grep -q "usertype=user" /usr/local/directadmin/data/users/$i/user.conf; then
        perl -pi -e "s/package=$OLD/package=$NEW/" /usr/local/directadmin/data/users/$i/user.conf
    fi
done

سپس پکیج fancy را از پنل Save کنید.

---

11. تغییر پکیج همه کاربران یک ریسلر



CREATOR="silver"
TOPACKAGE="gold"
for u in `grep "^creator=${CREATOR}$" /usr/local/directadmin/data/users/*/user.conf | cut -d/ -f4`; do
    perl -pi -e "s/^package=.*/package=${TOPACKAGE}/" /usr/local/directadmin/data/users/$u/user.conf
done

سپس پکیج gold را Save کنید.

---

12. غیرفعال کردن mail_sni برای یک دامنه


در فایل:


/usr/local/directadmin/data/users/username/domains/domain.com.conf

اضافه کنید:


mail_sni=OFF

سپس:


echo "action=rewrite&value=mail_sni" >> /usr/local/directadmin/data/task.queue
/usr/local/directadmin/dataskq d
---

13. ارسال اعلان‌های حجیم (مثل brute force) به ایمیل دیگر


در فایل user.conf ادمین:


[email protected],[email protected]
---

14. ممنوع کردن دامنه‌های خاص


فایل زیر را کپی کنید:


/usr/local/directadmin/data/templates/forbidden_domains.list
→ /usr/local/directadmin/data/templates/custom/forbidden_domains.list

دامنه‌های ممنوعه را اضافه کنید.

نوشته و پژوهش‌شده توسط دکتر شاهین صیامی

مقالات مرتبط

راهنمای کامل پیکربندی کلاینت‌های ایمیل، هشدارهای quota در Dovecot و بررسی آخرین لاگین‌ها در DirectAdmin

این مقاله یک مرجع جامع برای کاربران و مدیران DirectAdmin است. در این راهنما یاد می‌گیرید چگونه ایمیل را روی iPhone، Thunderbird و Gmail تنظیم کنید، هشدارهای پر شدن quota را در Dovecot فعال کنید و با یک اسکریپت ساده، آخرین زمان لاگین تمام حساب‌های ایمیل را مشاهده کنید.

ادامه

عیب‌یابی Dovecot در DirectAdmin – رفع خطاهای IMAP، مشکلات احراز هویت و بررسی گواهی SSL

Dovecot سرویس اصلی IMAP/POP3 در DirectAdmin است. گاهی کاربران هنگام ورود به وب‌میل یا کلاینت ایمیل با خطاهایی مثل "Connection dropped" یا "unknown user" مواجه می‌شوند. این مقاله یک راهنمای کامل برای رفع خطاهای رایج Dovecot، پاک‌سازی ایندکس‌ها، بررسی دیتابیس‌های احراز هویت و تست گواهی SSL روی پورت‌های 143 و 993 است.

ادامه

عیب‌یابی DNS در DirectAdmin – وقتی named اجرا می‌شود اما دامنه resolve نمی‌شود

گاهی سرویس named (BIND) روی سرور اجرا می‌شود اما دامنه‌ها resolve نمی‌شوند یا از بیرون پاسخ DNS دریافت نمی‌شود. این مقاله یک راهنمای کامل برای بررسی listen، فایروال، تنظیمات named.conf، propagation، رکوردهای اشتباه، مشکلات ساب‌دامین، resolv.conf و خطاهای رایج DNS در DirectAdmin است.

ادامه

مدیریت رکوردهای DNS در DirectAdmin – راهنمای کامل، کاربردی و حرفه‌ای

DirectAdmin ابزارهای قدرتمندی برای مدیریت DNS ارائه می‌دهد: از کاهش TTL برای جلوگیری از downtime، تا ساخت رکوردهای SRV، فعال‌سازی DNSSEC، مدیریت delegation ساب‌دامین‌ها، افزودن خودکار TLSA برای DANE و حتی تغییرات گروهی (Mass Update) روی همه دامنه‌ها. این مقاله یک مرجع کامل برای مدیریت حرفه‌ای DNS در DirectAdmin است.

ادامه

DNS و Nameserverها در DirectAdmin – راهنمای کامل، کاربردی و حرفه‌ای

DNS ستون فقرات اینترنت است و وظیفه دارد نام دامنه را به IP تبدیل کند. در DirectAdmin می‌توان Nameserverهای اختصاصی ساخت، DNS را مدیریت کرد، DNS Clustering راه‌اندازی کرد و حتی از DNS خارجی استفاده نمود. این مقاله یک راهنمای جامع برای درک DNS، ساخت ns1/ns2، تنظیم Glue Record، رفع خطاها و مدیریت حرفه‌ای DNS در DirectAdmin است.

ادامه

CustomBuild در DirectAdmin – راهنمای کامل نصب، به‌روزرسانی، پیکربندی و سفارشی‌سازی پیشرفته

CustomBuild ابزار اصلی DirectAdmin برای مدیریت سرویس‌ها و نرم‌افزارهای سرور است. این ابزار وب‌سرور، PHP، دیتابیس، ایمیل، FTP و بسیاری از کامپوننت‌های دیگر را نصب، به‌روزرسانی و پیکربندی می‌کند. به دلیل کامپایل از سورس، CustomBuild انعطاف‌پذیری بسیار بالا، سرعت دسترسی به نسخه‌های جدید و مصرف منابع بهینه را فراهم می‌کند.

ادامه