VitalPBX یک پنل مدیریتی برای ساخت و اداره سانترال مبتنی بر Asterisk است؛ اما چیزی که آن را برای شرکتهای خدمات VoIP، هلدینگها و مجموعههای چندشعبهای جذاب میکند، قابلیت Multi-Tenant آن است. با Multi-Tenant میتوانید چند شرکت را روی یک سرور مدیریت کنید، در حالی که هر شرکت داخلیها، IVR، صف، DID و سطح دسترسی خودش را دارد و حتی دو شرکت میتوانند بدون تداخل، شماره داخلی یکسان مثل 1000 داشته باشند.
نکته مهم قبل از شروع: قابلیت Multi-Tenant در VitalPBX یک Add-on تجاری است. نصب خود VitalPBX بهتنهایی به معنی داشتن چند Tenant مستقل نیست؛ برای ساخت بیش از یک Tenant باید ماژول Multi-Tenant و مجوز مناسب آن را تهیه و فعال کنید.
VitalPBX چیست و چه نقشی بین Linux و Asterisk دارد؟
Asterisk موتور اصلی تلفنی است و تماس، PJSIP، RTP، Dialplan، Queue، Voicemail و Trunk را اجرا میکند. VitalPBX یک لایه مدیریتی روی این موتور میسازد تا بهجای ویرایش مستقیم فایلهای Asterisk، بیشتر کارها از GUI انجام شوند.
معماری ساده یک نصب جدید را میتوان اینطور تصور کرد:
Internet / SIP Provider
|
v
Firewall
|
v
VitalPBX GUI
|
v
Asterisk 20
/ \
PJSIP RTP
| |
Phones Voice Media
در حالت Multi-Tenant، یک لایه دیگر اضافه میشود: Tenant A، Tenant B و Tenant C هرکدام محیط مدیریتی جدا دارند، اما زیرساخت اصلی Asterisk و منابع VPS مشترک است.
وضعیت VitalPBX در اکتبر ۲۰۲۶؛ نسخه فعلی چیست؟
طبق Changelog رسمی، نسخه فعلی شاخه VitalPBX 4.5 در تاریخ بررسی این مقاله 4.5.4 R2 است که ۱۵ اکتبر ۲۰۲۶ منتشر شده است. این Release بیشتر روی اصلاحات Call Flow، Provisioning، Geo Firewall و پایداری Queue تمرکز دارد.
نسخه 4.5.4 R1 که پیش از آن منتشر شد، Asterisk را به 20.21.0 ارتقا داد. در R2 تغییر جدیدی برای Major/Minor Version هسته Asterisk اعلام نشده است؛ بنابراین هسته فعلی این شاخه همچنان Asterisk 20.21.0 است.
| جزء | وضعیت فعلی | نکته عملی |
|---|---|---|
| VitalPBX | 4.5.4 R2 | Release فعلی شاخه 4.5 در ۱۵ اکتبر ۲۰۲۶ |
| سیستمعامل نصب جدید | Debian 12 64-bit | راهنمای نصب جدید VPS بر همین پایه است |
| Asterisk | 20.21.0 | هسته تلفنی فعلی VitalPBX 4.5.4 |
| Multi-Tenant | Add-on تجاری | برای بیش از یک Tenant نیازمند License است |
| SIP Stack پیشنهادی | PJSIP | برای نصبهای جدید روی PJSIP طراحی کنید |
درباره Asterisk 20: شاخه 20 یک نسخه LTS است و در ۱۹ اکتبر ۲۰۲۶ به انتهای دوره Full Support خود میرسد؛ دوره Security Fix آن تا ۱۹ اکتبر ۲۰۲۷ ادامه دارد. بنابراین در پروژه بلندمدت باید Roadmap آینده VitalPBX برای مهاجرت از Asterisk 20 را هم زیر نظر داشته باشید و Asterisk را خارج از Repository و سازگاری رسمی VitalPBX بهصورت دستی ارتقا ندهید.
Multi-Tenant در VitalPBX واقعاً چه کاری انجام میدهد؟
Multi-Tenant یعنی چند شرکت از یک نصب VitalPBX استفاده کنند، اما تنظیمات آنها از نظر مدیریتی از یکدیگر جدا باشد. Tenant A میتواند Extension 1000 داشته باشد و Tenant B نیز Extension 1000 داشته باشد، بدون اینکه این دو شماره با هم تداخل کنند.
VitalPBX برای این جداسازی از Prefix داخلی در ساختار Tenant استفاده میکند. Tenant Administrator نیز فقط بخشهای مجاز Tenant خودش را میبیند و به Main Tenant دسترسی ندارد.
در Multi-Tenant میتوانید برای هر شرکت محدودیت تعیین کنید؛ از جمله تعداد Extension، Trunk، Queue، IVR، Conference Bridge و حتی تعداد تماسهای همزمان خروجی.
آیا هر Tenant باید Trunk جدا داشته باشد؟
خیر. VitalPBX اجازه میدهد Trunk و Outbound Route را روی Main Tenant بسازید و آن را با Tenantها به اشتراک بگذارید. این قابلیت برای شرکتهای ارائهدهنده VoIP یا هلدینگهایی که چند شرکت از یک Carrier مشترک استفاده میکنند بسیار کاربردی است.
همچنین میتوان برای هر Tenant DIDهای ورودی مشخص تعریف کرد تا تماس ورودی مستقیماً وارد همان شرکت شود.
Multi-Tenant رایگان نیست؛ قبل از طراحی به License توجه کنید
ماژول Multi-Tenant از مسیر زیر نصب میشود:
Admin
→ Add-Ons
→ Add-Ons
→ Multi-Tenant
بعد از نصب و فعالسازی، منوی زیر ظاهر میشود:
Admin
→ Multi-Tenant
→ Tenants
خود VitalPBX تصریح میکند برای ساخت بیش از یک Tenant باید License تجاری Multi-Tenant داشته باشید. نوع مجوز و تعداد Tenantهای مجاز را قبل از فروش سرویس یا انتقال چند شرکت به یک VPS مشخص کنید.
چند شرکت را میتوان روی یک VPS قرار داد؟
عدد ثابت و مطمئنی بر اساس «تعداد Tenant» وجود ندارد. بار واقعی را این موارد تعیین میکنند: تعداد تماس همزمان، Recording، Transcoding، Queue، Call Center، WebRTC، تعداد Endpointهایی که همزمان Register میشوند و حجم CDR.
VitalPBX برای Multi-Tenant Plan توصیه میکند از حدود ۱۰۰ Tenant روی یک Server عبور نکنید. برای این سقف، مستند Vendor مشخصات سختافزاری بسیار بالایی در حد 16 Core با 3.2GHz، حداقل 32GB RAM و 4TB Storage ذکر کرده است.
این اعداد «حداقل VPS برای شروع» نیستند؛ مرجع Vendor برای سناریوی سنگین و سقف توصیهشدهاند. برای چند شرکت کوچک باید بر اساس Concurrent Call و Recording سایز کنید.
| عامل | اثر روی VPS |
|---|---|
| Extension ثبتشده ولی بدون تماس | مصرف کم تا متوسط RAM/Signaling |
| تماس همزمان | CPU و Network |
| Transcoding Codec | CPU بالا |
| Call Recording | Disk I/O و Storage |
| Queue و Call Center | CPU، Database و Asterisk Events |
| چندصد Phone که همزمان Re-register شوند | PJSIP Task Load و CPU |
| CDR طولانیمدت | Database و Disk |
مرحله ۱: VPS تازه با Debian 12 بسازید
راهنمای نصب جدید VitalPBX برای VPS از یک Debian 12 Minimal 64-bit شروع میشود. بهتر است سرور تازه باشد و کنترلپنل میزبانی، Apache/Nginx سفارشی، MariaDB جدا یا PBX دیگری از قبل روی آن نصب نشده باشد.
قبل از نصب:
cat /etc/os-release
hostname -f
ip addr
برای PBX بهتر است Public IP پایدار داشته باشید. اگر سرور پشت NAT است، NAT و Port Forwarding باید قبل از انتقال کاربران Production طراحی شوند.
مرحله ۲: VitalPBX 4.5 را با Installer رسمی نصب کنید
راهنمای رسمی جدید VitalPBX برای Debian 12 این Script را ارائه میکند:
wget https://repo.vitalpbx.com/vitalpbx/v4.5/pbx_installer.sh
chmod +x pbx_installer.sh
./pbx_installer.sh
Script باید با دسترسی root اجرا شود. در پایان نصب، Server Reboot میشود و سپس Wizard اولیه از طریق مرورگر در دسترس قرار میگیرد.
نسخه Asterisk را بعد از نصب بررسی کنید
asterisk -V
نسخه VitalPBX را نیز از منوی User Menu → About بررسی کنید؛ خود مستند VitalPBX این قسمت را محل نمایش Version و License Type معرفی میکند.
مرحله ۳: Multi-Tenant را نصب و اولین شرکت را بسازید
پس از نصب Add-on و فعالشدن License، به این مسیر بروید:
Admin
→ Multi-Tenant
→ Tenants
→ Add Tenant
برای هر Tenant این موارد مهماند:
🔹 Name و Description برای شناسایی شرکت.
🔹 Prefix یکتا برای جلوگیری از تداخل Device و Trunkها.
🔹 Tenant Administrator با دسترسی محدود.
🔹 سقف Extension، Queue، IVR، Trunk و Conference.
🔹 محدودیت Concurrent Calls.
🔹 DIDهای ورودی اختصاصی.
🔹 Outbound Profile یا Trunk اختصاصی.
Prefix یکی از مهمترین بخشهاست. به کمک آن، Tenant A و Tenant B میتوانند هر دو داخلی 1000 داشته باشند، اما Asterisk در لایه داخلی آنها را از هم جدا نگه میدارد.
مرحله ۴: Trunk و تماسهای ورودی/خروجی را طراحی کنید
دو مدل اصلی دارید:
| مدل | کاربرد | مزیت |
|---|---|---|
| Trunk مشترک در Main Tenant | Provider مرکزی برای چند شرکت | مدیریت سادهتر Route و Carrier |
| Trunk جدا برای هر Tenant | هر شرکت Provider مستقل دارد | استقلال بیشتر و Billing سادهتر |
در مدل مشترک، Outbound Routeها را روی Main Tenant ایجاد میکنید و با Route Selection/Outbound Profile به Tenantها میدهید. برای تماس ورودی نیز DID هر شرکت در Tenant Definition مشخص میشود تا تماس مستقیماً به Tenant درست برسد.
اگر دو Tenant باید با هم تماس داخلی داشته باشند، VitalPBX قابلیت Tenant Trunk دارد و ارتباط میتواند داخل همان Server انجام شود، بدون ساخت PJSIP Trunk شبکهای سنتی.
مرحله ۵: NAT و پورتها را قبل از تحویل به کاربران تنظیم کنید
اگر VPS Public IP مستقیم دارد، طراحی NAT سادهتر است. اگر PBX پشت Router قرار دارد، در PJSIP Settings باید External Media Address، External Signal Address و Local Net را دقیق تنظیم کنید.
پورتهای پایهای که مستند VitalPBX برای PJSIP و RTP ذکر میکند:
| سرویس | پورت رایج | پروتکل |
|---|---|---|
| PJSIP | 5060-5061 | UDP/TCP |
| RTP | 10000-20000 | UDP |
| HTTPS | 443 | TCP |
| SSH | 22 | TCP |
| Asterisk HTTP/WSS | 8088-8089 | بسته به قابلیت فعال |
این جدول به معنی بازکردن همه پورتها برای کل اینترنت نیست. Trunk Provider با IP ثابت را روی همان Source IP محدود کنید و پنل مدیریت را ترجیحاً از VPN یا IPهای مدیریتی در دسترس قرار دهید.
مرحله ۶: امنیت Multi-Tenant را مثل یک VPS معمولی نبینید
در یک PBX چندشرکتی، نفوذ به Main Tenant میتواند چند مشتری را همزمان درگیر کند. بنابراین Scope امنیت بزرگتر از یک سانترال تکشرکتی است.
حداقل این موارد را اجرا کنید:
🔹 Firewall داخلی VitalPBX همیشه فعال باشد.
🔹 IPهای مدیریت و Providerهای ثابت Whitelist شوند.
🔹 Fail2Ban برای SSH، Web Login و Registration فعال و مانیتور شود.
🔹 Root Login مستقیم با Password از اینترنت محدود یا حذف شود.
🔹 برای Tenant Administratorها Password یکتا و قوی استفاده شود.
🔹 TLS/SRTP برای Endpointهایی که پشتیبانی میکنند فعال شود.
🔹 API Keyها به Tenant و Permission موردنیاز محدود شوند.
🔹 Recordingها بدون کنترل دسترسی عمومی نشوند.
VitalPBX در Best Security Practices استفاده همزمان از Firewall و Fail2Ban را توصیه میکند و در معماری حساستر، قرار دادن PBX پشت Firewall یا SBC را هم پیشنهاد میدهد.
مطلب مرتبط: برای سختسازی خود VPS، کلید SSH، غیرفعالکردن Root Login و تنظیم Fail2Ban را جداگانه انجام دهید.
چگونه SSH را امن کنیم؟ از حذف Root Login تا SSH Key و Fail2Ban
مرحله ۷: TLS را برای Signaling و SRTP را برای Media جدا ببینید
TLS فقط SIP Signaling را رمز میکند. برای رمزشدن Voice Media باید Media Encryption مثل SRTP نیز فعال باشد.
در VitalPBX میتوانید یک PJSIP Device Profile با Transport روی TLS بسازید و Media Encryption را روی SDES قرار دهید. سپس Certificate معتبر از بخش Certificates تعریف میشود.
قبل از فعالسازی سراسری TLS، مدل Phoneها را بررسی کنید. نسخه 4.5.4 R1 برای سازگاری برخی تلفنهای قدیمی پشتیبانی TLS 1.0/1.1 را هم اضافه کرده، اما در شبکه جدید بهتر است تا جای ممکن از نسخههای مدرن TLS استفاده کنید و Legacy TLS را فقط برای Device واقعاً قدیمی نگه دارید.
مرحله ۸: Backup را طوری بسازید که خرابی خود VPS آن را از بین نبرد
VitalPBX از مسیر Admin → Tools → Backup and Restore اجازه ساخت Backup Profile میدهد. میتوانید Configuration، CDR، Call Recordings، Voicemail، Fax و داده Add-onها را وارد Backup کنید.
اما Backup روی همان Disk سرور، Backup واقعی در برابر خرابی VPS نیست.
برای یک سیستم Multi-Tenant پیشنهاد بهتر:
🔹 Backup تنظیمات بهصورت زمانبندیشده.
🔹 انتقال Backup به Storage یا Server دوم.
🔹 نگهداری Recordingهای حجیم روی NAS/SAN یا Copy جدا.
🔹 تست Restore دورهای روی VPS آزمایشی.
🔹 ثبت نسخه VitalPBX مربوط به هر Backup.
مستند VitalPBX نیز بهطور خاص هشدار میدهد Recordingها میتوانند فضای زیادی بگیرند و پیشنهاد میکند آنها را روی Storage جدا نگه دارید یا از مسیر /var/spool/asterisk/monitor با روش جداگانه منتقل کنید.
حجم Recordingها را قبل از Backup ببینید
du -sh /var/spool/asterisk/monitor
مرحله ۹: برای هر Tenant یک Test Plan داشته باشید
صرف اینکه Tenant Dashboard باز شود به معنی آمادهبودن سانترال نیست. حداقل یک Extension واقعی از هر شرکت را تست کنید.
| تست | چه چیزی را ثابت میکند؟ |
|---|---|
| Registration هر Tenant | Prefix، PJSIP، Password و Device درست است |
| تماس داخلی در همان Tenant | Dialplan داخلی سالم است |
| شماره تکراری بین دو Tenant | جداسازی Multi-Tenant درست کار میکند |
| Outbound | Outbound Profile و Trunk درست است |
| Inbound DID | تماس به Tenant درست Route میشود |
| Caller ID | Tenant نمیتواند CID غیرمجاز ارسال کند |
| Concurrent Call Limit | سقف تماس Tenant اعمال میشود |
| Recording | فایل، Permission و دسترسی Tenant درست است |
| Backup/Restore | Disaster Recovery واقعاً قابل اجراست |
VitalPBX Multi-Tenant برای چه کسی مناسب نیست؟
اگر فقط یک شرکت کوچک با چند داخلی دارید و جداسازی Tenant لازم نیست، خرید Multi-Tenant پیچیدگی و هزینه اضافه ایجاد میکند. همان نصب Single-Tenant سادهتر است.
اگر هر مشتری باید Kernel، Asterisk Version، Moduleهای سیستم و Maintenance Window کاملاً مستقل داشته باشد، Multi-Tenant واقعی روی یک Instance شاید انتخاب مناسب شما نباشد؛ در این سناریو چند VPS یا Multi-Instance مجزا Isolation بیشتری میدهد.
همچنین اگر مشتریان شما بار Call Center بسیار متفاوت دارند، قرار دادن همه آنها روی یک Asterisk Instance میتواند Resource Planning را دشوار کند. Tenant Separation مدیریتی است، نه جداسازی کامل Kernel/VM.
قبل از Production این پنج تصمیم را قطعی کنید
🔹 چند Tenant واقعی دارید و تا یک سال آینده چند Tenant میشوند؟
🔹 Peak Concurrent Calls کل سرور چقدر است؟
🔹 Trunkها مرکزی هستند یا هر Tenant Carrier جدا دارد؟
🔹 Recordingها روی همان VPS میمانند یا Storage جدا دارید؟
🔹 اگر VPS از دسترس خارج شد، RTO و روش Restore شما چیست؟
میخواهید VitalPBX چندشرکتی را روی VPS راهاندازی کنید؟
برای Multi-Tenant بهتر است قبل از خرید سرور، تعداد Tenantها، تماس همزمان، Recording، نوع Trunk و نیاز به TLS مشخص شود. سپس یک VPS آزمایشی بسازید، دو Tenant نمونه ایجاد کنید و Registration، DID، Outbound Route و Backup را قبل از انتقال Production تست کنید.
ایرانیکاسرور میتواند برای تأمین VPS و نصب و کانفیگ VitalPBX، Asterisk، PJSIP، Firewall و Multi-Tenant به شما کمک کند.
تماس با پشتیبانی ایرانیکاسرور: 021-91302467
پرسشهای رایج
VitalPBX چیست؟
VitalPBX یک پنل مدیریت IP-PBX مبتنی بر Asterisk است که داخلی، Trunk، IVR، Queue، Recording، PJSIP و بسیاری از قابلیتهای تلفنی را از طریق رابط وب مدیریت میکند.
نسخه فعلی VitalPBX در اکتبر ۲۰۲۶ چیست؟
طبق Changelog رسمی، نسخه فعلی شاخه 4.5 برابر 4.5.4 R2 است که ۱۵ اکتبر ۲۰۲۶ منتشر شده است.
VitalPBX 4.5.4 از چه نسخه Asterisk استفاده میکند؟
نسخه 4.5.4 R1 هسته را به Asterisk 20.21.0 ارتقا داد و در R2 تغییر دیگری برای نسخه Asterisk اعلام نشده است.
آیا Multi-Tenant در VitalPBX رایگان است؟
خیر. ماژول Multi-Tenant یک Add-on تجاری است و برای ایجاد بیش از یک Tenant باید License مناسب آن فعال شود.
چند Tenant روی یک VitalPBX میتوان ساخت؟
Vendor برای یک Server تا حدود ۱۰۰ Tenant را توصیه میکند، اما ظرفیت واقعی به CPU، RAM، Storage، تعداد تماس همزمان، Recording و Call Center بستگی دارد.
آیا دو Tenant میتوانند داخلی 1000 داشته باشند؟
بله. VitalPBX با Prefix داخلی Tenantها را از هم جدا میکند و میتوانید Numbering Plan یکسان در شرکتهای مختلف داشته باشید.
آیا Trunk باید برای هر شرکت جدا ساخته شود؟
نه الزاماً. میتوانید Trunk و Outbound Route را روی Main Tenant بسازید و با Outbound Profile بین Tenantها به اشتراک بگذارید، یا برای هر Tenant Trunk مستقل تعریف کنید.
Backup VitalPBX شامل Recording هم میشود؟
در Backup Profile میتوان Call Recording را انتخاب کرد، اما بهدلیل حجم زیاد، مستند VitalPBX برای Recordingهای بزرگ Storage یا انتقال جداگانه را توصیه میکند.
جمعبندی
VitalPBX برای ساخت یک سانترال Asterisk روی VPS گزینهای مناسب است، مخصوصاً زمانی که GUI مدیریتی، PJSIP، Provisioning، Queue و قابلیتهای تجاری را در یک محیط میخواهید.
برای سناریوی چندشرکتی، ویژگی کلیدی Multi-Tenant است؛ اما این قابلیت تجاری است و باید قبل از طراحی هزینه License و ظرفیت Tenantها مشخص شود. مزیت اصلی آن این است که هر شرکت محیط جدا دارد، Numbering Plan میتواند تکراری باشد و Trunkها نیز در صورت نیاز از Main Tenant به اشتراک گذاشته شوند.
در اکتبر ۲۰۲۶، مسیر جدید نصب بر Debian 12 و VitalPBX 4.5.4 R2 است و هسته فعلی Asterisk 20.21.0 محسوب میشود. برای Production، Firewall، Fail2Ban، TLS/SRTP و Backup خارج از همان VPS را از ابتدا جزو معماری در نظر بگیرید، نه کارهایی که بعد از راهاندازی انجام شوند.
برای نصب VitalPBX Multi-Tenant روی VPS کمک میخواهید؟
اگر تعداد شرکتها، داخلیها، تماس همزمان و SIP Providerها مشخص باشند، میتوان VPS را درست سایز کرد و قبل از Production یک محیط آزمایشی با دو Tenant، DID، Trunk، TLS و Backup ساخت.
تماس با پشتیبانی ایرانیکاسرور: 021-91302467






دیدگاهها (۰)