کانفیگ تلفن نرم افزاری Zoiper

کانفیگ تلفن نرم افزاری Zoiper : در دنبای جذاب VoIP کاربران نهایی (End Users) برای اتصال به سیستم تلفنی باید از تجهیزاتی چون IP Phone و یا تلفن های آنالوگ استفاده کنند که البته برای اتصال تلفن های آنالوگ به شبکه ی VoIP نیاز به دستگاه های واسط از جمله ATA می باشد.

جدا از تجهیزات سخت افزاری که شامل هزینه نیز می باشند راهکارهای دیگری از جمله استفاده از تلفن های نرم افزاری و یا همان Soft Phone ها می باشد.

این نرم افزارها مانند IP Phone ها مدل های مختلفی دارن و کاربران به راحتی می توانند آن را روی کامپیوتر،لپ تاپ و یا گوشی موبایل هوشمند خود نصب کنند و به وسیله ی آن به شبکه VoIP متصل شوند و از سیستم تلفنی استفاده کنند.

همانطور که گفته شد Soft Phone ها مدل های مختلفی دارند که ممکن است برخی رایگان و برخی دیگر غیر رایگان باشند.در این مطلب قصد دارم تا تلفن نرم افزاری Zoiper را خدمت شما عزیران معرفی کنم و نحوه ی نصب و استفاده آن را آموزش دهم.

Zoiper یک نرم افزار تلفنی هست که نسخه رایگان و غیر رایگان دارد که قابلیت نصب روی اکثر سیستم عامل ها را دارد و دارای رابط کاربری ساده و زیبایی می باشد.این Soft Phone از پروتوکل هایی چون SIP,IAX و XMPP پشتبانی می کند.

همچنین شما می توانید برای انجام دادن تنظیمات ویپ خود به شرکتهایی که کار پشتیبانی Voip را انجام می دهند مراجعه کنید.

جهت دانلود zoiper می توانید به سایت رسمی zoiper مراجعه کنید و بر اساس سیستم عامل خود نسخه مورد نظر را دانلود کنید. یعد از دانلود نرم افزار باید آن را از حالت فرده خارج کرده و آن را نصب کنید.

روند نصب را در تصاویر پایین می توانید مشاهده کنید :

 

کانفیگ تلفن نرم افزاری Zoiper

کانفیگ تلفن نرم افزاری Zoiper

کانفیگ تلفن نرم افزاری Zoiper

کانفیگ تلفن نرم افزاری Zoiper

کانفیگ تلفن نرم افزاری Zoiper

کانفیگ تلفن نرم افزاری Zoiper

کانفیگ تلفن نرم افزاری Zoiper

کانفیگ تلفن نرم افزاری Zoiper

کانفیگ تلفن نرم افزاری Zoiper

کانفیگ تلفن نرم افزاری Zoiper

کانفیگ تلفن نرم افزاری Zoiper

 

اکنون جهت register کردن یک داخلی (Extenion) از نوع SIP کافیست تا مراحل زیر را انجام دهید :

 

کانفیگ تلفن نرم افزاری Zoiper

کانفیگ تلفن نرم افزاری Zoiper

کانفیگ تلفن نرم افزاری Zoiper

کانفیگ تلفن نرم افزاری Zoiper

کانفیگ تلفن نرم افزاری Zoiper

بعد از انجام مراحل بالا داخلی شما register می شود که برای بازبینی،ویرایش و اضافه کردن داخلی می توانید از منوی Settings گزینه ی Preferences را انتخاب کنید تا پنجره ی ای مانند شکل زیر را مشاهده کنید :

کانفیگ تلفن نرم افزاری Zoiper

در صورتی که بخواهید داخلی از نوع IAX نز ایجاد کنید باید همین مراحل را نیز برای این نوع  داخلی انجام دهید.

 

کانفیگ CALL PARK در CME

کانفیگ CALL PARK در CME : در این مقاله  شما را با نحوه تنظیم و راه‌اندازی قابلیت CALL PARK در روتر سیسکو آشنا می کنیم با ما همراه باشید:

معمولا زمانی که یک داخلی تماسی را Hold می‌کند فقط خودش می‌تواند آن تماس را از Hold خارج کرده و پاسخگوی آن تماس باشد . به کمک قابلیت Call Park شما می‌توانید تماس‌های مورد نظرتان را در داخلی‌هایی که از قبل برای Call Park ایجاد کرده‌اید پارک کنید و سپس آن تماس را توسط تلفن‌های دیگر سازمان از پارک خارج کرده و پاسخگوی آن باشید .

به طور کلی Call Park به دو شکل قابل اجرا می‌باشد . یکی این که مرکز تلفن تماس‌ها را به صورت خودکار در داخلی‌های از قبل ساخته شده به صورت Random پارک کند و دیگری این که فرد پاسخگو ، تماس را به طور هدفمند در یکی از داخلی‌های مورد نظر خود پارک کند . برای درک بهتر این موضوع تصور کنید در یک محیط کاری بزرگ مانند انبار یا فروشگاه که کاربران مدام در حال حرکت هستند می‌خواهید این قابلیت را راه‌اندازی کنید . در چنین محیطی از سناریوی اول استفاده کرده ، به این صورت که تلفنچی تماس‌های ورودی را پاسخ داده و سپس آن‌ها را پارک می‌کند و بعد در بلندگوی محیط فرد مورد نظر را صدا زده و می‌گوید ” آقای X یک تماس در داخلی Y داری ، لطفا جواب بده ” . در مرحله بعدی فرد مورد نظر توسط هر یک از داخلی‌های محیط تماس را از پارک خارج کرده و پاسخ می‌دهد .

از حالت دوم معمولا در محیط‌های اداری استفاده می‌شود. به این صورت که تلفنچی تماس‌ها را به صورت مستقیم در داخلی‌های از قبل تعیین شده ( مثلا ۳۰۰ برای مالی ، ۳۰۱ برای فنی ، ۳۰۲ برای فروش و … ) پارک می‌کند و سپس کارشناسان هر بخش از سازمان تماس‌های پارک شده‌ی مرتبط با خود را پاسخ می‌دهند .

پیکربندی و تنظیم CALL PARK در CME

اولین قدم برای پیاده‌سازی قابلیت Call Park در CME ساخت داخلی‌هایی است که برای پارک تماس می‌خواهید از آن‌ها استفاده کنید . برای این کار کافیست در ابتدا داخلی‌ مورد نظر را ساخته و سپس با زدن دستور Park-slot آن داخلی را به سیستم Call Park اختصاص دهید .

کانفیگ CALL PARK در CME

همانطور که مشاهده می‌کنید در ادامه‌ی کامند Park-slot می‌توانید پارامتر‌های دیگری را نیز برای این قابلیت تنظیم کنید که برخی از این پارامتر‌ها عبارت است از :

  • Timeout : در این پارامتر تعیین می‌کنید که پس از چه مدت روتر به فرد پارک کننده تماس یاد‌آوری کند که تماس همچنان پارک بوده و پاسخ داده نشده است .
  • Limit : در این پارامتر تعیین می‌کنید که پس از چند بار Timeout شدن ، تماس قطع شود .
  • Reserved-for : به کمک این کامند می‌توانید این Park-slot را به یک داخلی خاص اختصاص داده تا فقط وی بتواند تماس‌ها را در آن پارک کند .
  • Recall : با این گزینه می‌توانید تعیین کنید که پس از Timeout شدن ، تماس به تلفن فرد پارک کننده باز گردد .

پس از ساخت Park-slot ها با ریست کردن تلفن‌ها Softkey پارک تماس روی تلفن‌ها ظاهر می‌شود . در این مرحله برای پارک تماس باید زمانی که در حال مکالمه هستید این Softkey را بزنید تا مانند تصویر ذیل پیغام پارک تماس برای شما نمایش داده شود .

نکته : برای پارک تماس به یک Park-slot خاص می‌توانید تماس را به آن داخلی Transfer کنید .

کانفیگ CALL PARK در CME

در قدم بعدی برای پاسخگویی به تماس‌های پارک شده سه راه دارید :

  1. مستقیما شماره Park-slot را بگیرید .
  2. کلید Pickup را زده و سپس شماره Park-slot را بگیرید .
  3. بر روی تلفنی که تماس را پارک کرده ابتدا Pickup را زده و سپس * را بزنید تا آخرین تماس پارک شده پاسخ داده شود .

همچنین شما می توانید برای انجام دادن تنظیمات ویپ خود به شرکتهایی که کار پشتیبانی Voip را انجام می دهند مراجعه کنید.

اتصال گیتوی Newrock به Issabel

تنظیمات گیتوی Newrock برای اتصال Issabel : در گیتوی های برند Newrock برای اتصال به دستگاه و انجام مراحل کانفی’ ، آدرس IP پیش فرض و رمز عبور به شرح زیر می باشد :

HX4 => ip: 192.168.2.218 – pass: hx4

    MX8 => ip: 192.168.2.218 – pass: mx8

  MX60 => ip: 192.168.2.240 – pass: mx60

MX120 => ip: 192.168.2.240 – pass: mx120

در این سناریو مدل گیتوی ما ، Hx412E می باشد که ردارای 2 پورت Fxo و 2 پورت Fxs می باشد.

