آموزش کامل نصب و راه‌اندازی مترموست (Mattermost): پیام‌رسان اختصاصی شما برای ارتباط حرفه‌ای

آموزش نصب و راه اندازی مترموست
Avatar
نویسنده: درسا والامقام
دوشنبه 2 آبان 1401
مطالعه: ۲۴ دقیقه ۴ نظر ۲۸۵۶ بازدید

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

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

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

پیش‌نیازها

  • یک عدد سرور (مشخصات لازم و روش تهیه در ادامه توضیح داده می‌شود)
  • حدود دو ساعت زمان
  • یک دامنه (اختیاری: برای دسترسی از طریق آدرس اختصاصی خودتان و نصب SSL) اگر دامنه ندارید، تهیه آن آسان است و در ادامه توضیح داده شده.

چرا به سرور نیاز داریم؟

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

چگونه سرور تهیه کنیم؟

کافی است به یکی از شرکت‌های ارائه کننده سرور مراجعه کنید و بعد از ساخت حساب کاربری در آنها از میان گزینه‌های موجود یک سرور انتخاب کرده و سفارش دهید. برای تهیه این راهنما ما از سرور‌های شرکت پارس‌پک parspack.com استفاده کردیم. با توجه به اینکه مترموست به مشخصات سرور قدرتمندی نیاز ندارد، می‌توانید از میان سرورهای مجاز VPS و یا سرور‌ها ابری انتخاب کنید و در این صورت هزینه پرداختی ماهیانه شما کم خواهد بود. جزئیات فرایند تهیه سرور در ادامه شرح داده شده است.

مشخصات سخت‌افزاری مورد نیاز برای سرور:

سخت‌افزار مورد نیاز (حداقل لازم):

  • ۱ هسته سی‌پی‌یو (۲ گیگاهرتز)
  • ۲ گیگابایت رم

از نظر حافظه (SSD) مورد نیاز، خود نرم‌افزار به کمتر از یک گیگابایت فضا نیاز دارد. اما شما باید فایل‌های آپلود شده توسط کاربران را هم در نظر داشته باشید و پیشنهاد می‌کنیم سرور را با حداقل ۳۰ گیگابایت حافظه تهیه کنید.

سیستم‌عامل

در این راهنما ما از سیستم‌عامل لینوکس اوبونتو سرور نسخه 20.04 استفاده می‌کنیم. بنابراین هنگام سفارش سرور باید این گزینه را برای نصب روی سرور انتخاب کنید. در صورتی که می‌خواهید از توزیع‌های دیگر لینوکس استفاده کنید، می‌توانید به راهنمای رسمی نصب مترموست مراجعه کنید:

docs.mattermost.com

راهنمای خرید سرور

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

اما به دلیل ضروری بودن این نرم‌افزار، یک راهکار برای افرادی که قصد راه‌اندازی مترموست دارند در نظر گرفته شده و از طریق ارسال ایمیل می‌توانید سرور مورد نظرتان را سفارش دهید.

فرایند سفارش به این شرح است (لطفا با دقت دنبال شود):

  • به صفحه سرورهای مجازی پارس پک مراجعه کنید و از میان گزینه‌های موجود، یک سرور را انتخاب کنید (با توجه به نیاز مترموست، گزینه‌ای انتخاب کنید که حداقل ۲ گیگابایت رم داشته باشد.)
  • اگر از قبل در پارس‌ پک حساب کاربری ندارید، لطفا با مراجعه به صفحه ثبت‌نام، یک اکانت بسازید.
  • یک ایمیل با این مشخصات به آدرس [email protected] ارسال کنید:در موضوع ایمیل عنوان سرور انتخابی را ارسال کنید. مثال: irLinuxVPS 4
  • در متن ایمیل هم ایمیل نام کاربری که با آن ثبت‌نام کرده‌اید را درج کنید.

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

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

تهیه دامنه و اتصال آن به سرور

اگر دامنه (یک آدرس اختصاصی مانند yourname.ir) ندارید، برای خرید و ثبت دامنه، روی منوی هاست ابری کلیک کرده و وارد قسمت ثبت دامنه شوید:

