اگر چند داخلی FusionPBX ناگهان از رجیستر خارج میشوند، پنل وب برای یک دفتر باز نمیشود یا حتی SSH از همان IP قطع میشود، قبل از تغییر SIP Password و Firewall سراغ Fail2Ban بروید. در FusionPBX بعضی Jailها از Action نوع allports استفاده میکنند؛ یعنی وقتی یک IP Ban شود، ممکن است فقط SIP مسدود نشود و همان IP دسترسی به وب، SSH و رجیستر تلفنها را هم از دست بدهد.
راهحل امن: Fail2Ban را خاموش نکنید و maxretry را بیدلیل بسیار زیاد نکنید. اول Jail واقعی را پیدا کنید، Log Source را تأیید کنید، IP را فقط از همان Jail Unban کنید و در صورت نیاز فقط IP ثابت و قابلاعتماد را به Ignore List مناسب اضافه کنید.
Fail2Ban در FusionPBX دقیقاً چه کاری انجام میدهد؟
Fail2Ban فایلهای Log را میخواند، الگوهای خطا را با Filterهای Regex تطبیق میدهد و اگر یک IP در بازه زمانی مشخص بیشتر از حد مجاز خطا ایجاد کند، Action مربوط به Jail اجرا میشود.
به زبان ساده:
FreeSWITCH / NGINX / SSH log
|
v
Fail2Ban filter
|
v
maxretry failures inside findtime
|
v
BAN
|
v
iptables / nftables action
در Installer رسمی FusionPBX، Fail2Ban از قبل نصب و پیکربندی میشود، اما خود پروژه نیز تأکید میکند تنظیمات پیشفرض ممکن است برای تمام معماریها مناسب نباشند و باید بر اساس مدل امنیتی شما بازبینی شوند.
اول مشخص کنید واقعاً Fail2Ban شما را Ban کرده است
اگر یک IP خاص نمیتواند وارد پنل شود یا Phoneها از همان محل Register نمیشوند، مستقیم Config را تغییر ندهید. ابتدا سرویس و Jailها را ببینید.
وضعیت خود Fail2Ban:
systemctl status fail2ban
fail2ban-client ping
fail2ban-client status
خروجی fail2ban-client status نام Jailهای فعال را نشان میدهد. بعد Jail مشکوک را جدا ببینید:
fail2ban-client status freeswitch-ip
fail2ban-client status auth-challenge-ip
fail2ban-client status sip-auth-failure
در انتهای خروجی دنبال Banned IP list بگردید.
با Fail2Ban جدید میتوانید خود IP را هم جستوجو کنید
در نسخههای جدید Fail2Ban، دستور زیر Jailهایی را که یک IP در آنها Ban شده نشان میدهد:
fail2ban-client banned 198.51.100.25
اگر نسخه نصبشده این Subcommand را ندارد، همان status Jailهای فعال روش سازگارتری است.
کدام Jail در FusionPBX داخلیها را Ban میکند؟
فایل فعلی Installer رسمی FusionPBX چند Jail مهم دارد. همه آنها الزاماً فعال نیستند؛ بعضی برای افزایش امنیت باید دستی فعال شوند.
| Jail | Log Source | پیشفرض Installer فعلی | کاربرد |
|---|---|---|---|
| ssh | /var/log/auth.log | فعال | خطاهای ورود SSH |
| freeswitch | /var/log/freeswitch/freeswitch.log | غیرفعال | خطاهای عمومی FreeSWITCH |
| freeswitch-acl | /var/log/freeswitch/freeswitch.log | غیرفعال | ACL Failureها |
| freeswitch-ip | /var/log/freeswitch/freeswitch.log | غیرفعال | Registration مستقیم به IP / الگوهای خاص SIP |
| auth-challenge-ip | /var/log/freeswitch/freeswitch.log | غیرفعال | SIP Auth Challenge مشکوک |
| sip-auth-challenge | /var/log/freeswitch/freeswitch.log | غیرفعال | تعداد زیاد Challenge |
| sip-auth-failure | /var/log/freeswitch/freeswitch.log | غیرفعال | Authentication Failureهای SIP |
| fusionpbx | /var/log/auth.log | فعال | Login/Provisioning خطادار پنل |
| fusionpbx-mac | /var/log/syslog | فعال | Provisioning و MAC-related abuse |
| nginx-404 | /var/log/nginx/access*.log | فعال | درخواستهای 404 پرتعداد |
| nginx-dos | /var/log/nginx/access*.log | فعال | درخواست غیرعادی پرتعداد وب |
نکته بسیار مهم این است که Jailهای فعلی FusionPBX در فایل Installer از Action نوع iptables-allports استفاده میکنند. یعنی Ban میتواند روی تمام Portها اثر بگذارد، نه فقط 5060. به همین دلیل یک SIP Failure ممکن است از دید کاربر شبیه «کل VPS من را بسته» دیده شود.
چرا یک داخلی اشتباه میتواند کل دفتر را از FusionPBX قطع کند؟
فرض کنید ۲۰ تلفن در یک شرکت پشت مودم هستند و همه با یک Public IP به FusionPBX میرسند:
Phone 1001 ─┐
Phone 1002 ─┤
Phone 1003 ─┤
Phone 1004 ─┤
├─ NAT ─ 198.51.100.25 ─ Internet ─ FusionPBX
Phone 1019 ─┤
Phone 1020 ─┘
اگر فقط Phone 1007 رمز قدیمی داشته باشد و پشتسرهم Authentication Failure تولید کند، Fail2Ban IP داخلی آن Phone را نمیبیند؛ Source واقعی در اینترنت همان 198.51.100.25 است.
اگر Jail آن IP را Ban کند، تمام تلفنهای آن دفتر از همان Public IP آسیب میبینند. اگر Action هم allports باشد، مدیر شرکت ممکن است همزمان پنل وب یا SSH را نیز از همان محل از دست بدهد.
freeswitch-ip و auth-challenge-ip چرا اینقدر حساساند؟
در Jail فعلی Installer، هر دو Rule بهصورت پیشفرض غیرفعال هستند، اما Documentation رسمی FusionPBX برای سختترکردن امنیت پیشنهاد میکند آنها را فعال کنید.
تنظیم فعلی آنها بسیار سختگیرانه است:
[freeswitch-ip]
maxretry = 1
findtime = 60
bantime = 86400
[auth-challenge-ip]
maxretry = 1
findtime = 60
bantime = 86400
یعنی یک Match میتواند IP را برای یک روز Ban کند. این برای مقابله با Scannerهایی که مستقیم Public IP را هدف میگیرند مفید است، اما اگر Phoneهای قانونی شما به IP خام سرور Register شوند، ممکن است خودتان Trigger ایجاد کنید.
خود FusionPBX توصیه میکند Phoneها با FQDN رجیستر شوند، نه Public IP، چون بیشتر Scanهای خودکار Public IP را هدف میگیرند و Jailهای freeswitch-ip و auth-challenge-ip نیز برای همین مدل امنیتی طراحی شدهاند.
راه بهتر از خاموشکردن Jail: برای Phoneها یک FQDN واقعی مثل pbx.example.com تعریف کنید و Registrar را روی FQDN بگذارید. سپس Jailهای امنیتی را نگه دارید و فقط Sourceهای واقعاً قابلاعتماد را Whitelist کنید.
مرحله ۱: IP Banشده را بدون Restart کردن همه Fail2Ban آزاد کنید
اگر میدانید Jail کدام است، فقط همان IP را از همان Jail آزاد کنید:
fail2ban-client set auth-challenge-ip unbanip 198.51.100.25
یا برای Jail دیگر:
fail2ban-client set freeswitch-ip unbanip 198.51.100.25
در Fail2Ban جدید، اگر میخواهید IP از تمام Jailها Unban شود:
fail2ban-client unban 198.51.100.25
Restart کردن Fail2Ban برای Unban کردن یک IP راهحل خوبی نیست؛ چون ممکن است تمام Banهای مهاجمان واقعی را هم پاک کند.
مرحله ۲: قبل از Whitelist کردن، ببینید IP چرا Ban شده است
Log اصلی خود Fail2Ban:
grep "198.51.100.25" /var/log/fail2ban.log
ممکن است چیزی شبیه این ببینید:
Ban 198.51.100.25
Found 198.51.100.25
auth-challenge-ip
بعد به Log Source همان Jail بروید. برای Jailهای SIP/FreeSWITCH:
grep "198.51.100.25" /var/log/freeswitch/freeswitch.log | tail -n 50
برای پنل FusionPBX:
grep "198.51.100.25" /var/log/auth.log | tail -n 50
برای NGINX:
grep "198.51.100.25" /var/log/nginx/access.log | tail -n 50
مرحله ۳: Filter را با fail2ban-regex تست کنید
اگر یک IP قانونی مرتب Ban میشود، شاید Log واقعی با Regex Filter به شکلی Match میشود که انتظارش را نداشتید. قبل از تغییر maxretry، Filter را روی Log واقعی تست کنید.
برای جلوگیری از پردازش فایل بسیار بزرگ، نمونه کوچک بسازید:
tail -n 5000 /var/log/freeswitch/freeswitch.log > /tmp/freeswitch-sample.log
بعد Filter را تست کنید:
fail2ban-regex /tmp/freeswitch-sample.log /etc/fail2ban/filter.d/auth-challenge-ip.conf
این خروجی مشخص میکند چند خط Match شده و کدام IPها توسط Regex دیده شدهاند.
مرحله ۴: IgnoreIP را امن طراحی کنید، نه گسترده
ignoreip به Fail2Ban میگوید یک IP یا Network را هیچوقت Ban نکند. این ابزار بسیار مفید است، اما اگر اشتباه استفاده شود میتواند عملاً Brute-force را برای یک شبکه آزاد کند.
Fail2Ban بهصورت رسمی IP، CIDR و FQDN را در ignoreip پشتیبانی میکند.
چه IPهایی مناسب Whitelist هستند؟
🔹 IP ثابت مدیریت خودتان، ترجیحاً فقط یک /32.
🔹 IP ثابت دفتر که چند Phone قانونی پشت NAT دارد.
🔹 IP یا CIDR رسمی SIP Provider که از خود Provider تأیید شده است.
🔹 VPN Management Subnet خصوصی در صورتی که فقط مدیران به آن دسترسی دارند.
چه چیزهایی را Whitelist نکنیم؟
🔹 0.0.0.0/0 یا هر Range بسیار بزرگ اینترنتی.
🔹 کل ISP فقط برای اینکه IP کاربران Dynamic است.
🔹 IP ناشناختهای که فقط یک بار Ban شده و مالک آن را نمیشناسید.
🔹 یک Carrier Range حدسی که از Provider تأیید نشده است.
Global IgnoreIP یا فقط Jail مخصوص SIP؟
این تصمیم روی سطح امنیت اثر زیادی دارد.
اگر IP ثابت دفتر را در [DEFAULT] قرار دهید، Fail2Ban آن را در همه Jailها Ignore میکند؛ یعنی اگر Credential پنل FusionPBX از همان IP مورد حمله قرار بگیرد، Jail وب هم آن IP را Ban نخواهد کرد.
برای IP مدیریتی کاملاً قابلاعتماد، Global Ignore قابلقبول است:
[DEFAULT]
ignoreip = 127.0.0.1/8 ::1 198.51.100.25
اما برای SIP Provider یا یک دفتر کار بهتر است Ignore را فقط روی Jailهای SIP موردنیاز اعمال کنید:
[freeswitch-ip]
ignoreip = 127.0.0.1/8 ::1 198.51.100.25
[auth-challenge-ip]
ignoreip = 127.0.0.1/8 ::1 198.51.100.25
[sip-auth-failure]
ignoreip = 127.0.0.1/8 ::1 198.51.100.25
با این روش همان IP هنوز در برابر SSH و Login Brute-force پنل محافظت میشود.
فایل تغییرات محلی را کجا بسازیم تا Upgrade امنتر باشد؟
مستند خود FusionPBX برای Whitelist به jail.conf اشاره میکند، اما Fail2Ban upstream توصیه میکند فایلهای اصلی *.conf را دستکاری نکنید و Overrideهای محلی را در jail.local یا jail.d/*.local بگذارید.
برای اینکه تنظیم اختصاصی شما از فایل Installer جدا باشد، یک فایل Local Override بسازید:
nano /etc/fail2ban/jail.d/99-fusionpbx-local.local
نمونه برای یک دفتر ثابت:
[freeswitch-ip]
ignoreip = 127.0.0.1/8 ::1 198.51.100.25
[auth-challenge-ip]
ignoreip = 127.0.0.1/8 ::1 198.51.100.25
ترتیب Parse در Fail2Ban به این شکل است: jail.conf، سپس فایلهای jail.d/*.conf، بعد jail.local و در پایان jail.d/*.local. بنابراین فایل .local شما برای Override انتخاب مناسبی است.
مرحله ۵: قبل از Reload، Config را تست کنید
بعد از هر تغییر:
fail2ban-client -t
اگر Config سالم بود:
fail2ban-client reload
سپس Ignore List Jail را ببینید:
fail2ban-client get freeswitch-ip ignoreip
fail2ban-client get auth-challenge-ip ignoreip
اگر IP از قبل Ban بوده، اضافهکردن آن به Ignore List لزوماً Ban فعلی را پاک نمیکند؛ بعد از Reload همان IP را Unban کنید.
آیا maxretry و bantime را تغییر دهیم؟
فقط زمانی که مطمئن شدهاید Pattern واقعی ترافیک قانونی با Threshold فعلی سازگار نیست.
مثلاً Jail عمومی sip-auth-failure در Installer فعلی چنین Thresholdی دارد:
maxretry = 6
findtime = 60
bantime = 7200
اگر یک Phone سالم هر چند ثانیه Credential اشتباه میفرستد، بالا بردن maxretry مشکل واقعی را پنهان میکند. اول Password، Realm، Domain و Provisioning Device را اصلاح کنید.
برای Scannerهای واقعی حتی میتوانید Ban را طولانیتر کنید؛ Fail2Ban قابلیت bantime.increment هم دارد تا IPهای تکرارشونده هر بار مدت بیشتری Ban شوند. این گزینه را برای سختترکردن امنیت مهاجمان استفاده کنید، نه برای جبران Config اشتباه داخلیها.
اگر IP کاربران Dynamic است چه کنیم؟
Whitelist کردن یک Range بزرگ ISP راهحل امنی نیست. گزینههای بهتر:
🔹 Phoneها از FQDN واقعی FusionPBX استفاده کنند.
🔹 برای مدیریت از VPN استفاده کنید و فقط Subnet همان VPN را Ignore کنید.
🔹 اگر دفتر Dynamic IP دارد، Dynamic DNS از نظر Fail2Ban قابل استفاده است، اما IP ثابت یا VPN قابلپیشبینیتر است.
🔹 اگر تعداد زیادی Remote Phone دارید، Threshold Jail را بر اساس Log واقعی تنظیم کنید نه با Whitelist گسترده.
مستند FusionPBX نیز به امکان Whitelist کردن Dynamic DNS اشاره میکند، اما در محیط Production بهتر است به DNS Update، TTL و زمان Resolution توجه داشته باشید.
iptables یا nftables؛ از کجا بفهمیم Ban واقعاً کجا اعمال شده است؟
مستند فعلی FusionPBX میگوید Installer Debian بهصورت پیشفرض iptables را نصب میکند، اما مسیر nftables نیز پشتیبانی میشود. اگر nftables انتخاب شده باشد، Jailهای Fail2Ban از Action نوع nftables-allports استفاده میکنند.
برای iptables:
iptables -L -n -v
برای nftables:
nft list ruleset
اما برای مدیریت Banها بهتر است همچنان از fail2ban-client استفاده کنید؛ حذف دستی Rule از Firewall میتواند State داخلی Fail2Ban را با Firewall ناهماهنگ کند.
Brute-force واقعی را چطور از False Positive تشخیص دهیم؟
| نشانه | احتمال بیشتر |
|---|---|
| صدها Username مختلف از یک IP | Scanner / Brute-force |
| REGISTER به Extensionهای ناموجود | Scanner |
| User-Agentهای عجیب یا SIP Scanner | حمله خودکار |
| فقط یک Extension واقعی با Password قدیمی | Config اشتباه Phone |
| Ban درست بعد از تغییر رمز Extension | Phone/Provisioning هنوز Secret قدیمی دارد |
| همه Phoneهای یک دفتر همزمان قطع میشوند | Public NAT IP آن دفتر Ban شده است |
| پنل و SSH هم از همان دفتر قطع میشوند | Action allports محتمل است |
سناریو ۱: بعد از تغییر Password یک داخلی، کل دفتر Ban شده است
این سناریو بسیار رایج است. Password را در FusionPBX تغییر دادهاید اما Phone هنوز Credential قبلی را دارد. Device چند بار REGISTER میزند و Public IP دفتر Ban میشود.
روش درست:
🔹 Phone مشکلدار را موقتاً از شبکه جدا کنید یا Account را Disable کنید.
🔹 Jail واقعی را از /var/log/fail2ban.log پیدا کنید.
🔹 Password روی Phone/Provisioning را اصلاح کنید.
🔹 Public IP دفتر را از همان Jail Unban کنید.
🔹 فقط اگر IP ثابت و دفتر قابلاعتماد است، IgnoreIP محدود تعریف کنید.
سناریو ۲: Phoneها به Public IP رجیستر میشوند و freeswitch-ip آنها را میبندد
مستند رسمی FusionPBX دقیقاً درباره این حالت هشدار میدهد. اگر freeswitch-ip و auth-challenge-ip را فعال کردهاید، Registration مستقیم به IP میتواند توسط این Ruleها Block شود.
راهحل حرفهای این است که یک A Record بسازید:
pbx.example.com A 203.0.113.10
و Registrar Phoneها را از:
203.0.113.10
به این تغییر دهید:
pbx.example.com
سناریو ۳: SIP Provider Ban شده است
ابتدا مطمئن شوید Source IP واقعاً متعلق به Provider است. Providerهای بزرگ ممکن است چند SBC یا Range داشته باشند.
اگر IP/CIDR رسمی Provider ثابت است، بهجای Global Ignore، فقط Jailهای SIP مربوطه را Override کنید. این کار باعث میشود همان IP هنوز نتواند بدون محدودیت به SSH یا پنل مدیریت حمله کند.
سناریو ۴: پنل FusionPBX باز نمیشود اما SIP سالم است
فقط Jailهای FreeSWITCH را بررسی نکنید. Jailهای fusionpbx، fusionpbx-mac، nginx-404 و nginx-dos میتوانند IP را بهدلیل رفتار وب Ban کنند.
مثلاً:
fail2ban-client status fusionpbx
fail2ban-client status nginx-404
fail2ban-client status nginx-dos
پیکربندی پیشنهادی امن برای یک دفتر با IP ثابت
فرض کنیم دفتر شما IP ثابت 198.51.100.25 دارد و تمام تلفنها از همان NAT خارج میشوند. هدف این است که SIP آن دفتر در برابر False Positive محافظت شود، اما پنل و SSH همچنان Fail2Ban داشته باشند.
فایل:
/etc/fail2ban/jail.d/99-fusionpbx-local.local
محتوا:
[freeswitch-ip]
ignoreip = 127.0.0.1/8 ::1 198.51.100.25
[auth-challenge-ip]
ignoreip = 127.0.0.1/8 ::1 198.51.100.25
[sip-auth-failure]
ignoreip = 127.0.0.1/8 ::1 198.51.100.25
سپس:
fail2ban-client -t
fail2ban-client reload
fail2ban-client set freeswitch-ip unbanip 198.51.100.25
fail2ban-client set auth-challenge-ip unbanip 198.51.100.25
fail2ban-client set sip-auth-failure unbanip 198.51.100.25
در این مدل، دفتر برای Jailهای SIP Whitelist است، اما هنوز Jailهای SSH و FusionPBX Web میتوانند حمله از همان IP را متوقف کنند.
مطلب مرتبط: اگر میخواهید Fail2Ban را در کنار SSH Key، محدودکردن Root Login و سختسازی SSH استفاده کنید، راهنمای امنیت SSH ایرانیکاسرور را هم ببینید.
چگونه SSH را امن کنیم؟ از حذف Root Login تا SSH Key و Fail2Ban
چکلیست عیبیابی FusionPBX Fail2Ban
| مرحله | دستور یا بررسی | هدف |
|---|---|---|
| ۱ | fail2ban-client status | دیدن Jailهای فعال |
| ۲ | status JAIL | دیدن IPهای Banشده |
| ۳ | /var/log/fail2ban.log | پیداکردن Jail عامل Ban |
| ۴ | FreeSWITCH/NGINX/Auth Log | دیدن علت واقعی Trigger |
| ۵ | fail2ban-regex | تأیید Regex Filter |
| ۶ | اصلاح Phone/Password/FQDN | رفع Root Cause |
| ۷ | IgnoreIP محدود | جلوگیری از False Positive بعدی |
| ۸ | fail2ban-client -t | تست Syntax |
| ۹ | fail2ban-client reload | اعمال Config |
| ۱۰ | unbanip | آزادکردن IP فعلی |
اشتباههایی که امنیت FusionPBX را پایین میآورند
🔹 خاموشکردن کامل Fail2Ban فقط چون یک دفتر Ban شده است.
🔹 Whitelist کردن کل اینترنت یا Range بزرگ ISP.
🔹 بالا بردن maxretry بدون بررسی Log.
🔹 Restart کردن Fail2Ban برای پاککردن یک Ban و آزادشدن مهاجمان دیگر.
🔹 حذف دستی Rule از iptables/nftables بدون Fail2Ban Client.
🔹 رجیستر کردن Phoneها با Public IP بهجای FQDN در معماریای که Jailهای IP فعالاند.
🔹 Global Whitelist کردن SIP Provider در حالی که فقط Jailهای SIP باید Ignore شوند.
🔹 نادیدهگرفتن Phone قدیمی که همچنان Password قبلی را Retry میکند.
داخلیهای FusionPBX پشت NAT مرتب Ban میشوند؟
برای تشخیص دقیق، Public IP محل، خروجی fail2ban-client status، بخش مرتبط /var/log/fail2ban.log و چند خط متناظر از /var/log/freeswitch/freeswitch.log را آماده کنید. از روی همین اطلاعات میتوان مشخص کرد Trigger از Credential، IP Registration، Auth Challenge یا Filter نامناسب آمده است.
ایرانیکاسرور میتواند برای نصب و سختسازی FusionPBX، FreeSWITCH، Firewall، Fail2Ban، SIP Trunk و بررسی Registrationهای Banشده کمک کند.
تماس با پشتیبانی ایرانیکاسرور: 021-91302467
پرسشهای رایج
چرا FusionPBX همه تلفنهای یک دفتر را همزمان Ban میکند؟
اگر Phoneها پشت یک NAT باشند، همه با یک Public IP به سرور دیده میشوند. یک داخلی با Credential اشتباه میتواند باعث Ban شدن همان Public IP و در نتیجه قطع همه تلفنهای آن دفتر شود.
چرا بعد از Ban شدن SIP، پنل وب و SSH هم باز نمیشود؟
Jailهای فعلی FusionPBX از Action نوع allports استفاده میکنند؛ بنابراین Ban یک IP میتواند تمام Portهای آن IP را مسدود کند، نه فقط SIP.
چطور فقط یک IP را Unban کنیم؟
با دستور fail2ban-client set JAIL unbanip IP فقط همان IP را از Jail مشخص آزاد کنید. در نسخههای جدید Fail2Ban، fail2ban-client unban IP میتواند IP را از همه Jailها آزاد کند.
آیا ignoreip امنیت Fail2Ban را از بین میبرد؟
اگر محدود و هدفمند باشد، خیر. بهتر است IP دفتر یا Provider را فقط در Jailهای SIP Ignore کنید تا SSH و پنل وب همچنان تحت حفاظت Fail2Ban باشند.
freeswitch-ip و auth-challenge-ip را خاموش کنیم؟
نه بهصورت پیشفرض. این Jailها برای سختسازی مفیدند. ابتدا Phoneها را روی FQDN رجیستر کنید و False Positive را با IgnoreIP محدود یا اصلاح Device برطرف کنید.
اگر IP دفتر Dynamic باشد چه کنیم؟
Whitelist کردن Range بزرگ ISP توصیه نمیشود. VPN مدیریت، FQDN، Dynamic DNS کنترلشده یا تنظیم Threshold بر اساس Log واقعی گزینههای امنتری هستند.
Log Banهای FusionPBX کجاست؟
خود Fail2Ban Banها را در /var/log/fail2ban.log ثبت میکند. Jailهای SIP معمولاً /var/log/freeswitch/freeswitch.log را میخوانند و Jailهای وب/NGINX از auth.log، syslog یا access log استفاده میکنند.
اگر سرور nftables داشته باشد دستورات Fail2Ban فرق میکنند؟
مدیریت Jail و Unban همچنان با fail2ban-client انجام میشود. فقط Action Firewall زیرساخت میتواند بهجای iptables از nftables استفاده کند.
جمعبندی
وقتی FusionPBX داخلیهای سالم را Ban میکند، امنترین واکنش خاموشکردن Fail2Ban نیست. ابتدا با fail2ban-client status Jail عامل را پیدا کنید، سپس /var/log/fail2ban.log و Log اصلی همان سرویس را بخوانید.
در بسیاری از شبکهها مشکل از چند Phone پشت یک Public NAT، Credential قدیمی یا Registration مستقیم به IP سرور است. بهخصوص Jailهای freeswitch-ip و auth-challenge-ip در تنظیم فعلی بسیار سختگیرانهاند و با یک Match میتوانند Ban یکروزه ایجاد کنند.
برای جلوگیری از تکرار مشکل، Phone را اصلاح کنید، از FQDN استفاده کنید و فقط Sourceهای ثابت و قابلاعتماد را در Jailهای لازم Ignore کنید. Whitelist محدود به SIP Jailها معمولاً از Global Ignore امنتر است، چون حفاظت SSH و پنل FusionPBX را حفظ میکند.
برای تنظیم Fail2Ban روی FusionPBX کمک میخواهید؟
اگر چند دفتر، SIP Provider یا Remote Phone دارید، میتوان Jailها و IgnoreIP را متناسب با Public IPها و معماری واقعی تنظیم کرد تا Scannerها Block شوند اما داخلیهای قانونی بهاشتباه قطع نشوند.
تماس با پشتیبانی ایرانیکاسرور: 021-91302467






دیدگاهها (۰)