با توجه به توضیحات داده شده ، آدرس گیتوی را زده تا محیط کنسول برای شما طبق شکل زیر نمایش داده شود

تنظیمات گیتوی Newrock برای اتصال Issabel

بعد از ورود صفحه زیر به شما نمایش داده می شود

تنظیمات گیتوی Newrock برای اتصال Issabel

روی منوی Basic رفته و از زیر منوی باز شده به منوی Network تا آدرس Ip سیستم را به حالت Static برده و آدرس مورد نظر که طبق سناریو بالا اعلام گردید تنظیم کنید

تنظیمات گیتوی Newrock برای اتصال Issabel

حال آن را ذخیره نموده و با آدرس Ip جدید مجددا وارد کنسول شوید

در این مرحله به منوی Basic رفته و از زیر منوی آن گزینه SIP را انتحاب نموده و در قسمت Proxy Server آدرس سرور ایزابل را به همراه پورت آن وارد نموده و تنظیمات را ذخیره نمایید .

تنظیمات گیتوی Newrock برای اتصال Issabel

در این مرحله به منوی Trunk رفته و زیر منی Trunk را انتخاب نموده و مقادیر را طبق شکل پر نمایید.

تنظیمات گیتوی Newrock برای اتصال Issabel

Trunk Id : FXO-3 شماره پورت می باشد که در این مثال از پورت 3 استفاده شده است

Phone Number : 8002 به پورت انتخاب شده یک شماره ای اختصاص دهید

Inbound handle : Binding به پورت می باشد (Did) جهت اختصاص دادن

Number : 9999 می باشد (Did) نشانگر شماره

تنظیمات را ذخیره نموره و به منوی Routing و زیر منوی Routing Table بروید و دستور زیر را وارد نموده و تنظیمات را ذخیره نمایید

IP x ROUTE FXO 3

در این خط ار Route که نوشته می شود به نوعی هداین تماس ها را بر عهده دارد.

عدد 3 نشانگر پورت Fxo می باشد. شماره پورت Fxo این دستگاه 3و4 می باشد و اگر شما بخواهید از هر 2 پورت آن استفاده نمایید می توانید بازه پورت ها را با – مشخص نمایید به عنوان مثال 4-3 نشان دهنده استفاده 2 پورت می باشد.

تنظیمات را ذخیره نمایید.

تنظیمات گیتوی Newrock برای اتصال Issabel

به منوی Adnance رفته و گزینه Tones را از زیرمنوی آن انتخاب نمایید.

لطفا گزینه Country/Region را به کشور ایران تغییر داده و تنظیمات را ذخیره نمایید.
تنظیمات گیتوی Newrock برای اتصال Issabel

تنظیمات گیتوی نیوراک تمام شد و برای ادامه تنظیمات به سرور ایزابل مراجعه کنید

وارد سرور ایزابل شده و از منوی PBX زیر منوی PBX Configuration را انتخاب نمایید.

از منوی ظاهر شده گزینه Trunk را انتخاب نموده و از گزینه های نشان داده شده طبق شکل گزینه Add Sip Trunk را انتخاب نمایید.

در صفحه باز شده تنظیمات Trunk را مانند شکل زیر وارد نماییدتنظیمات گیتوی Newrock برای اتصال Issabel

 

طبق شکل بالا 3 قسمت باید داخل Trunk کامل شود.

اسم ترانک می باشد که به صورت اختیاری می باشد.

Trunk Name = To-NewRock

نکته : سعی شود هر دو فیلد Trunk Name یکسان پرشود تا در مراحل دیگر به مشکل بر نخورید.

در این قسمت شما کد زیر را وارد می نمایید که جلوی هر خط توظیحات لازم داده شده است.

PEER Details :

در این قسمت آدرس IP گیتوی NewRock را وارد می نمایید.

Host=192.168.10.22

در این قسمت نوع Trunk را مشخص می نمایید که می تواند User , Firend , Peer باشد.

Type=peer

در این قسمت دسته بندی نماس را مشخص می نمایید (داخلی/خارجی).

Context=from-trunk

در این قسمت نوع کدک را مشخص می نمایید.

Allow=alaw,ulaw

در این قسمت برای کنترل خط می باشد که حتما باید نوشته شود.

Qualify=yes

حال تنظیمات را ذخیره نمایید .

حال به منوی PBX زیر منوی Tools و زیر منوی Asterisk Cli رفته و در قسمت Command دستور Sip Show Peers را بزنید و اگر نتیجه آن به شکل زیر بود مشکلی در برقراری ارتباط نداشته و ارتباط بین سرور ایزابل و گیتوی برقرار می باشد.

تنظیمات گیتوی Newrock برای اتصال Issabel

در این مرحله می بایست تماس ها را به خارج و داخل هداست نمایید و برای این گار نیاز به یک Inbound Route و یک OutBound Route داریم.

حال با ساخت Outbound و Inbound می توانید تماس به این ترانک ارسال و یا دریافت کنید.

همچنین شما می توانید برای انجام دادن تنظیمات ویپ خود به شرکتهایی که کار پشتیبانی Voip را انجام می دهند مراجعه کنید.

امیدوارم از آموزش تنظیمات گیتوی Newrock برای اتصال Issabel لذت برده باشید.

تفکیک خطوط در گیتوی گرنداستریم

تفکیک خطوط در گیتوی گرنداستریم : در این مقاله قصد داریم تا شما را با نحوه ی تفکیک تماس های ورودی و خروجی در گیتوی گرنداستریم آشنا کنیم با ما همراه باشید:

همچنین شما می توانید برای انجام دادن تنظیمات ویپ خود به شرکتهایی که کار پشتیبانی Voip را انجام می دهند مراجعه کنید.

تفکیک تماس های ورودی

برای  تفکیک تماس های ورودی هر پورت به سمت مقصدی خاص باید از DID استفاده نمود . به این ترتیب که پس ازورود به تنظیمات گرنداستریم  به منوی Settings >> Channels Settings >> Calling to VoIP >> User ID رفته و مانند شکل به تفکیک هر پورت بپردازید.

تفکیک خطوط در گیتوی گرنداستریم

همان طور که در شکل بالا مشاهده شد پورت یک به DID 300 و پورت دو به DID 301 و پورت سه و چهار به DID 302 مسیردهی شده است . در سرور ایزابل (الستیکس) نیز در inbound Route مانند شکل زیر می توانید از این DID ها استفاده نمایید و تماس ها را به مقصد مورد نظر هدایت نمایید .

تفکیک خطوط در گیتوی گرنداستریم

تفکیک تماس های خروجی

برای تفکیک تماس های خروجی باید به ازای هر پورت روی گیتوی یک SIP Trunk تعریف شود برای این کار به منوی Account >> User Account رفته و مانند شکل زیر برای هر کانال یک UserID و یک Password تعریف نمایید.

تفکیک خطوط در گیتوی گرنداستریم

در مرحله بعد وارد منوی FXO Lines >> Dialing >> Port Schedule Schema شده و گزینه Use SIP User Account Scheduling  را روی Yes قرار دهید .

تفکیک خطوط در گیتوی گرنداستریم

تنظیمات گرنداستریم در این بخش به پایان رسید در مرحله بعد وارد منوی ایزابل (الستیکس) شوید و یک SIP Trunk با پارامترهای زیر ایجاد نمایید .

تفکیک خطوط در گیتوی گرنداستریم

نام ترانک که دراین شکل 300 است باید همان نامی باشد که در گیتوی گرنداستریم به عنوان SIP UserID قبلا تعریف کرده بودیم و Secret نیز همان پسوردی است که قبلا در گرنداستریم تعریف شده بود . برای  hostباید هم آی پی گیتوی گرنداستریم باید قرار داده شود .

host=192.168.1.200

fromuser=300

secret=300

type=friend

qualify=yes

dtmfmode=rfc2833

context=from-trunk

disallow=all

allow=alaw,ulaw

port=5060

insecure=very

در مرحله بعد در تعریف Outbound Route در بخش انتخاب ترانک میتوانید ترانکی که میخواهید از روی آن تماس خروجی داشته باشید را انتخاب کنید . به همین ترتیب میتوانید برای پورت های دیگر گیتوی گرنداستریم همین روال را انجام دهید .

تفکیک خطوط در الستیکس

تفکیک خطوط در الستیکس : دراین آموزش می خواهیم نحوه جدا کردن خط ها در کارت های FXO روی الستیکس را آموزش دهیم . با ما همراه باشید:

همچنین شما می توانید با مراجعه به شرکتهایی که کار پشتیبانی Voip را انجام می دهند تنظیمان مربوط به ساختار Voip خود را انجام دهید.

جدا کردن خط ها در تماس های خروجی FXO :

زمانی که کارت FXO روی الستیکس نصب شده است معمولا از ترانک پیش فرض تعیین شده برای آن استفاده می شود . در این حالت فقط یک ترانک برای تمام پورت های کارت FXO استفاده می شود و هنگامی که تماس خروجی انجام می شود اولین خط آزاد توسط سیستم انتخاب می شود و به طور پیش فرض امکان انتخاب خط برای شما وجود ندارد .