ثبت دامنه ارزان
خرید دامنه پارس پک

در این صفحه می‌توانید دامنه مورد نظر خود را تایپ کرده تا یکتایی آن بررسی شود، اگر دامنه مورد نظرتان هنوز خریداری نشده باشد، می‌توانید با موفقیت آن را ثبت کنید:

خرید دامنه و هاست
جست‌وجوی دامنه برای Mattermost

برای اتصال دامنه به سرور باید از DNS استفاده کنید، پیشنهاد ما به شما سرویس CDN رایگان پارس‌پک است. در پنل کاربری پارس‌پک خود، از سمت راست گزینه CDN را انتخاب کنید:

راه‌اندازی dns
انتخاب DNS در پنل پارس‌پک

پس از وارد کردن آدرس دامنه در بخش سایت، سرویس CDN رایگان یا ساده را سفارش دهید.

خرید cdn رایگان
سفارش CDN رایگان

پس از انجام این مراحل واردصفحه ای می‌شوید که 4 نیم‌سرور به شما داده می‌شود تا روی دامنه خود تنظیم کنید، آدرس‌های مربوط به سرور پارس پک عبارت‌اند از:

  • ns1.parspack.net
  • ns2.parspack.net
  • ns3.parspack.net
  • ns4.parspack.net
ست کردن نیم سرور
تنظیم DNS و اتصال دامنه به سرور لینوکس

وارد صفحه‌ دامنه‌ در پنل خود شوید و روی دامنه جدید کلیک کنید. در قسمت تغییر NS، نیم‌سرورهای جدید را تنظیم کنید:

تنظیم نیم سرور دامنه
نیم‌سرور را برای اتصال دامنه به سرور تنظیم کنید

نکته: تغییر نیم‌سرور ممکن است ۱ تا ۴۸ ساعت طول بکشد. بنابراین در صورتی که پس از تغییر نیم‌سرور دامنه شما باز نمی‌شد تا ۴۸ ساعت صبر کنید. همچنین اگر دامنه ir داشته باشید، تغییرات شما همزمان با پنل پارس‌پک روی سایت ایرنیک نیز اعمال می‌شود و شما نیازی به ورود مجدد اطلاعات به ایرنیک را ندارید.

پس از اینکه CDN راه‌اندازی شد، وارد تنظیمات DNS شوید:

اتصال دامنه به سرور
انجام تنظیمات DNS برای اتصال سرور به دامنه

حالا باید دستور جدیدی برای اتصال سرور به دامنه وارد کنید، طبق تصویر زیر نوع رکورد باید A باشد، در قسمت هاست، باید نام دامنه وارد شود.

  • نوشتن @ نشان‌دهنده آدرس دامنه‌ شما بدون هیچ پیشوندی است.
  • در بخش آی پی سرور، آدرس IP را وارد کنید.
  • مدت زمان فعال بودن رکورد را انتخاب کنید
  • در نهایت دکمه افزودن را بزنید.
اتصال دامنه به سرور مجازی اوبونتو
اتصال دامنه به سرور پارس پک

چگونه به سرور متصل شویم؟

بعد از اینکه سرور را تهیه کردیم، یک آی‌پی (IP) و یک نام کاربری و رمز عبور جهت اتصال به آن دریافت می‌کنیم.

سیستم‌عامل ویندوز

جهت اتصال به سرور با سیستم عامل ویندوز از نرم‌افزار کوچکی به نام PuTTY استفاده می‌کنیم. جهت دانلود این نرم‌افزار به putty.org مراجعه کنید.

بعد از نصب آن در این پنجره در قسمت Host Name نام کاربری و آی پی سرور را تایپ کنید (به این فرمت: [email protected]) و دکمه Open را بزنید.

نرم افزار اتصال به سرور مجازی ویندوز
اتصال به سرور مجازی ویندوز با نرم‌افزار Putty

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

