مهدی اشراقی
طراح و مهندس شبکه های کامپیوتری ، برنامه نویس
مهدی اشراقی
طراح و مهندس شبکه های کامپیوتری ، برنامه نویس

نوشته های بلاگ

نصب MQTT broker در لینوکس و پیکربندی اولیه

نصب MQTT broker در لینوکس و پیکربندی اولیه

در این پست یاد میگیریم مراحل نصب MQTT broker چگونه است و پیکربندی اولیه در لینوکس اوبونتو .

سلام .

قبلا یاد گرفتیم MQTT چیست و چه کاربردهایی داره .

اگر بخواید از Mqtt استفاده کنید احتیاج به mqtt بروکر یا همون سرور mqtt داریم .

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

من برای نصب سرور mqtt یا ( Mqtt broker) از لینوکس Ubuntu server استفاده میکنم .

نصب mqtt سرور بر روی لینوکس اوبونتو :

نصب Mqtt broker . روش اول :

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

نصب mqtt سرور

نصب Mqtt broker . روش دوم :

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

وارد خط فرمان لینوکس بشید (از طریق SSH ) و این دستورات رو وارد کنید .

  1. طبق معمول همیشه اول منابع نرم افزاری سرور خودتون رو به روز کنید که اگر نسخه جدیدی از Mqtt سرور موجود باشه لینوکس شما متوجه بشه .
  2. با دستور زیر Mqtt Broker خودتون رو نصب کنید .

    بعد از وارد کردن دستور بالا ، پیام تایید نصب رو به کلید y به معنی yes وارد کنید .

تمام !

راه اندازی اولیه سرویس Mqtt :

Mqtt به صورت پیش فرض از پورت ۱۸۸۳:tcp استفاده میکنه .

تنظیمات فایروال لینوکس برای mqtt بروکر :

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

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

با استفاده از دستور بالا  ورودی ها به سرور از طریق پورت tcp/1883 رو باز میکنیم .

اگر بعد از انجام مراحل نصب سرویس Mqtt به صورت خودکار اجرا نشد با دستور زیر اول رو به صورت پس زمینه اجرا کنید . در این حالت سرور شما شروع به کار میکنه اما چیزی رو به صورت محسوس نمی بینید .

اجرای سرویس Mqtt در زمان اجرای سیستم عامل به صورت خودکار :

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

دستور زیر رو اجرا کنید تا وارد تنظیمات Cronjob بشید .

بعد از وارد کردن دستور بالا گزینه ۱ رو انتخاب کنید .

در آخر فایل باز شده دستور زیر رو اضافه کنید .

با کلید ترکیبی Ctrl + X فایل باز شده رو ببندید و y رو به نشانه تایید ذخیره وارد کنید .

اجرای خودکار Mqtt سرور

تنظیمات اولیه Mqtt Broker :

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

امن سازی Mqtt broker با رمز عبور :

در حالت عادی سرور Mqtt از نام کاربری و رمز عبور استفاده نمیکنه . برای فعال کردن این قابلیت ۳ مرحله رو باید طی کنید.

ساخت نام کاربری و رمز غیور :

با استفاده از ابزار mosquitto_passwd میتونید نام کاربری و رمز عبور بسازید . به مثال زیر دقت کنید .

با دستور بالا برنامه mosquitto_passwd با دسترسی مدیر سیستم اجرا میشه و فایلی در مسیر /etc/mosquitto/passwd میسازه سپس اون رو به نام کاربری meties ارجاع میده .

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

مجدد عبارت Reenter password: رو نمایش میده که رمز عبور انتخابی رو مجددا وارد کنید و تمام !

ساخت فایل تنظیمات و  اعمال روی سرور :

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

فایل تنظیمات رو با دستور زیر بسازید و با ویرایشگر باز کنید .

در صفحه باز شده عبارت های زیر رو اضافه کنید .

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

تنظیمات mqtt

راه اندازی مجدد سرویس mqtt broker :

با دستور زیر سرویس mqtt broker رو restart کنید .

تمام !

تست Mqtt Broker :

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

کلاینک mqtt برای اندروید

کلاینک mqtt برای ویندوز 

MQTT Lens افزونه گوگل کروم

منبع : mosquitto.org

برچسب ها:
۲ دیدگاه
  • علی ۱۲:۵۷ بعد از ظهر شهریور ۲۲, ۱۳۹۹ پاسخ

    با سلام.ممنون از اموزشتون
    اگه ممکن هست راه ارتباط با وب سوکت رو هم بزارید
    ممنون

    • مهدی اشراقی ۹:۳۳ قبل از ظهر شهریور ۲۶, ۱۳۹۹ پاسخ

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

درج دیدگاه