همان طور که گفته شد پس از نصب الستیکس یک ترانک Dahdi وجود دارد که می توانید برای تماس های خروجی از آن استفاده نمایید . بنابراین برای این که بتوانیم هر خط را به طور دلخواه انتخاب کنید باید چند ترانک دیگر ایجاد نمایید . در واقع برای هر خط می توانید یک ترانک ایجاد نمایید و یا برای گروهی از خط ها یک ترانک ایجاد نمایید .این مورد بسته به نیاز شما دارد برای مثال اگر شما 8 خط شهری دارید می خواهید بخش فروش برای تماس های خروجی از 4 خط اول استفاده نماید و بخش فنی از 4 خط دوم استفاده نماید بنابراین باید برای هر 4 خط یک Dahdi Trunk ایجاد نمایید .

برای ایجاد گروه های مختلف و ترانک ابتدا در الستیکس به بخش PBX>>Tools>>Asterisk File Editor>>dahdi-channels.conf بروید .

تفکیک خطوط در الستیکس

و یا می توانید برای دسترسی به این فایل از مسیر etc/asterisk/dahdi-channels.conf استفاده نمایید .

تفکیک خطوط در الستیکس

همان طور که در شکل زیر مشاهده می نمایید تمام خطوط در group=0 قرار دارند .

تفکیک خطوط در الستیکس

به عنوان مثال برای خط 1گروه را تغییر دهید به این صورت group=1 سپس save و استریسک را reload نمایید . در مرحله بعد به بخش ایجاد dahdi Trunk  از مسیر PBX>> PBX Configuration>>Trunks>>Add DAHDI Trunk بروید و یک ترانک Dahdi  ایجاد نمایید. در این بخش فقط کافی است یک نام برای ترانک انتخاب نمایید و در قسمت DAHDI Identifier مقدار را g1 بگذارید . سپس submit  و apply نمایید .

تفکیک خطوط در الستیکس

تا این جا کار اصلی انجام شده است فقط کافی است برای outbound route این ترانک را اضافه نمایید.

می توانید یک Outbound Route جدا تعریف کنید که با یک Dial Pattern خاص تماس از خط یک خارج شود و با گرفتن 9 از بقیه خط ها . در این مثال با گرفتن عدد 8 تماس از خط اول خارج می شود.

تفکیک خطوط در الستیکس

همچنین می توانید با یک روش ساده ،تماس خروجی از خط 1 را با همان Dial Pattern  که عموما گرفتن 9 است را برای یک داخلی یا گروهی از داخلی ها محدود نمایید . برای این کار فقط کافی است در قسمت Dial Pattern از Caller ID استفاده نمایید .

تفکیک خطوط در الستیکس

تفکیک تماس های ورودی در الستیکس هنگام استفاده از کارت FXO

بعد از این که شما یک inbound route در الستیکس تعریف کردید و در قسمت set destination تماس های ورودی را به مقصدی خاص هدایت کردید به طور پیش فرض تمام تماس های ورودی از تمام خط های FXO به همان مقصد هدایت می شوند . ممکن است نیاز باشد هر خط به مقصدی خاص هدایت شود . برای مثال خط یک به داخلی 101 هدایت شود خط دو به یک IVR و خط 3 به فکس وصل شود . برای این کار باید در قسمت inbound Route از DID یا Direct Inward Dial استفاده کرد . برای این که از DID استفاده نمایید ابتدا باید در فایل dahdi-channels.conf تغییر کوچکی بدهید . این تغییر به این صورت است که برای هر خط context از from-pstn به from-zaptel و یا from-analog تغییر یابد .

تفکیک خطوط در الستیکس

در مرحله بعد به بخش DAHDI Channels DID از مسیر PBX>>PBX Configuration>>DAHDI Channels DID بروید . در این بخش شما برای هر کانال (منظور هر پورت FXO ) یک شماره DID تعریف می کنید که بعد بتوانید در Inbound Route در بخش DID Number  از آن استفاده نمایید .

تفکیک خطوط در الستیکس

همان طور که در شکل بالا مشاهده نمودید در قسمت Channel شماره کانال یا همان پورت FXO مورد نظر را وارد کنید و در قسمت DID عدد را به دلخواه وارد نمایید که از این عدد در بخش DID در قسمت inbound Route  استفاده می شود. بعد از ساخت DID باید یک inbound Route بسازید و در بخش DID Number عدد 1 که قبلا در DAHDI Channel DIDS تعریف کرده بودیم را وارد نمایید .

تفکیک خطوط در الستیکس

به این ترتیب تماس هایی که از پورت یک وارد می شوند به سمت مقصد دلخواه هدایت می شود . به همین ترتیب می توان برای پورت های دیگر مقاصد مختلف تعریف نمود .

هدایت تماس های ورودی بر اساس Caller ID

یکی از قابلیت های جالبی که الستیکس دارد این است که شما می توانید بر اساس شماره تماس گیرنده Caller ID تماس به مقصدی خاص هدایت نمایید . برای مثال تماس هایی که از شماره منزل شما وارد الستیکس می شود مستقیم به داخلی شما متصل شود . برای این کار فقط کافی است شماره مورد نظر را در قسمت Caller ID Number  در inbound Route وارد نمایید و تیک CID Priority Route را بزنید و د انتهای set destination را به داخلی خود هدایت کنید .

تفکیک خطوط در الستیکس

توجه داشته باشید شماره مورد نظر را باید دقیقا با همان فرمتی که در گزارش گیری الستیکس می بینید وارد نمایید . منظور از فرمت 021 یا 21 یا 0098 و … می باشد .

چگونگی ساخت ترانک در FreePBX

چگونگی ساخت ترانک در FreePBX : در این مقاله قصد داریم تا شما را با  چگونگی ساخت ترانک در FreePBX آشنا کنیم با ما همراه باشید:

ماژول ترانک به شما امکان اتصال به انواع سیستم های تلفنی را می دهد. این ویژگی باعث می شود تا به راحتی ارتباط با تکنولوژی های مخابراتی مانند SIP Trunk ، E1 ، انواع گیتوی و خطوط شهری داشته باشید، این ویژگی ها به همین جا ختم نخواهد شد.

با ساخت Trunk در FreePBX می توانید دفاتر سازمان که از نظر فیزیکی در مکان های مختلفی دارند را به یک دیگر متصل کنید تا یکپارچه سازی ای را برای شما به ارمغان بیاورند که بدون صرف هزینه اضافه و با استفاده از بسترهای موجود تماس های رایگان در سازمان خود داشته باشید.

ماژول Trunk  وابستگی مستقیمی به دو ماژول تماس های ورودی و خروجی دارد، مقصد تماس های شما ممکن است به یک Trunk هدایت شود، بنابراین بعد از ساخت ترانک در FreePBX ماژول های Inbound/Outbound Routes را نیز تنظیم کنید.

چگونه ساخت ترانک در FREEPBX 

برای رسیدن به ماژول Trunk مسیر Connectivity>Trunks را دنبال کنید، مانند تمام ماژول های دیگر،  FreePBX لیستی از تمام موجودی ها که در اینجا تنظیمات ترانک هستند به شما نمایش می دهد. با کلیک بر روی Add Trunk یکی از تکنولوژی های موجود را انتخاب کنید.

ساخت Trunk در FreePBX با هر تکنولوژی ای از یک روند ثابتی استفاده می کند برای آموزش راه اندازی سریع به دلیل محبوبیت بالا و پشتیبانی طیف وسیعی از دستگاه ها ما پروتکل SIP را انتخاب کرده اید اما در ادامه انواع ترانک ها و نحوه تنظیم آن ها را بررسی خواهیم کرد.

چگونگی ساخت ترانک در FreePBX

در قسمت General تنها کافی است مقدار Trunk Name برابر با یک توضیح دلخواه باشد، دقت کنید که این مقدار با نامی که در استریسک از آن استفاده می کند یکی نیست.

بر روی لبه ی Sip Setting کلیک کنید تا وارد تنظیمات مربوط به ساخت ترانک در FreePBX با پروتکل SIP شوید. پارامتر Trunk name دقیقا همان اسم ترانک است که می تواند هر مقدار دلخواهی باشد بعد از انتخاب اسم مقدار Peer Details را برای دستگاه یا سیستم تلفنی مقصد با استفاده از قالب زیر تکمیل کنید.

host=Voip_Provider

type=friend

dtmfmode=RFC2833

insecure=very

qualify=yes

به جای مقدار Voip_Provider آدرس سیستمی که می خواهید به آن متصل شوید را وارد کنید، ترانک یک ارتباط دو طرفه است بنابراین تنظیمات ترانک برای این سرور نیز می بایست در مقصد انجام گردد. کافیست بر روی گزینه Submit و سپس Apply Config کلیک کنید تا تنظیمات شما ذخیره و اعمال گردد.

چگونگی ساخت ترانک در FreePBX

تنظیم انواع پروتکل ها برای ساخت ترانک در FREEPBX چگونه است؟

در این قسمت ۳ پروتکل SIP ، IAX و DAHDI را جهت ساخت ترانک در FreePBX بررسی می کنیم و توضیحات لازم  ارائه داده شده است. هدف این بخش آشنایی با این پروتکل ها و یادگیری کار با آن ها در محیط های واقعی برای استفاده های کاربردی است. قاعدتا درک بهتر پیاده سازی هرکدام از این پروتکل ها نیاز به مطالعه بیشتر دارد.