نکته ۱: هنگام تایپ پسورد در محیط کامندلاین، چیزی نمایش داده نمی‌شود. تعجب نکنید! این به خاطر امنیت است.

نکته ۲: در سیستم عامل ویندوز ۱۰ و ۱۱ امکان اتصال SSH توسط کامندلاین خود سیستم عامل هم وجود دارد. اما ممکن است به صورت پیش‌فرض فعال نباشد به همین خاطر نرم‌افزار PuTTY را معرفی کردیم.

سیستم‌عامل مک

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

سپس در محیط ترمینال این دستور را تایپ کنید و اینتر بزنید:

ssh <user>@<ip>

توجه کنید که نام کاربری و آی پی سرور خودتان را باید اینجا درج کنید، شبیه مثال زیر:

ssh [email protected]

در ادامه از شما رمزتان پرسیده می‌شود که آن را وارد کرده (می‌توانید کپی / پیست کنید) و اینتر بزنید. اگر یک سوال هم جهت اتصال پرسیده شد به آن Yes پاسخ دهید و اینتر بزنید. اکنون شما به سرور متصل شده‌اید و اکنون می‌توانید دستورات را اجرا کنید.

نکته ۱: از کجا اطمینان حاصل کنیم به سرور متصل شده‌ایم؟ هنگامی که به سرور متصل می‌شوید، نوشته‌های سمت چپ محیط تایپ دستور شما به نام کاربری و نام سرور (یا آی‌پی‌سرور) تغییر نام می‌دهند. مثلا نوشته می‌شود: [email protected] که نشان می‌دهد شما با نام کاربری root به سروری به آی‌پی 23.234.33.25 متصل هستید.

نکته ۲: هنگام تایپ پسورد در محیط کامندلاین، چیزی نمایش داده نمی‌شود. تعجب نکنید! این به خاطر امنیت است.

پیش از شروع: بررسی آخرین پکیچ‌های سیستم‌عامل

بعد از اتصال به سرور نوبت اجرای این دستور می‌رسد که از طریق آن به سیستم‌عامل می‌گوییم آخرین نسخه پکیچ‌های نصب شده روی سیستم عامل را بررسی کند. بعد از زدن این دستور ممکن است برای برخی موارد از شما اجازه بگیرد که در این صورت کافی است تایپ کنید yes:

sudo apt-get update

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

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

روش اول: نصب اتوماتیک با اسکریپت

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

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

wget -c https://github.com/bozorgraah/mattermost-install/archive/refs/heads/main.tar.gz -O - | tar -xz

اکنون با زدن این دستور به داخل پوشه مترموست می‌رویم که به صورت اتوماتیک ایجاد شده است:

cd mattermost-install-main

اکنون نوبت اجرای خود اسکریپت است:

bash install.sh

بعد از اجرای این دستور، مراحل نصب شروع می‌شود. در طول مراحل نصب چند پرسش از شما پرسیده می‌شود که باید به آنها پاسخ دهید:

نکته: مواردی که مقدار پیش‌فرض (default) جلوی آنها نوشته شده را می‌توان با زدن Enter رد کرد تا مقدار پیش‌فرض باقی بماند یا مقدار جدیدی تایپ کرد و سپس Enter زد.

این پرسش در مورد نسخه مترموست است که می‌خواهید نصب کنید. پیشنهاد می‌کنیم فقط اینتر بزنید تا نسخه پیشنهادی دانلود و نصب شود. در صورتی که می‌خواهید نسخه متفاوتی نصب کنید کافی است فقط شماره ورژن را تایپ کنید و اینتر بزنید. توجه کنید که این اسکریپت برای ورژن 7.4 تست شده و ممکن است برای نسخه‌های دیگر دچار مشکل بشود:

Which Mattermost version do you want to install? (default: 7.4.0):

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

Enter your database user (default: mmuser):

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

Enter your database password. only alphanum and underscore allowed (default: mmuser_password):

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

در اینجا باید یک اسم برای دیتابیس انتخاب کنیم که همین اسم پیش‌فرض را پیشنهاد می‌کنیم و فقط کافی است اینتر بزنید.