پروتکل SIP جهت ساخت ترانک در FreePBX

همانطور که در قسمت بالا نیز به این مورد اشاره شد، SIP یکی از پرطرفدار ترین پروتکل ها برای پیاده سازی سیستم تلفنی است. این محبوبیت به دلیل پشتیبانی بسیاری از دستگاه ها با این پروتکل به دست آمده. اجرای ساده، کاهش هزینه ها و قابلیت یکپارچه سازی با سیستم های دیگر نیز می تواند از مزایای این پروتکل باشد.

هنگام ساخت ترانک در FreePBX شما با گزینه Peer Details در قسمت SIP Settings روبرو خواهید شد. Peer به موجودیتی در استریسک گفته می شوند که سیستم تلاش می کند تماس ها را به این موجود ارسال می کند. مثال کاربردی برای Peer می تواند دستگاه گیتوی آنالوگ یا دیجیتال شما باشد.

تفاوت هاست Dynamic با Static

ساخت Trunk در FreePBX با احراز هویت دو مفهوم متفاوت هستند، بنابراین شما ارتباط ترانکی را می توانید برقرار کنید که از نام کاربری و رمز عبور یا بدون هویت سنجی استفاده کند. کاربرد این مفهوم آن جایی است که کاربران سیستم در بیشتر موارد آدرس شبکه خود را تغییر می دهند و شما می توانید با استفاده از نام کاریری و رمزعبور آن ها را شناسایی کنید اما معمولا سرور تلفنی های دیگر یا دستگاه های ثانویه مانند گیتوی دارای آدرس ثابتی هستند بنابراین نیاز به احراز هویت برای آن آدرس وجود ندارد.

پروتکل IAX جهت ساخت ترانک در FreePBX

IAX پروتکلی است که در قلب سیستم تلفنی های پایه استریسک قرار دارد. این تکنولوژی به طور ذاتی اولین بار به همراه استریسک توسط مارک اسپنسر منتشر شد، IAX امروزه به نسخه ۲ ارتقا یافته که توانسته استاندارد RFC 5456 را از انجمن مهندسی برق و الکترونیک دریافت کند.

IAX به دلیل استفاده از کد گذاری information-element در عوض ASCII  اجرای بهینه تر به همراه امنیت بیشتر برای شما به ارمغان می آورد ضمن اینکه این پروتکل اجرای کارا تری بر بستر سیم جهت انتقال مالتی مدیا دارد. تنظیمات Peer Setting دقیقا همان هایی هستند که شما برای SIP استفاده کردید و در قسمت قبل بررسی شد.

پروتکل DAHDI جهت ساخت ترانک در FreePBX

تنها راه برقراری ارتباط سیستم تلفنی با سخت افزار، درایور DAHDI است بنابراین اگر از سخت افزار تلفنی بر روی سرور خود استفاده می کنید می بایست ترانک هایی از نوع DAHDI ایجاد کنید.  تنها نکته ای که می بایست هنگام ساخت ترانک در FreePBX رعایت شود تنظیم درست کانال های ارتباطی سخت افزار است. برای مثال شما یک کارت آنالوگ با چهار پورت جهت اتصال خط شهری تهیه کرده اید. به ازای هر پورت یک کانال در FreePBX در اختیار دارید.

کانال های DAHDI می توانند به صورت یک گروه نیز تنظیم گردند، به طوری که تماس های هدایت شده به این کارت با سیاستی که مشخص می کنید بین کانال ها توزیع می شوند. این سیاست تنها با انتخاب نوع ترانک DAHDI تنظیم می گردند، جدول زیر نوع ترانک ها را نمایش می دهد.

نوع ترانک برچسب کاربرد
Group 0 Round Robin Assending r0 توزیع تماس چرخشی بین کانال ها از اولین پورت
Group 0 Round Robin Descending R0 توزیع تماس چرخشی بین کانال ها از آخرین پورت
Group 0 Ascending g0 توزیع تماس از اولین کانال آزاد به ترتیب از پورت اول
Group 0 Descending G0 توزیع تماس از اولین کانال آزاد به ترتیب از پورت اول

چه تنظیمات دیگری برای ساخت ترانک در FREEPBX به من داده شده؟

در ادامه قصد داریم تا تنظیمات کمی پیشرفته تر و تکمیلی را مورد مطالعه قرار دهیم. این تنظیمات در بسیاری از موارد احتیاج ندارند تا از حالت پیشفرض خود خارج شوند. اما به عنوان یک متخصص تلفنی ممکن است با چالش های جدیدی روبرو شوید که شما را وادار به تنظیم این موارد کند.

Trunk Name : یک اسم توصیفی برای این ترانک که می تواند هر مقدار دلخواهی باشد

Hide CallerID : مخفی کردن پارامتر کالرآیدی در تماس های خروجی ای که از این ترانک استفاده می شود.

Outbound CallerID : می توانید کالرآیدی خاصی برای تماس هایی که از این ترانک خارج می شوند در نظر بگیرید.

Maximum Channels : بیشترین تعداد تماسی که می تواند بر روی این ترانک فرستاده شود.

Asterisk Trunk Dial Options : با فعال کردن این قسمت می توانید پارامترهای برنامه Dial در استریسک را به تماس هایی که از این ترانک می گذرند اضافه کنید.

Continue if Busy : بعد از فعال سازی این قسمت اگر تماسی بر روی این ترانک پیغام اشغال ( Congested) دریافت کند با استفاده از ترانک بعدی سعی در شماره گیری مجدد می کند.

Disable Trunk : غیر فعال کردن این ترانک

همچنین شما می توانید با مراجعه به شرکتهایی که کار پشتیبانی Voip را انجام می دهند تنظیمان مربوط به ساختار Voip خود را انجام دهید.

تنظیمات شبکه در ایزابل

تنظیمات شبکه در ایزابل: در این مقاله قصد داریم تا به تنظیمات شبکه در ایزابل بپردازیم و شما را با نحوه ی کانفیگ تنظیمات شبکه در ایزابل آشنا کنیم با ما همراه باشید:

پنل ایزابل

همانطور که می دانید با ورورد به پنل وب ایزابل به صفحه ای وارد خواهید شد که از شما نام کاربری و رمز عبور پرسیده خواهد شدکه پس از وارد کردن نام کاربری و رمز عبور خود می توانید به پنل ایزابل دسترسی داشته باشید.با ورورد به پنل ایزابل این امکان برای شما فراهم خواهد شد که افزونه های ایزابل را اضافه کنید.

تنظیمات شبکه در ایزابل

در پنل کاربری شما داشبورد ایزابل را می بینید  در این محل شما می توانید اطلاعات کلی سرور را مانند نوع سخت افزار ، فضای ذخیره سازی ، میزان بار پردازنده و …. را مشاهده کنید.

تنظیمات شبکه در ایزابل

در قسمت چپ پنل نیز همانطور که قابل مشاهده می باشد شما می توانید به قسمتهای مختلف دسترسی داشته باشید و تنظیمات مربوط به آن را انجام دهید.

شما می توانید برای ویرتایش داشبورد ایزابل به قسمت مربوط به آن رفته وتغییرات مورد نظر خود را اعمال کنید. همچنین می توانید جایگاه اپلت ها را با استفاده از Drag & Drop تغییر دهید.

تنظیمات شبکه در ایزابل

تنظیمات شبکه در ایزابل

همانطور که می دانید CentOS  سیستم عاملی است که بر روی ایزابل می باشد که در صورت تسلط بر این سیستم عامل شما قادر به انجام تنظیمات شبکه با استفاده از خط فرمان خواهید بود اما شما می توانید این تنظیمات را در پنل تحت وب ایزابل نیز انجام دهید.

برای انجام تنظیمات شبکه شما باید به قسمت Network در منوی سمت چپ بروید.

تنظیمات شبکه در ایزابل

ابتدا باید تنظیمات مربوط به ادرس IP را انجام دهید . نام کارت شبکه خود را انتخاب و بر روی ویرایش کلیک کنید.

حال برای اینکه بتوانید تنظیمات مربوط به Gateway و آدرس های DNS را انجام دهید باید به قسمت Edit Network Parameter رفته و تنظیمات مورد نظر خود را انجام دهید.

تنظیمات شبکه در ایزابل

قسمت بعدی مربوط به راه اندازی DHCP سرور روی ایزابل است ، شاید شما در شبکه خود DHCP سرور دیگری داشته باشید ولی در صورتی که ندارید راه اندازی DHCP سرور ایزابل بسیار راحت است و شما را از دادن IP استاتیک به تلفن ها بی نیاز می کند.

تنظیمات شبکه در ایزابل

در قسمت مربوط به DHCP Clinet List لیست تجهیزاتی که از ایزابل IP دریافت کرده اند قابل مشاهده می باشد.

در صورتی که بخواهید برای یک Mac آدرس خاص یک IP در نظر بگیرید باید به قسمت Assign IP Address to Host مراجعه کرده تا برای همیشه این ادرس IP به ادرس MAC مورد نظر اختصاص داده شود

قسمت آخر نیز مربوط به دو ابزار کار آمد Ping و Traceroot بوده که قادر است اتصالات ایزابل به شبکه را بررسی کند.