Enter your database name (default: mattermost):

در اینجا انتخاب می‌کنیم که مترموست را روی دامنه راه‌اندازی می‌کنیم یا می‌خواهیم از طریق آی‌پی به آن متصل شویم. قویا پیشنهاد می‌کنیم از دامنه استفاده کنید چون دسترسی از طریق آی‌پی سبب می‌شود برخی نرم‌افزارهای موبایل امکان اتصال به سرور شما را نداشته باشند. برای این پرسش نام دامنه‌تان بدون هیچ پیشوندی نظیر http:// یا https:// بنویسید و در صورت گزینه آی‌پی فقط آی‌پی سرور را تایپ کنید و اینتر بزنید. سوال:

Enter your domain name. Enter IP if you don’t have a domain name (e.g. example.com or 10.10.10.10)

در صورتی که قبلا Mattermost نصب شده باشد سوال زیر پرسیده خواهد شد:

Do you want to remove the previously installed Mattermost? (y/n):

در ادامه پس از فعال‌سازی فایروال ممکن است سوال پرسیده شود که با yes پاسخ داده شود:

Command may disrupt existing ssh connections. Proceed with operation (y|n)?

در نهایت در صورتی که در ابتدا یک دامنه معتبر وارد کرده باشید، از شما سوالی پرسیده می‌شود که تمایل به فعال کردن SSL دارید یا نه (قویا پیشنهاد می‌کنیم آن را فعال کنید):

Do you want to enable SSL (https)? (y/n) (default: y):

در صورتی که بله را انتخاب کنید، برای فعال‌سازی SSL پرسش‌های زیر مطرح می‌شود و پیشنهاد می‌کنیم آدرس ایمیل‌تان را وارد کنید:

Enter email address (used for urgent renewal and security notices) (Enter ‘c’ to cancel):

متنی که لینک شرایط استفاده از سرویس letsencrypt در آن نوشته شده نمایش داده می‌شود و سوال زیر پرسیده می‌شود و باید A را تایپ کنید و اینتر بزنید:

(A)gree/(C)ancel:

درخواست می‌شود که آخرین تغییرات و اخبار با آدرس ایمیل شما به اشتراک گذاشته شود و می‌توانید Y بزنید

(Y)es/(N)o:

پرسشی برای اینکه ترافیک از HTTP به صورت خودکار به HTTPS ریدایرکت شود یا نه نمایش داده می‌شود. پیشنهاد می‌کنیم گزینه ۱ را انتخاب کنید.

Select the appropriate number [1-2] then [enter] (press ‘c’ to cancel):

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

جهت مشاهده سورس این اسکریپت، می‌توانید به این صفحه گیت‌هاب مراجعه کنید.

روش دوم: نصب دستی مرحله به مرحله

در این روش همه مراحل را خودمان به صورت گام‌به‌گام انجام می‌دهیم که شامل نصب دیتابیس، وب سرور، خود مترموست و راه‌اندازی SSL است.

نصب دیتابیس PostgreSQL

این دیتابیسی است که مترموست از آن برای نگهداری اطلاعات چت‌ها استفاده می‌کند. برای نصب ابتدا این دستور را اجرا می‌کنیم:

sudo apt install postgresql postgresql-contrib

بعد از زدن آن از شما یک سوال در مورد نصب پرسیده می‌شود که باید Yes را تایپ کنید و اینتر بزنید.

سپس در مرحله بعدی این دستور را اجرا می‌کنیم:

sudo systemctl start postgresql.service

با اجرای این دستور در واقع دیتابیس نصب شده را فعال می‌کنیم.

نصب وب‌سرور Nginx

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

ابتدا این دستور را اجرا می‌کنیم:

sudo apt install nginx

بعد از زدن آن از شما یک سوال در مورد نصب پرسیده می‌شود که باید Yes را تایپ کنید و اینتر بزنید.

سپس در مرحله بعدی این دستور را اجرا می‌کنیم:

sudo ufw app list