همانطورکه می دانید می توانید برای نصب و راه اندازی سیستم ویپ خود از شرکتهایی که کار پشتیبانی Voip را انجام می دهند کمک بگیرید.

انواع Trunk در ایزابل

انواع Trunk در ایزابل : در این مقاله قصد داریم تا شما را با Trunk و انواع آن در نرم افزار ایزابل آشنا کنیم با ما همراه باشید:

مفهوم ترانک

همانطور که می دانید در شبکه در صورتی که بخواهید Vlan ها را به یکدیگر ارتباط دهید باید از ترانک استفاده کنید . اما توجه به این نکته ضروری است که مفهوم ترانک در مراکز تلفنی و مخابرات متفاوت و به معتی مسیرهای اتصال می باشد که این مسیرهای ارتباط در شبکه های یک به چند اتفاق می افتد.

در این شبکه ها تعداد مسیرها به تعداد کاربران نبوده و تنها تعداد معقولی برای آن در نظر گرفته خواهد شد.

نحوه ی انجام تنظیمات ترانک در ایزابل

برای اینکه بتوانید تنظیمات مربوط به ترانک را در نرم افزار ایزابل انجام دهید باید ابتدا گزینه PBX  را از منوی سمت چپ برگزینید سپس گزینه PBX Configuration را انتخاب کرده و در منوی باز شده گزینه Trunk را پیدا کرده و انتخاب نمایید.

انواع Trunk در ایزابل

بعد از انتخاب گزینه Trunk در پنجره باز شده باید برای ساخت یک Trunk  بر روی گزینه Add Trunk  کلیلک کرده و نوع ترانکی را که خواهان ساخت و ایجاد آن می باشید را انتخاب کنید.

انواع Trunk در ایزابل

حال در این قسمت قصد داریم تا شما را با انواع ترانک موجود در نرم افزار ایزابل آشنا کنیم:

انئاع ترانک به شرح زیر می باشد:

Sip Trunk : این نوع از ترانک بسیار پرکاربرد بوده و پروتکلهای متنوعی از این نوع ترانک پشتیبانی خواهند کرد.

DAHDi Trunk : در صورتی که نرم افزار ایزابل شما دارای یک کارت تلفن یا ماژول FXO باشد شما می توانید از این نوع ترانک استفاده کنید.

IAX2 Trunk : در صورتی که بخواهید دو سرور مبتنی به استریسک را به یکدیگر متصل کنید می توانید از این نوع ترانک استفاده کنید زیرا این نوع ترانک قادر به استفاده از پروتکل اختصاصی استریسک  IAX ورژن ۲ می باشد

ENUM Trunk :کاری که این ترانک قادر به انجام آن می باشد این است که مانند DNS عمل کرده و شما می توانید شماره تلفن را به سرور داده و سرور به شما مسیر اتصال SIPرا باز خواهد گرداند.

مثالی که می توان برای این نوع ترانک زد این است که به عنوان مثال اگر شما شماره تلفن 43000660 را به سرور ENUM  ارسال کنید مقدار  SIP:1234@pbx.com:5060 را به شما برگرداند شما قادر خواهید بود از طریق ادرس گفته شده با شماره تلفن درخواستی خود بوسیله ارتباط SIP  ارتباط برقرار کنید.با استفاده از این ترانک شما می توانید در هزینه های سازمان صرفه جویی کنید.

DUNDi Trunk : این ترانک مانند Enum  بوده  و تنها تفاوتی که با Enum  دارد این است که جستجوی مسیر تنها در دستگاهایی که در یک گروه خاص قرار گرفته شده اند صورت خواهد گرفت

Custom Trunk :  این حالت زمانی استفاده می شود که بخواهید ترانک مورد نظر خود را ساخته و بتوانید با دیگر سیستمها ارتباط برقرار کنید.

همانطور که می دانید برای راه اندازی سیستم Voip خود می توانید از شرکتهایی که کار پشتیبانی Voip را انجام می دهند کمک بگیرید.

آشنایی با مفهوم OutBound Route

آشنایی با مفهوم OutBound Route : در این مقاله قصد داریم تا Trunk را مورد بررسی قرار داده و شما را با مفهوم OutBound Route آشنا کنیم با ما همراه باشید:

همانطور که می دانید از نرم افزار ایزابل در نصب و راه اندازی Voip  استفاده کنید.

OUTBOUNDROTE چیست؟

همانطور که از نامش مشخص است مسیر خروجی برای تماس ها را Outbound route می گویند این مسیر می تواند تماس ها را به خارج از سرور ایزابل هدایت کند.

الویت تماس در ایزابل

قبل از اینکه به سراغ مسیر خروجی بروید ابتدا باید الویت بندی ها را در ایزابل بدانید.

وقتی یک شماره روی تلفن گرفته می شود ابتدا ایزابل به سراغ کد های عملیاتی خود می رود (این کد ها برای امور خاص ایزابل استفاده می شوند مثل کد شنیدن صندوق صوتی ) در صورتی که کد های عملیاتی نباشد به سراغ داخلی ها می رود اگر شماره گرفته شده جزو داخلی ها هم نباشد آن را به مسیر خروجی منتقل می کند.

در واقع مسیر خروجی چیزی شبیه gateway در شبکه های کامپیوتری می باشد.

مسیر خروجی

برای تعریف یک مسیر خروجی بعد از وارد شدن به BPX Configuration از منوی سمت چپ Outbound Route را انتخاب می کنیم . سپس از منوی سمت راست گزینه add route را انتخاب کنید:

آشنایی با مفهوم OutBound Route

تنظیمات تماس خروجی

مانند آموزش های قبل فقط قسمت های کاربردی تر را توضیح می دهیم

Route Name: نام مسیر خروجی را درج می کنیم .

Dial Patterns that will use this Route : این قسمت مهمترین بخش در تماس خروجی است که به تفصیل به آن می پردازیم.

در این قسمت یک الگو برای شماره ای که می خواهد خارج شود باید در نظر بگیرید در صورتی که شماره گرفته شده با این الگو تطبیق پیدا کند توسط مسیر خروجی هدایت می شود .

Prepend: این قسمت در تطبیق شماره نقشی ندارد ولی اگر شماره توسط بقیه قسمت ها تطبیق پیدا کند عدد داخل Prepend به اول شماره گرفته شده اضافه شده و سپس توسط مسیر خروجی هدایت می شود .

Prefix: این قسمت در تطبیق شماره نقش دارد و در صورتی که شماره با الگو منطبق شود این قسمت از شماره حذف شده و سپس شماره توسط مسیر خروجی هدایت می شود .

Match pattern: این قسمت برای تطبیق شماره استفاده می شود . در این قسمت می توان از علائم اختصاری استفاده کرد

علایم اختصاری Match Pattern

X: به معنای هر عددی از ۰ تا ۹ می باشد

Z: به معنای هر عددی از ۱ تا ۹ می باشد

N: به معنای هر عددی از ۲ تا ۹ می باشد

[]: هر عددی که داخل براکت باشد ، اگر بخواهیم از رنج اعداد استفاده کنیم بین آنها علامت “-” می گذاریم. به عنوان مثال عبارت [۱۲۳۷-۹] به معنای اعداد ۱ و ۲ و ۳ و ۷ و ۸ و ۹ می باشد.

. : به معنای هر عددی به هر تعدادی.

تا اینجا واضح است که اگر هیچ محدودیت و یا شماره خاصی نداریم کافی است داخل match pattern فقط یک “.” بگذاریم در این حالت ایزابل هر شماره ای را که داخل خودش پیدا نکند توسط مسیر خروجی به بیرون منتقل می شود.

توجه داشته باشید که یک مسیر خروجی پیشفرض در ایزابل به نام Outsid_9 وجود دارد که هر شماره ای با پشوند ۹ را به مسیر خروجی هدایت میکنه.

CallerId: این قسمت هم مربوط به تطبیق شماره نمی شود و فقط به سیستم اعلام می کند که این الگو فقط زمانی که این داخلی شماره گیری کرده است اعتبار دارد. در صورتی که این مقدار خالی باشد این الگو برای همه داخلی ها معتبر است.

شایان ذکر است که می توانید بینهایت الگو برای هر مسیر خروجی تعریف کنید.

آشنایی با مفهوم OutBound Route

مثال کاربردی:

فرض کنید یک تلفن نرم افزاری روی تلفن همراه خود نصب کرده اید و این تلفن نرم افزاری را به سرور ایزابل با داخلی ۴۰۷به عنوان یک داخلی متصل کرده اید و می خواهید شماره از مخاطبانتان را که به صورت ۹۸۹۱۲۱۲۳۴۵۶۷+ در تلفن همراهتان ذخیره شده است را شماره گیری کنید.

واضح است که اگر این شماره را شماره گیری کنید تلفن ثابت این شماره را اشتباه می داند

برای رفع این مشکل

Dial Patterns را باید به شکل زیر تعریف کنیم

میدانیم که باید مقدار ۹۸+ از اول شماره حذف و بعد از آن یک ۰  اضافه شود و سپس شماره ارسال شود

برای این منظور مقادیر بدین شکل خواهند بود

Prepend=0

Prefix=+98

Match pattern=XZ.

Callerid=407

Trunk Sequence for Matched Routes: واضح است که مسیر خروجی فقط تماس را هدایت میکند ولی انتقال تماس توسط Trunk انجام می شود . در این قسمت شما می توانید ترانک مورد نظر جهد انتقال تماس را مشخص کنید