بد نیست بدانید که ufw یک فایروال امنیتی است که به‌صورت پیش‌فرض روی سیستم عامل اوبونتو 20.04 نصب شده اما فعال نیست. این دستور به ما نشان می‌دهد که چه پروفایل‌هایی روی آن سرور جهت دسترسی به اینترنت در دسترس هستند. اجرای آن احتمالا نتیجه‌ای مشابه تصویر زیر به همراه خواهد داشت:

نصب nginx در ویندوز
نمایش پروفایل‌های روی سرور برای دسترسی به اینترنت

ما می‌خواهیم جهت امنیت بیشتر، فایروال را روی سرورمان فعال کنیم. اما قبل از فعال کردنش باید کاری کنیم که وب‌سرور و همینطور SSH (جهت امکان مدیریت سرور) همچنان امکان اتصال به اینترنت را داشته باشند. بنابراین اول این دو دستور را اجرا می‌کنیم:

sudo ufw allow 22/tcp

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

sudo ufw allow 'Nginx Full'

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

حالا این دستور را اجرا می‌کنیم که به معنی فعال کردن فایروال است:

sudo ufw enable

یک سوال پرسیده می‌شود که yes تایپ کنید و اینتر بزنید.

اکنون با زدن این دستور، جهت اطمینان گزارشی از وضعیت فایروال مشاهده می‌کنیم:

sudo ufw status

این یک نمونه خروجی است که بعد از زدن دستور قبلی به شما نشان داده می‌شود:

پیکربندی nginx
نمایش وضعیت فایروال

همانطور که مشاهده می‌کنید، پورت ۲۲ برای SSH و وب‌سرور در وضعیت Allow (مجاز برای دسترسی به اینترنت) هستند.

برای اینکه از صحت نصب وب‌سرور اطمینان حاصل کنیم، آدرس آی پی سرور را در مرورگر (مثلا کروم یا فایرفاکس) به این شکل در نوار آدرس تایپ می‌کنیم:

http://37.35.29.230

البته به جای این آدرس IP که در بالا می‌بینید، باید آدرس IP سرور خودتان را قرار دهید.

انجین ایکس چیست؟
به انجین‌ایکس خوش آمدید!

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

نصب مترموست

اکنون نوبت نصب خود مترموست است!

در ابتدا باید روی سرور یک پوشه برای نصب بسازیم. بنابراین این دستور را اجرا می‌کنیم:

mkdir ~/mattermost

سپس باید وارد این پوشه شویم و با این دستور آنجا می‌رویم:

cd ~/mattermost

حالا می‌خواهیم فایل مترموست را روی سرورمان دانلود کنیم و با این دستور انجام می‌شود:

wget https://releases.mattermost.com/7.4.0/mattermost-7.4.0-linux-amd64.tar.gz

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

آدرس صفحه گیت‌هاب مترموست: github.com

بعد از دانلود فایل، باید آن را از حالت فشرده (زیپ) خارج کنیم و بنابراین این دستور را می‌زنیم:

tar -xvzf mattermost-7.4.0-linux-amd64.tar.gz

توجه کنید که اگر نسخه دانلودی شما متفاوت باشد، اسم فایل دانلود شده هم متفاوت است و در اینجا باید اسم فایل‌تان را با توجه به نسخه دانلود شده اصلاح کنید.

در این مرحله لازم است که فایل‌ها را به یک پوشه دیگر منتقل کنیم که با این دستور انجام می‌شود:

sudo cp -r mattermost /opt

سپس این دستور را اجرا می‌کنیم:

sudo mkdir /opt/mattermost/data

با اجرای این دستور یک کاربر و گروه کاربری با نام mattermost به سیستم عامل اضافه می‌کنیم:

sudo useradd --system --user-group mattermost

و در اینجا مالکیت پوشه مترموست را به آن گروه کاربری اختصاص می‌دهیم:

sudo chown -R mattermost:mattermost /opt/mattermost

و در اینجا سطح دسترسی گروه کاربری به پوشه را تنظیم می‌کنیم:

sudo chmod -R g+w /opt/mattermost