شایان ذکراست که شما می توانید چندین ترانک را به ترتیب معرفی کنید و مسیر خروجی به ترتیب تماس ها را به ترانک ها منتقل می کند و اگر ترانک بالاتر در دسترس نباشد و یا مشغول باشد تماس را به ترانک بعدی منتقل می کند.

معرفی announcement در ایزابل

معرفی announcement در ایزابل: در این مقاله قصد داریم تا شما را با  announcement آشنا و نحوه ی ایجاد آن در ایزابل ر برای شما شرح دهیم با ما همراه باشید:

اطلاعیه ها آسان ترین روش تعامل با کاربر می باشد. شما با استفاده از announcement ها می توانید یک پیام صوتی برای کاربر پخش کنید و سپس آن را به مسیر دیگر هدایت کنید.

به طور مثال می توانید در روز تعطیل می توانید برای کاربر یک پیام صوتی مبنی بر اینکه در این روز امکان پاسخگویی تماس وجود ندارد پخش کنید و سپس مکالمه را قطع کنید ، و یا قبل از متصل کردن کاربر به صندوق صوتی پیامی مبنی بر اینکه چطور پیام خود را ضبط کند به کاربر بگویید سپس تماس را به صندوق صوتی متصل کنید.

ساخت ANNOUNCEMENT یا اطلاعیه در ایزابل

برای ساخت یک announcement یا اطلاعیه در ایزابل ابتدا از منوی سمت راست گزینه PBX را انتخاب و سپس از زیر منوی آن PBX Configuration را انتخاب می کنید ، در منوی باز شده جدید گزینه announcement را انتخاب می کنید.

سپس از منوی سمت راست گزینه add announcement را انتخاب کنید .

معرفی announcement در ایزابل

تنظیمات announcement در ایزابل

معرفی announcement در ایزابل

Description : یک توضیح برای announcement خود می نویسید این توضیح ارتباطی با نحوه کارکرد ندارد و فقط جهت یاد آوری announcement به کار می رود.

Recording : در این قسمت می توانید صدای ضبط شده توسط System recording  را انتخاب کنید . در مطالب قبلی از مجموعه آموزش ایزابل نحوه ضبط و یا بارگذاری صدا در system recording آموزش داده شده است.

Repeat : در این قسمت تعداد تکرار پیام را مشخص می کنید در صورتی که روی Disable قرار داده شده باشد یعنی پیام یک بار پخش خواهد شد

Allow Skip: در صورتی که این گزینه را فعال کنید تماس گیرنده با فشردن هر کلید پیام را رد خواهد کرد.

Return to IVR : در صورت فعال کردن این گزینه ، اگر کاربر توسط یک IVR به این پیام وارد شده باشد بعد از تمام شدن پیام دوباره به IVR باز خواهد گشت ، دقت کنید که اولویت این گزینه از مقصدی که شما انتخاب می کنید بالا تر است.

Destination after playback: در این قسمت شما می توانید مسیری برای هدایت کاربر بعد از پخش پیام مشخص کنید .این مسیر می تواند به هر کجا از سیستم تلفنی متصل شود و یا حتی تماس را قطع کند

در آخر هم  روی submit و سپس Applay config کلیک کنید.

در سمت چپ هم می توانید لیستی از  announcement هایی که تا به حال ایجاد کرده اید را ببینید.

در ضمن در ایزابل محدودیتی برای تعریف announcement  وجود ندارد.

همانطور که می دانید از نرم افزار ایزابل برای نصب و راه اندازی Voip استفاده خواهد شد.

نحوه ی پیاده سازی Repository لینوکس درون سازمانی

نحوه ی پیاده سازی Repository لینوکس درون سازمانی: همانطور که می دانید برای انواع سیستم عامل های خانواده گنو لینوکس تعداد بسیار زیادی نرم افزار کوچک و بزرگ وجود دارد که در قالب بسته های نرم افزاری (package) کوچک با یکدیگر ترکیب می شوند و نرم افزار بزرگی را به وجود می آورند. این بسته ها معمولا در مخازن نرم افزار (Repository) ذخیره می شوند و کاربر برای نصب بسته ها و نرم افزارها می بایست این مخازن را به سیستم عامل خود اضافه کند و پس از آن با استفاده از نرم افزارهای مدیریت بسته (Package manager) اقدام به نصب نرم افزارها کند. این مخازن که برای هر توزیع لینوکسی (distribution) متفاوت است عملیات نصب بسته ها را ساده تر و امن تر می کنند، به دلیل اینکه مخازن رسمی هر توزیع لینوکسی از روال های تست کارکرد و امنیت خاصی بهره می برند معمولا می توان تمامی بسته های قرار گرفته در این مخازن را امن و تست شده قلمداد کرد.

شما می توانیداز سیستم عامل لینوکس برای نصب و راه اندازی Voip استفاده کنید.

به طور مثال توزیع Ubuntu چهار مخزن اصلی رسمی دارد که کارکرد هر کدام بدین شرح است:

  1.  Main – بسته های پشتیبانی شده توسط شرکت Canonical که آزاد و متن باز هستند
  2. Universe – بسته های پشتیبانی شده توسط جامعه کاربری اوبونتو که آزاد و متن باز هستند
  3. Restricted – راه انداز (driver) های اختصاصی و غیر آزاد برای برخی از دستگاه ها ( سخت افزار ها و… )
  4. Multiverse – بسته های محافظت شده توسط قانون کپی رایت

نحوه ی پیاده سازی  Repository لینوکس درون سازمانی

 

بسیاری از نرم افزارها را می توان با استفاده از 4 مخزن بالا در اوبونتو نصب کرد اما ممکن است نرم افزارها یا بسته هایی مورد نیاز باشد که به دلایل مختلف در مخازن رسمی یافت نشوند. این دلایل می تواند شامل موارد زیر باشد:

  1. بسته نرم افزاری از نظر مسائل حقوقی و کپی رایت با سیاست های مخازن رسمی در تضاد باشد.
  2. آخرین نسخه بسته نرم افزاری موردنظر به دلیل فرآیند تست کارکرد و امنیت مخازن رسمی با تاخیر در مخازن منتشر شود.
  3. فرآیند قرارگیری بسته نرم افزاری در مخازن رسمی زمان بر است و ممکن است ناشر نرم افزار برای این امر اقدام نکرده باشد.

برای دسترسی به بسته هایی که در مخازن رسمی یافت نمی شوند می توان از Personal Package Archive (که به اختصار به آن PPA می گویند) استفاده کرد. این آرشیوهای نرم افزاری توسط ناشر اصلی نرم افزارها در اختیار عموم قرار می گیرد تا با اضافه کردن آدرس آن ها در تنظیمات مدیر بسته (Package Manager) از مزایای نصب و بروزرسانی ساده تر بهره مند شوند.

مزیت استفاده از PPA نسبت به نصب مستقیم نرم افزارها توسط فایل deb یا rpm مسئله بروزرسانی نرم افزار است. درصورتی که نرم افزار توسط فایل های اجرایی مانند Deb یا rpm نصب گردد، امکان بروزرسانی خودکار آن توسط مدیر بسته (Package Manager) وجود ندارد و لازم است کاربر به صورت دستی اقدام نماید.

چرا باید از مخازن محلی استفاده کرد؟

راه اندازی یک Repository در شبکه محلی (LAN) سازمان باعث می شود سرورهایی که اینترنت ندارند یا به اصطلاح Air-Gapped هستند به مخازن نصب نرم افزارها و آپدیت بسته ها دسترسی داشته باشند. همچنین راه اندازی Repository به صرفه جویی در پهنای باند اینترنت و کاهش حجم مصرفی اینترنت کمک شایانی می کند و به دلیل قرارگیری مخازن محلی در داخل شبکه LAN امکان دانلود و آپدیت بسته ها با سرعت بسیار بالاتری مهیا می شود.

راه اندازی مخازن محلی برای سیستم عامل های گنو لینوکس از با استفاده از روش های مختلفی قابل انجام است که در این آموزش روش apt-mirror توضیح داده شده است که مناسب سیستم عامل های Debian و Ubuntu است.

مشخصات سرور پیشنهادی برای راه اندازی مخازن محلی برای توزیع اوبونتو:

  • تعداد 2 عدد vCPU
  • میزان 4 گیگابایت فضای RAM
  • حداقل 200 گیگابایت فضای ذخیره سازی برای هر توزیع لینوکس (Distro) که قصد میزبانی دارید
  • سیستم عامل Ubuntu Server 18.04 LTS در این آموزش مورد استفاده قرار گرفته است.

به طور کلی برای راه اندازی مخازن محلی توزیع اوبونتو لازم است تمام بسته های رسمی را دانلود کنیم و از طریق یک یا چند پروتکل اشتراک فایل آن ها را برای استفاده سرورها و کامپیوترهای داخل شبکه محلی به اشتراک بگذاریم:

قدم اول: باید وب سرور Apache را نصب و کانفیگ کنیم تا با استفاده از این وب سرور بسته های نرم افزاری دانلود شده را به اشتراک بگذاریم:

sudo apt install apache2 -y

وب سرور آپاچی می بایست پس از ریستارت سرور به صورت اتوماتیک راه اندازی شود:

sudo systemctl enable apache2

لازم است که یک دایرکتوری جدید بسازیم که پکیج های دانلود شده مخازن را داخل آن ذخیره کنیم و از طریق وب سرور در دسترس مصرف کننده قرار بگیرد. همچنین لازم است که کاربر www-data نسبت به دایرکتوری دسترسی Owner داشته باشد:

sudo mkdir -p /var/www/html/ubuntu

sudo chown www-data:www-data /var/www/html/ubuntu

در قدم بعدی می بایست بسته apt-mirror که مسئول دانلود بسته ها از مخازن مورد نظر است را نصب کنیم:

sudo apt install apt-mirror

بهتر است قبل از اقدام برای انجام تنظیمات apt-mirror از فایل کانفیگ آن نسخه پشتیبان تهیه کنیم:

sudo cp /etc/apt/mirror.list /etc/apt/mirror.list.backup

برای انجام تغییرات در فایل کانفیگ با استفاده از VIM یا nano فایل کانفیگ را باز می کنیم:

sudo vim /etc/apt/mirror.list

و پارامتر set base_path را منطبق با دایرکتوری ذخیره سازی بسته ها که در مراحل قبل ایجاد کردیم قرار می دهیم:

نحوه ی پیاده سازی  Repository لینوکس درون سازمانی

در این مرحله لازم است در فایل mirrors.list مخازنی که قصد دارید نسخه محلی آن ها را نگهداری کنید را به صورت لیست بنویسید، برای ایجاد این لیست می توانید از قالب زیر کمک بگیرید:

############# config ##################

set base_path    /var/www/html/ubuntu

# set mirror_path  $base_path/mirror

# set skel_path    $base_path/skel

# set var_path     $base_path/var

# set cleanscript $var_path/clean.sh

# set defaultarch  <running host architecture>

# set postmirror_script $var_path/postmirror.sh

# set run_postmirror 0

set nthreads     20

set _tilde 0

############# end config ##############

#——————————Ubuntu18-bionic—————————————————

deb-i386 http://archive.ubuntu.com/ubuntu bionic main restricted universe multiverse

deb-amd64 http://archive.ubuntu.com/ubuntu bionic main restricted universe multiverse

deb-i386 http://archive.ubuntu.com/ubuntu bionic-security main restricted universe multiverse

deb-amd64 http://archive.ubuntu.com/ubuntu bionic-security main restricted universe multiverse

deb-i386 http://archive.ubuntu.com/ubuntu bionic-updates main restricted universe multiverse

deb-amd64 http://archive.ubuntu.com/ubuntu bionic-updates main restricted universe multiverse

deb-i386 http://archive.ubuntu.com/ubuntu bionic-proposed main restricted universe multiverse

deb-amd64 http://archive.ubuntu.com/ubuntu bionic-proposed main restricted universe multiverse

deb-i386 http://archive.ubuntu.com/ubuntu bionic-backports main restricted universe multiverse

deb-amd64 http://archive.ubuntu.com/ubuntu bionic-backports main restricted universe multiverse

deb-amd64 http://security.ubuntu.com/ubuntu bionic-security main restricted

deb-amd64 http://security.ubuntu.com/ubuntu bionic-security universe

deb-amd64 http://security.ubuntu.com/ubuntu bionic-security multiverse

deb-i386 http://security.ubuntu.com/ubuntu bionic-security main restricted

deb-i386 http://security.ubuntu.com/ubuntu bionic-security universe

deb-i386 http://security.ubuntu.com/ubuntu bionic-security multiverse

deb-src http://archive.ubuntu.com/ubuntu bionic main restricted universe multiverse

deb-src http://archive.ubuntu.com/ubuntu bionic-security main restricted universe multiverse

deb-src http://archive.ubuntu.com/ubuntu bionic-updates main restricted universe multiverse

deb-src http://archive.ubuntu.com/ubuntu bionic-proposed main restricted universe multiverse

deb-src http://archive.ubuntu.com/ubuntu bionic-backports main restricted universe multiverse

deb-src http://security.ubuntu.com/ubuntu bionic-security multiverse

deb-src http://security.ubuntu.com/ubuntu bionic-security universe

deb-src http://security.ubuntu.com/ubuntu bionic-security main restricted

#——————————Ubuntu20-Focal—————————————————-

deb-i386 http://archive.ubuntu.com/ubuntu focal main restricted universe multiverse

deb-amd64 http://archive.ubuntu.com/ubuntu focal main restricted universe multiverse

deb-i386 http://archive.ubuntu.com/ubuntu focal-security main restricted universe multiverse

deb-amd64 http://archive.ubuntu.com/ubuntu focal-security main restricted universe multiverse

deb-i386 http://archive.ubuntu.com/ubuntu focal-updates main restricted universe multiverse

deb-amd64 http://archive.ubuntu.com/ubuntu focal-updates main restricted universe multiverse

deb-i386 http://archive.ubuntu.com/ubuntu focal-proposed main restricted universe multiverse

deb-amd64 http://archive.ubuntu.com/ubuntu focal-proposed main restricted universe multiverse

deb-i386 http://archive.ubuntu.com/ubuntu focal-backports main restricted universe multiverse

deb-amd64 http://archive.ubuntu.com/ubuntu focal-backports main restricted universe multiverse

deb-amd64 http://security.ubuntu.com/ubuntu focal-security main restricted

deb-amd64 http://security.ubuntu.com/ubuntu focal-security universe

deb-amd64 http://security.ubuntu.com/ubuntu focal-security multiverse

deb-i386 http://security.ubuntu.com/ubuntu focal-security main restricted

deb-i386 http://security.ubuntu.com/ubuntu focal-security universe

deb-i386 http://security.ubuntu.com/ubuntu focal-security multiverse

deb-src http://archive.ubuntu.com/ubuntu focal main restricted universe multiverse

deb-src http://archive.ubuntu.com/ubuntu focal-security main restricted universe multiverse

deb-src http://archive.ubuntu.com/ubuntu focal-updates main restricted universe multiverse

deb-src http://archive.ubuntu.com/ubuntu focal-proposed main restricted universe multiverse

deb-src http://archive.ubuntu.com/ubuntu focal-backports main restricted universe multiverse

deb-src http://security.ubuntu.com/ubuntu focal-security multiverse

deb-src http://security.ubuntu.com/ubuntu focal-security universe

deb-src http://security.ubuntu.com/ubuntu focal-security main restricted

clean http://archive.ubuntu.com/ubuntu

clean http://security.ubuntu.com/ubuntu

دقت داشته باشید در قالب بالا از توزیع های اوبونتو 18.04 و 20.04 پشتیبانی شده و فایل های منبع بسته ها و نسخه 32 بیتی و 64 بیتی بسته ها نیز دانلود می شوند.

پس از هر بار بروزرسانی مخزن ساخته شده، لازم است اسکریپتی اجرا شود که بسته های منقضی شده را پاک کند. لذا می بایست اسکریپت postmirror.sh به دایرکتوری var منتقل شود:

sudo mkdir -p /var/www/html/ubuntu/var

sudo cp /var/spool/apt-mirror/var/postmirror.sh /var/www/html/ubuntu/var/

در قدم بعدی می بایست با استفاده از apt-mirror دستور دانلود بسته ها و Sync شدن مخزن ایجاد شده را صادر کنیم:

sudo apt-mirror

وابسته به پهنای باند اینترنت ممکن است دانلود بسته ها ساعت ها زمان نیاز داشته باشد و حجمی معادل 500 گیگابایت را برای دو توزیع دانلود شود. در این مرحله راه اندازی مخازن محلی توزیع اوبونتو تمام شده است، اما برای اینکه مخزن ایجاد شده به صورت مرتب آپدیت شود لازم است با استفاده تعریف CronJob مخزن را آپدیت کنیم:

sudo crontab -e

لازم است Cronjob مورد نیاز برای آپدیت مخزن در ساعت 3 بامداد را تنظیم کنیم تا مخزن محلی ساخته شده به صورت روزانه بروزرسانی گردد:

00        03        *          *         *         /usr/bin/apt-mirror

 

در این مرحله با موفقیت Repository مورد نیاز آماده گردیده است و لازم است با استفاده از کلاینت های مختلف تست شود.

نحوه استفاده از مخازن محلی (LOCAL REPOSITORY) در توزیع اوبونتو 18.04 و 20.04 :

برای استفاده از مخزن ساخته شده کافی است بر روی سرور یا دسکتاپ موردنظر فایل sources.list را تغییر دهید:

در اولین گام از فایل sources.list نسخه پشتیبان تهیه کنید:

sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup

سپس با استفاده از ابزار sed آدرس مخازن سیستم عامل را با آدرس مخازن محلی جایگزین کنید:

sudo sed -i “s/ir\.archive\.ubuntu\.com/192\.168\.11\.35\/ubuntu\/mirror\/archive\.ubuntu\.com/g” /etc/apt/sources.list

sudo sed -i “s/us\.archive\.ubuntu\.com/192\.168\.11\.35\/ubuntu\/mirror\/archive\.ubuntu\.com/g” /etc/apt/sources.list