اتصال مترموست به دیتابیس

ما در مرحله اول راهنما، نصب دیتابیس را انجام دادیم. اکنون نوبت اعمال تنظیمات و اتصال مترموست به آن است:

با اجرای این دستور انتخاب می‌کنیم که با کاربر postgres می‌خواهیم به محیط مدیریت دیتابیس وارد شویم.

sudo -i -u postgres

با اجرای این دستور به محیط مدیریت دیتابیس postgres وارد می‌شویم (بعد از زدن این دستور می‌توانیم دستورهای اختصاصی مدیریت دیتابیس را اجرا کنیم):

psql

این دستور یک دیتابیس جدید با نام mattermost ایجاد می‌کند:

CREATE DATABASE mattermost;

سپس یک یوزر و پسورد برای اتصال به دیتابیس ایجاد می‌کنیم. لطفا به جای پسورد Cd93Xskw913Q تایپ شده در اینجا خودتان یک رمز عبور امن انتخاب کنید:

CREATE USER mmuser WITH PASSWORD 'Cd93Xskw913Q';

حالا به دیتابیس می‌گوییم یوزری که ایجاد کرده‌ایم، امکان دسترسی به دیتابیس ساخته شده را داشته باشد:

GRANT ALL PRIVILEGES ON DATABASE mattermost to mmuser;

کار ما در بخش دیتابیس تمام شد. اکنون با زدن این دو دستور از محیط مدیریت دیتابیس خارج می‌شویم:

\q
exit

اکنون با زدن این دستور فایل تنظیمات مترموست را باز می‌کنیم:

sudo nano /opt/mattermost/config/config.json

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

نحوه اتصال مترموست به دیتابیس
تنظیمات اصلی مترموست

در اینجا باید یک خط را ویرایش کنید که در واقع تنظیمات اتصال به دیتابیس است. نوشت‌های بین گیومه”” را پاک کنید و آن را با این خطوط جایگزین کنید. (توجه کنید که پسورد دیتابیس خودتان را که در مرحله قبلی انتخاب کرده‌اید در اینجا وارد کنید- در این مثال رمز عبور 111111 انتخاب شده است):

postgres://mmuser:111111@localhost:5432/mattermost?sslmode=disable\u0026connect_timeout=10\u0026binary_parameters=yes

سپس با زدن دکمه Ctrl + X روی کیبورد از فایل خارج شوید، قبل از خروج از شما می‌پرسد که تغییرات ذخیره شوند که باید با زدن Y آن را تایید کنید و اینتر بزنید.

ارتباط مترموست به وب‌سرور

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

sudo nano /lib/systemd/system/mattermost.service

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

[Unit]
Description=Mattermost
After=network.target
After=postgresql.service
Requires=postgresql.service

[Service]
Type=notify
User=mattermost
Group=mattermost
ExecStart=/opt/mattermost/bin/mattermost
TimeoutStartSec=3600
Restart=always
RestartSec=10
WorkingDirectory=/opt/mattermost
LimitNOFILE=49152

[Install]
WantedBy=postgresql.service

سپس با زدن دکمه Ctrl + X روی کیبورد از فایل خارج شوید، قبل از خروج از شما می‌پرسد که تغییرات ذخیره شوند یا نه؟ که باید با زدن Y آن را تایید کنید و اینتر بزنید.

با این دستور کل سرویس‌های سیستم‌عامل را مجدد ریلود می‌کنیم:

sudo systemctl daemon-reload

با زدن این دستور چک می‌کنیم که آیا سرویس مترموست توسط سیستم‌عامل شناخته‌شده است یا نه (در این مرحله همچنان سرویس فعال نیست و فقط کافی است آن را در لیست سرویس‌ها ببینیم)

sudo systemctl status mattermost

اکنون به‌سیستم‌عامل می‌گوییم با هر بار ریسارت، سرویس مترموست را اجرا کند:

sudo systemctl enable mattermost

حالا این فایل را باز می‌کنیم تا تنظیمات دامنه را انجام بدهیم:

sudo nano /opt/mattermost/config/config.json