sudo sed -i “s/security\.ubuntu\.com\/ubuntu/192\.168\.11\.35\/ubuntu\/mirror\/security\.ubuntu\.com\/ubuntu\//g” /etc/apt/sources.list

با انجام مراحل فوق فایل /etc/apt/sources.list اصلاح می شود و ظاهر نهایی آن به صورت زیر خواهد شد:

 

deb http://192.168.11.35/ubuntu/mirror/archive.ubuntu.com/ubuntu/ bionic main restricted

deb http://192.168.11.35/ubuntu/mirror/archive.ubuntu.com/ubuntu/ bionic-updates main restricted

deb http://192.168.11.35/ubuntu/mirror/archive.ubuntu.com/ubuntu/ bionic universe

deb http://192.168.11.35/ubuntu/mirror/archive.ubuntu.com/ubuntu/ bionic-updates universe

deb http://192.168.11.35/ubuntu/mirror/archive.ubuntu.com/ubuntu/ bionic multiverse

deb http://192.168.11.35/ubuntu/mirror/archive.ubuntu.com/ubuntu/ bionic-updates multiverse

deb http://192.168.11.35/ubuntu/mirror/archive.ubuntu.com/ubuntu/ bionic-backports main restricted universe multiverse

deb http://192.168.11.35/ubuntu/mirror/security.ubuntu.com/ubuntu/ bionic-security main restricted

deb http://192.168.11.35/ubuntu/mirror/security.ubuntu.com/ubuntu/ bionic-security universe

deb http://192.168.11.35/ubuntu/mirror/security.ubuntu.com/ubuntu/ bionic-security multiverse

 

در این مرحله با استفاده از دستورات sudo apt update و sudo apt upgrade میتوانید لیست بسته ها را از مخزن محلی دانلود و سپس بروزرسانی کنید
همچنین نصب بسته هایی که در مخازن رسمی وجود دارند نیز با تغییراتی انجام شده ممکن گردیده است.

آشنایی با نحوه ی برطرف کردن آسیب پذیری Log4j بر روی بستر مجازی سازی VMware

آشنایی با نحوه ی برطرف کردن آسیب پذیری Log4j بر روی بستر مجازی سازی VMware:

کد این آسیب پذیری CVE-2021-44228, CVE-2021-45046 می باشد.

همانطور که می دانید از بستر مجازی سازی نیز می توان برای نصب و راه اندازی Voip استفاده کرد.

این مشکل امنیتی بر روی تمامی سرویس هایی که از Apache استفاده می کنند، وجود دارد.

محصولات VMware نیز از این باگ امنیتی، در امان نبوده اند و باید برای ماژول های پیاده سازی خود، مراحل امن سازی را در سریع ترین زمان پیاده سازی کنید.

برای دریافت اطلاعات کامل در مورد این آسیب پذیری بر محصولات VMware از این لینک استفاده کنید.

در نظر داشته باشید که هنوز هیچ Patch یا آپدیتی از سمت شرکت VMware برای از بین بردن این مشکل امنیتی منتشر نشده است، اما برای اکثر محصولات مجازی سازی VMware، روش حل موقت این مشکل یا به اصطلاح Workaround ارائه شده است.

محصولاتی مجازی سازی که توسط این مشکل امنیتی در تهدید هستند به شرح زیر می باشد :

  • VMware Horizon
  • VMware vCenter Server
  • VMware HCX
  • VMware NSX-T Data Center
  • VMware Unified Access Gateway
  • VMware WorkspaceOne Access
  • VMware Identity Manager
  • VMware vRealize Operations
  • VMware vRealize Operations Cloud Proxy
  • VMware vRealize Automation
  • VMware vRealize Lifecycle Manager
  • VMware Site Recovery Manager, vSphere Replication
  • VMware Carbon Black Cloud Workload Appliance
  • VMware Carbon Black EDR Server
  • VMware Tanzu GemFire
  • VMware Tanzu GemFire for VMs
  • VMware Tanzu Greenplum
  • VMware Tanzu Operations Manager
  • VMware Tanzu Application Service for VMs
  • VMware Tanzu Kubernetes Grid Integrated Edition
  • VMware Tanzu Observability by Wavefront Nozzle
  • Healthwatch for Tanzu Application Service
  • Spring Cloud Services for VMware Tanzu
  • Spring Cloud Gateway for VMware Tanzu
  • Spring Cloud Gateway for Kubernetes
  • API Portal for VMware Tanzu
  • Single Sign-On for VMware Tanzu Application Service
  • App Metrics
  • VMware vCenter Cloud Gateway
  • VMware vRealize Orchestrator
  • VMware Cloud Foundation
  • VMware Workspace ONE Access Connector
  • VMware Horizon DaaS
  • VMware Horizon Cloud Connector
  • VMware NSX Data Center for vSphere
  • VMware AppDefense Appliance
  • VMware Cloud Director Object Storage Extension
  • VMware Telco Cloud Operations
  • VMware vRealize Log Insight
  • VMware Tanzu Scheduler
  • VMware Smart Assurance NCM
  • VMware Smart Assurance SAM [Service Assurance Manager]
  • VMware Integrated OpenStack
  • VMware vRealize Business for Cloud
  • VMware vRealize Network Insight
  • VMware Cloud Provider Lifecycle Manager
  • VMware SD-WAN VCO
  • VMware NSX-T Intelligence Appliance
  • VMware Horizon Agents Installer
  • VMware Tanzu Observability Proxy

نحوه بر طرف کردن آسیب پذیری LOG4J

در ادامه به نحوه بر طرف کردن این مشکل امنیتی بر روی برخی از محصولات VMware می پردازیم.

vCenter

مرحله اول :  انتقال فایل به vCenter

شرکت VMware برای محصول مدیریت مجازی سازی لایه محاسبات خود یعنی vCenter یک اسکریپت ارائه داده است که به راحتی می توانید این آسیب پذیری را بر طرف کنید.

ابتدا فایل موجود در انتهای این مطلب آموزشی (remove_log4j_class.py) را بر روی سیستم خود دانلود کنید.

نرم افزار Winscp را بر روی سیستم عامل ویندوز خود دانلود و نصب نمایید.

با استفاده از Winscp به ماشین vCenter بستر خود متصل شوید.

*برای برقراری ارتباط توسط Winscp با vCenter خود پروتکل ارتباطی را بر روی SFTP قرار دهید .

مطابق شکل زیر :

آشنایی با نحوه ی برطرف کردن آسیب پذیری Log4j بر روی بستر مجازی سازی VMwareبر روی دکمه Advanced کلیک کنید و در تب SFTP در قسمت SFTP Server خط زیر را مطابق شکل وارد کنید :

shell /usr/libexec/sftp-server

 سپس اوکی کنید و گزینه login را وارد نمایید.

حال که به vCenter وصل شدید یک بار دکمه Back را لحاظ کنید و به پارتیشن tmp بروید .

فایل دانلود شده (remove_log4j_class.py)  را به این پوشه منتقل کنید.

مرحله دوم (اعمال تغییرات)

به ماشین vCenter  توسط SSH یا Shell متصل شوید.

با استفاده از کامند cd /tmp به پارتیشن tmp منتثل شوید.

در نهایت کامند زیر را اعمال کنید :

python remove_log4j_class.py

بعد از اجرای این کامند دکمه Y را لحاظ کنید تا تمامی تغییرات به صورت اتوماتیک اعمال شود و سرویس های vCenter دوباره استارت شوند.

آشنایی با نحوه ی برطرف کردن آسیب پذیری Log4j بر روی بستر مجازی سازی VMwareدر نهایت شکل زیر اتمام کار را نمایش می دهد .

آشنایی با نحوه ی برطرف کردن آسیب پذیری Log4j بر روی بستر مجازی سازی VMware

 

vRealize Operations :

مراحل زیر بر روی نود های Primary، Replica، Data،  Witness و Collector  باید اعمال گردد .

ابتدا صفحه فایل های مربوط به vRops  با نام های زیر رو دانلود نمایید.

  • data-rc-witness-log4j-fix.sh
  • vrops-log4j-fix.sh

سپس بر روی Admin پنل vRops، لاگین کرده و کلاستر را آفلاین کنید.

منتظر بمانید تا کلاستر آفلاین شود، سپس به vRops توسط Winscp متصل شوید و فایل دانلود شده را به پارتیشن /tmp منتقل کنید.

سپس با استفاده از Putty یا هر راهکار SSH ای به نود های vRops خود متصل شوید.

با استفاده از کامند زیر به شاخه /tmp منتقل شوید.

Cd /tmp

سپس با استفاده از کامند زیر قابلیت اجرای فایل ها را به دسترسی های مربوطه آن، بر روی تمام نود ها اضافه کنید.

chmod +x data-rc-witness-log4j-fix.sh

chmod +x vrops-log4j-fix.sh

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

./data-rc-witness-log4j-fix.sh

./vrops-log4j-fix.sh

مطمئن شوید که در نهایت خروجی کامند بدون هیچ اروری تمام می شود.

در مرحله نهایی، کامند زیر را وارد کنید تا تمامی سرویس ها CaSA دوباره Run شوند.

در نهایت بر روی Admin پنل لاگین کرده و کلاستر را آنلاین کنید.

آشنایی با نحوه ی برطرف کردن آسیب پذیری Log4j بر روی بستر مجازی سازی VMware