در ابتدای این فایل بخشی به نام SiteURL وجود دارد. داخل گیومه آدرس دامنه مد نظرمان را با این فرمت: http://yourdomain.com وارد می‌کنیم. اگر می‌خواهید بدون دامنه و فقط از طریق آی پی به مترموست دسترسی داشته باشید کافی است آدرس آی پی را با این فرمت درج کنید: http://37.32.25.229

سپس با زدن دکمه Ctrl + X روی کیبورد از فایل خارج شوید، قبل از خروج از شما می‌پرسد که تغییرات ذخیره شوند که باید با زدن Y آن را تایید کنید و اینتر بزنید.

حالا می‌خواهیم تنظیمات مترموست را به وب سرور اضافه کنیم، بنابراین این دستور را اجرا می‌کنیم:

sudo nano /etc/nginx/sites-available/mattermost.conf

داخل فایل باز شده این تنظیمات را اضافه می‌کنیم. لطفا توجه کنید که در خط یازدهم فایل، بخشی به نام yourdomain.com وجود دارد که در آنجا باید دامنه خودتان را درج کنید و یا اگر از آی پی استفاده می‌کنید فقط آدرس آی پی (بدون http://) را آنجا درج کنید:

upstream backend {
   server localhost:8065;
   keepalive 32;
}

proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=mattermost_cache:10m max_size=3g inactive=120m use_temp_path=off;

server {
   listen 80;
   server_name yourdomain.com;

   location ~ /api/v[0-9]+/(users/)?websocket$ {
       proxy_set_header Upgrade $http_upgrade;
       proxy_set_header Connection "upgrade";
       client_max_body_size 50M;
       proxy_set_header Host $http_host;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
       proxy_set_header X-Forwarded-Proto $scheme;
       proxy_set_header X-Frame-Options SAMEORIGIN;
       proxy_buffers 256 16k;
       proxy_buffer_size 16k;
       client_body_timeout 60;
       send_timeout 300;
       lingering_timeout 5;
       proxy_connect_timeout 90;
       proxy_send_timeout 300;
       proxy_read_timeout 90s;
       proxy_pass http://backend;
   }

   location / {
       client_max_body_size 50M;
       proxy_set_header Connection "";
       proxy_set_header Host $http_host;
       proxy_set_header X-Real-IP $remote_addr;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
       proxy_set_header X-Forwarded-Proto $scheme;
       proxy_set_header X-Frame-Options SAMEORIGIN;
       proxy_buffers 256 16k;
       proxy_buffer_size 16k;
       proxy_read_timeout 600s;
       proxy_cache mattermost_cache;
       proxy_cache_revalidate on;
       proxy_cache_min_uses 2;
       proxy_cache_use_stale timeout;
       proxy_cache_lock on;
       proxy_http_version 1.1;
       proxy_pass http://backend;
   }
}


سپس با زدن دکمه Ctrl + X روی کیبورد از فایل خارج شوید، قبل از خروج از شما می‌پرسد که تغییرات ذخیره شوند که باید با زدن Y آن را تایید کنید و اینتر بزنید.

اکنون با این دستور تنظیمات ایجاد شده را به لیست سایت‌های فعال وب‌سرور اضافه می‌کنیم:

sudo ln -s /etc/nginx/sites-available/mattermost.conf /etc/nginx/sites-enabled/mattermost.conf

اکنون جهت اطمینان این دستور را اجرا می‌کنیم تا اطمینان حاصل کنیم تنظیمات ما صحیح هستند:

sudo nginx -t

در پاسخ این دستور باید syntax is ok و test is successful را مشاهده کنیم.

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

sudo systemctl restart nginx

و در ادامه سرویس مترموست را فعال می‌کنیم (بعد از زدن دستور، اجرای آن بسته به سخت‌افزار سرورتان ممکن است کمی طول بکشد):

sudo systemctl start mattermost

حالا اگر همه چیز را به درستی انجام داده باشید، در مرورگر (کروم، فایرفاکس و…) آدرس دسترسی (http://yourdomain.com) را بزنید تا وارد محیط مدیریت مترموست بشوید.

اگر مترموست را بدون دامنه و فقط بر اساس آی پی نصب کرده باشید باید آدرس آی‌پی را در مرورگر به این فرمت http://37.32.29.232 بزنید تا صفحه ابتدایی را ببینید:

آموزش mattermost
صفحه اصلی Mattermost ب قابلیت دانلود نسخه وب و دسکتاپ

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

نصب SSL

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

برای این کار ابتدا این دستور را اجرا می‌کنیم:

sudo apt install python3-certbot-nginx

به پرسش پاسخ Yes می‌دهیم تا نصب انجام شود.

حالا باید برای دامنه‌مان SSL را فعال کنیم:

sudo certbot --nginx -d yourdomain.com

توجه کنید که به جای yourdomain.com باید آدرس دامنه خودتان را تایپ کنید. در ادامه چند سوال از شما پرسیده می‌شود و آدرس ایمیل‌تان را هم باید بدهید تا مراحل نصب و فعال‌سازی SSL انجام شود.

حالا مجددا فایل تنظیمات مترموست را باز زدن این دستور باز می‌کنیم:

sudo nano /opt/mattermost/config/config.json

و در همان ابتدای فایل که آدرس دامنه را اضافه کرده بودیم، آدرس را از

http://yourdomain.com

به

https://yourdomain.com

اصلاح می‌کنیم. (توجه کنید که یک حرف s اضافه شده است) که مشخصه استفاده از SSL است.

حالا سرویس مترموست را ریستارت می‌کنیم:

sudo systemctl restart mattermost

مراحل نصب تمام شد!

تنظیمات اولیه مدیریتی

در مرورگر (کروم، فایرفاکس و…) آدرس دسترسی (https://yourdomain.com) را بزنید تا وارد محیط مدیریت مترموست بشوید. و همانطور که گفتیم این صفحه برایتان باز می‌شود:

پیشنهاد می‌کنیم گزینه View in Browser را انتخاب کنید و در مرحله بعد باید یک حساب کاربری و رمز عبور برای مدیر اصلی ایجاد کنید.

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

تنظیمات mattermost
تنظیمات اولیه بعد از نصب Mattermost

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

کاربران از سه روش می‌توانند از مترموست استفاده کنند:

  • نسخه تحت وب که با زدن آدرس دامنه در مرورگر (مانند کروم) قابل استفاده است.
  • اپلیکیشن‌های موبایل برای اندروید و آی‌اواس
  • اپلیکیشن اختصاصی سیستم‌عامل (ویندوز، مک، لینوکس)

برای دانلود اپلیکیشن‌ها می‌توانید به این آدرس مراجعه کنید:

mattermost.com

نویسنده

محمد صالحی

۴ نظر

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *


ارسال دیدگاه در وبلاگ پارس‌پک را مطالعه کرده و آن‌ها را می‌پذیرم.

    بسیار آموزنده

    احمد
    دوشنبه ۲ آبان ۱۴۰۱

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

    محمد جان نثاری
    سه‌شنبه ۳ آبان ۱۴۰۱

    سلام و وقت بخیر.
    من این رو روی سرور داخلی خودم نصب کردم و در بستر شبکه خودم مشکلی ندارم ولی با آی پی ولیدی که دارم و برای مثال با پورت 4030 دسترسی دادم بهش. صفحه ای که برای من نمایش میده Welcome to nginx! هست. برای رفع این مشکل چه باید کرد. ممنون میشم راهنمایی بفرمایید.

    hamed
    دوشنبه ۳۰ مرداد ۱۴۰۲

      سلام وقت شما بخیر
      پیشنهاد میشه با اسکریپت اتوماتیک نصب بشه که کانفیگ ها رو خودش ایجاد کنه. در صورت نصب دستی باید کانفیگ وب سرور اصلاح بشه و یک virtual host برای سرویس Mattermost ایجاد کنید.

      مهسا رحمانی
      شنبه ۶ آبان ۱۴۰۲