Academy and Foundation unixmens | Your skills, Your future
2.29K subscribers
6.66K photos
1.37K videos
1.24K files
6.07K links
@unixmens_support
@yashar_esm
[email protected]
یک کانال علمی تکنولوژی
فلسفه متن باز-گنو/لینوکس-امنیت - اقتصاد
دیجیتال
Technology-driven -بیزینس های مبتنی بر تکنولوژی
Enterprise open source
ارایه دهنده راهکارهای ارتقای سازمانی - فردی - تیمی
Download Telegram
Glances چیست؟

Glances یک نرم‌افزار Open source و cross-platform جهت مانیتورینگ (real-time) مانند (top و htop) قابل‌استفاده بر روی سرورهای مجازی است. این نرم‌افزار می‌تواند در حالت‌های (standalone)، (clinet/server) و حالت (web server) سرویس‌دهی کند.
استفاده از Glances برای مانیتورینگ سرور مجازی

جهت اجرا در حالت وب‌سرویس نیاز به نصب (python bottle) و (WSGI) دارید.
مرحله اول نصب:

sudo apt install glances python-bottle #Debian/Ubuntu
sudo yum install glances python-bottle #RHEL/CentOS
sudo dnf install glancespython-bottle #Fedora 22

پس از نصب برای اجرا از –w استفاده کنید تا برنامه در حالت وب سرور اجرا شود:

glances -w
یا
glances -w

برای باز کردن پورت ۶۱۲۰۸ می‌توان از فرمان زیر استفاده کرد:

sudo firewall-cmd –permanent –add-port=61208/tcp
sudo firewall-cmd –reload
و یا
sudo ufw allow 61208/tcp
sudo ufw allow reload

بعد از انجام مراحل بالا سرور با آدرس (https://server_IP:61208) در دسترس خواهد بود.
درصورتی که تمایل دارید این نرم‌افزار به‌عنوان سرویس بر روی سرور شما اجرا شود، می‌توانید به‌وسیله‌ی دستورات زیر آن‌را به سرویس‌ها اضافه کنید:

$ sudo vim /usr/lib/systemd/system/glancesweb.service

و اطلاعات زیر را در این فایل اضافه کنید:

[Unit]
Description = Glances in Web Server Mode
After = network.target
[Service]
ExecStart = /usr/bin/glances -w -t 5
[Install]
WantedBy = multi-user.target

در ادامه تصاویر این نرم‌افزار را خواهید دید.
توجه داشته باشید بعد از (URL) می‌توانید زمان به‌روزرسانی خودکار را نیز برای صفحه مشخص کنید.

https://SERVERI_P:61208/8
بر اساس جدیدترین آمار منتشر شده در سال ۲۰۱۹، همچنان در تمامی کسب‌وکارها، از کسب‌وکارهای کوچک گرفته تا شرکت‌های بزرگ، خطاهای انسانی همچنان در صدر نگرانی‌های امنیت شبکه به شمار می‌آید.
Academy and Foundation unixmens | Your skills, Your future
بر اساس جدیدترین آمار منتشر شده در سال ۲۰۱۹، همچنان در تمامی کسب‌وکارها، از کسب‌وکارهای کوچک گرفته تا شرکت‌های بزرگ، خطاهای انسانی همچنان در صدر نگرانی‌های امنیت شبکه به شمار می‌آید.
آمار ماهانه حوادث امنیت شبکه

خطاهای انسانی به‌خصوص در مورد امنیت شبکه نقش پررنگ‌تری به خود می‌گیرد. جدیدترین تحقیقات صورت گرفته توسط سیستم‌های BAE (شرکت صنایع دفاعی و هوافضایی بریتانیا) در سال ۲۰۱۸ و ۲۰۱۹ میلادی نشان می‌دهد که ۷۱ درصد از تمام حوادث اینترنتی توسط حملات فیشینگ رخ داده که بیش از دوسوم آن‌ها (حدود ۶۵ درصد) ناشی از ویروس‌ها یا بدافزارها بوده است.

تیم‌های تخصصی امنیتی IT که با تهدیدات اینترنتی مبارزه می‌کنند، هر ماه با تعداد روزافزونی از حوادث مواجه می‌شوند. دوسوم از سازمان‌ها (حدود ۶۶ درصد) در سراسر جهان ماهانه حداقل یک تا حداکثر ۲۵ حادثه‌ی امنیتی را تجربه می‌کنند!

جالب این است که یک‌چهارم از این سازمان‌ها ماهانه تا ۹۹ و ۸ درصد از آن‌ها ماهانه با بیش از ۱۰۰ حادثه‌ی امنیتی روبه‌رو هستند.
تاثیر خطاهای انسانی بر حوادث امنیتی

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

اکنون سؤال این است که باوجود استفاده از جدیدترین سیستم‌های مبارزه با تهدیدات اینترنتی، پس چرا همچنان شاهد بروز حوادث امنیتی در اکثر شرکت‌های کوچک و بزرگ در سراسر جهان هستیم؟

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

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

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

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

#security @unixmens
💻 P0SCon2019

Join P0SCon2019 and send your abstract of speech or workshop to be a speaker at P0SCon.

More information:
https://poscon.ir

Deadline:
11 Sep 2019

Conference Date:
12 Oct 2019

Urmia University of Technology
Media is too big
VIEW IN TELEGRAM
خبر خوش :
پروکسیموکس با ویژگی های جدید ریلیز شد .
Whats new in Proxmox VE 6.0
آشنایی با پروتکل های مسیر یابی #routing #route @unixmens
Academy and Foundation unixmens | Your skills, Your future
آشنایی با پروتکل های مسیر یابی #routing #route @unixmens
پروتکل های مسیریابی شبکه

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

رایج‌ترین پروتکل‌های مسیریابی شبکه عبارت‌اند از: RIP, IGRP, EIGRP, OSPF, IS-IS, BGP.

این پروتکل‌ها در دو گروه مسیریابی قرار می‌گیرند که عبارت‌اند از پروتکل‌های Distance Vector و پروتکل‌های Link State.
Distance vector protocols

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

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

این پروتکل‌ها از subnet mask های ثابت استفاده می‌کنند که مقیاس‌پذیر نیستند.
Link state protocols

این پروتکل‌ها اطلاعات مسیریابی را تنها زمان بروز تغییرات انتشار می‌دهند؛ به همین دلیل به صورت مؤثر از پهنای باند استفاده می‌کنند.

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

این پروتکل‌ها از چندین subnet mask استفاده می‌کنند که هم مقیاس‌پذیر هستند و هم مسیریابی را بهتر انجام می‌دهند.
پروتکل های مسیریابی شبکه
پروتکل IGRP

پروتکل IGRP مخفف عبارت Interior Gateway Routing Protocol بوده و یک پروتکل distance vector است. این پروتکل در سیستم‌های «سیسکو» (Cisco) فراهم شده و به‌منظور مسیریابی چندین پروتکل در شبکه‌های کوچک و متوسط سیسکو مورد استفاده قرار می‌گیرد. به همین دلیل جهت استفاده از این پروتکل حتماً باید از روترهای شرکت سیسکو استفاده کنید؛ برخلاف IP RIP و IPX RIP که برای انواع شبکه‌ها طراحی شده‌اند.

ا IGRP می‌تواند پروتکل‌های IP، IPX، Decnet و AppleTalk را مسیریابی کند. این امر باعث می‌شود که IGRP برای کاربرانی که از چندین پروتکل استفاده می‌کنند بسیار تطبیق‌پذیر باشد.

این پروتکل تا حدی مقیاس‌پذیری بیشتری از RIP دارد. زیرا از تعداد ۱۰۰ هاپ (hop) پشتیبانی کرده، هر ۹۰ ثانیه اطلاع‌رسانی می‌کند و از ترکیبی از پنج معیار مختلف برای انتخاب بهترین مقصد مسیر استفاده می‌کند.

توجه داشته باشید چون IGRP دیرتر اطلاع‌رسانی می‌کند و پهنای باند کمتری را نسبت به RIP مصرف می‌کند، همگرایی آن کندتر انجام خواهد شد. علت آن است که ۹۰ ثانیه طول می‌کشد تا روترها از تغییرات به وجود آمده در شبکه مطلع شوند.
ویژگی های پروتکل IGRP

یک پروتکل Distance Vector است.
پروتکل‌های IP، IPX، Decnet و Appletalk را مسیریابی می‌کند.
جداول مسیریابی هر ۹۰ ثانیه منتشر می‌شود.
تعداد هاپ : ۱۰۰
ا Subnet Masks ثابت
متریک: پهنای باند، تأخیر، قابلیت اطمینان، بارکاری و MTU Size
خلاصه‌سازی در Network Class Address
ا Load Balancing در ۶ مسیر برابر یا نابرابر (IOS 11.0)
محاسبه متریک = کمترین پهنای باند در طول مسیر * میزان تاخیر (usec)
تقسیم افقی
تایمرها: (Invalid Timer (270 sec), Flush Timer (630 sec), Holddown Timer (280 sec

پروتکل EIGRP

پروتکل EIGRP مخفف عبارت Enhanced Interior Gateway Routing Protocol است. این پروتکل در حقیقت نسخه‌ی پیشرفته‌ی پروتکل IGRP است. EIGRP یک پروتکل مسیریابی هیبرید بوده که توسط سیستم‌های سیسکو فراهم شده و در اکثر پروتکل‌های شبکه‌ای شرکت سیسکو مورد استفاده قرار می‌گیرد.

ا EIGRP ویژگی‌های هر دو پروتکل مسیریابی distance vector و link state را دارد. این پروتکل تمام مشخصات IGRP را داشته و از متریک‌های مشابهی جهت انتخاب بهترین مسیر استفاده می‌کند.

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

توزیع مجدد بین پروتکل‌های IGRP و EIGRP هم خودکار است. این پروتکل از ۲۵۵ هاپ و Variable Length Subnet mask پشتیبانی می‌کند.
همگرایی
Academy and Foundation unixmens | Your skills, Your future
آشنایی با پروتکل های مسیر یابی #routing #route @unixmens
همگرایی با EIGRP سریع‌تر صورت می‌گیرد؛ چون در آن از الگوریتمی به نام DUAL استفاده می‌شود. هنگامی‌که یک روتر تشخیص می‌دهد که یکی از مسیرها از دسترس خارج شده، این الگوریتم اجرا می‌شود. روتر از همسایه‌هایش درخواست می‌کند که به دنبال یک مسیر جایگزین بگردند؛ به‌گونه‌ای که دور (loop) در شبکه ایجاد نکند.

ا EIGRP جدول مسیریابی را با مسیر جدید و متریک مربوط به آن به‌روزرسانی می‌کند. فقط زمانی که مسیر تغییر پیدا می‌کند، اطلاع‌رسانی صورت می‌گیرد. همین امر باعث می‌شود که از پهنای باند، به‌مراتب بهتر از پروتکل‌های distance vector استفاده شود.
سیستم‌های مستقل

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

یک پروتکل پیشرفته‌ی Distance Vector است.
پروتکل‌های IP، IPX، Decnet و Appletalk را مسیریابی می‌کند.
اطلاع‌رسانی مسیریابی: فقط زمانی که تغییر مسیر اتفاق بیفتد.
متریک: پهنای باند، تأخیر، قابلیت اطمینان، بارکاری و MTU Size
تعداد هاپ: ۲۵۵
Length Subnet Mask Variable
خلاصه‌سازی در Network Class Address یا Subnet Boundary
ا Load Balancing در ۶ مسیر برابر یا نابرابر (IOS 11.0)
تایمرها: زمان فعال (۱۸۰ ثانیه)
محاسبه متریک: کمترین پهنای باند در طول مسیر * میزان تاخیر (میلی‌ثانیه) * ۲۵۶
تقسیم افقی
آدرس چندگانه LSA: 224.0.0.10

پروتکل OSPF

ا OSFP مخفف عبارت Open Shortest Path First بوده و یک پروتکل Link State است. این پروتکل برای مسیریابی IP شبکه‌های گسترده استفاده می‌شود. پروتکل Link State یک اطلاعیه برای تمام همسایگان متصل در یک ناحیه می‌فرستد. هر روتر OSPF که فعال شود، یک بسته‌ با نام Hello به تمام روترهای دیگر ارسال می‌کند.

بسته‌ی Hello حاوی اطلاعاتی نظیر تایمرهای روتر، ID روتر و Subnet mask است. چنانچه روترهای دیگر این اطلاعات را تائید کنند، آنگاه روتر جدید وارد سیستم می‌شود. روترهای همسایه با تغییر پایگاه داده‌ی link state یک مجاورت یا adjacency ایجاد می‌کنند.

روترهای point-to-point و point-to-multipoint به‌صورت خودکار مجاورت ایجاد می‌کنند. روترهای پیکربندی شده با رابط‌های OSPF مانند broadcast و NBMA از یک روتر تعیین شده استفاده می‌کنند تا بتوانند این مجاورت را ایجاد کنند.
همگرایی

الگوریتم SPF با نام Dijkstra باعث می‌شود که کوتاه‌ترین مسیر از منبع تا مقصد مشخص شود. ازآنجایی‌که هر روتر OSPF یک کپی از توپولوژی پایگاه داده را در اختیار دارد، هر تغییر مسیری به‌سرعت تشخیص داده می‌شود. تشخیص تغییرات و جایگزینی روترها بسیار سریع‌تر از پروتکل‌های distance vector انجام می‌شود.
ویژگی ‌های پروتکل OSPF

یک پروتکل Link State است.
قابلیت مسیریابی IP
اطلاع‌رسانی مسیریابی: فقط زمانی که تغییر مسیر اتفاق بیفتد.
متریک: هزینه‌ی ترکیبی هر روتر تا مقصد.
تعداد هاپ: هیچ (محدود شده توسط شبکه)
Variable Length Subnet Mask
خلاصه‌سازی در Network Class Address یا Subnet Boundary
ا Load Balancing از طریق ۴ مسیر برابر
نوع روتر: Internal, Backbone, ABR, ASBR
نوع نواحی: Backbone, Stubby, Not-So-Stubby, Totally Stubby
LSA نوع: (Intra-area (1,2) Inter-area (3,4), External (5,7
تایمرها: Hello Interval و Dead Interval (برای انواع شبکه متفاوت است)
LSA Multicast آدرس: ۲۲۴.۰.۰.۵ و ۲۲۴.۰.۰.۶
نوع رابط: Point to Point, Broadcast, Non-Broadcast, Point to Multipoint, Loopback

پروتکل IS-IS

پروتکل مسیریابی IS-IS مخفف عبارت Intermediate System-Intermediate System است. IS-IS یک پروتکل link state مشابه با OSPF بوده که در سازمان‌های بزرگ و مشتریان ISP مورد استفاده قرار می‌گیرد. سیستم Intermediate یک روتر است و IS-IS یک پروتکل مسیریابی بوده که بسته‌ها را بین سیستم‌های Intermediate مسیریابی می‌کند. IS-IS از دیتابیس link state و الگوریتم SPF برای انتخاب کوتاه‌ترین مسیر استفاده می‌کند.

روترهای همسایه در لینک‌های Point to point و point to multipoint مجاورت را توسط ارسال بسته‌های Hello و تبادل دیتابیس link state ایجاد می‌کنند. روترهای IS-IS موجود در شبکه‌های broadcast و NBMA، یک روتر مشخص را انتخاب می‌کنند که مجاورت را با تمام روترهای همسایه در شبکه ایجاد می‌کند.
Academy and Foundation unixmens | Your skills, Your future
آشنایی با پروتکل های مسیر یابی #routing #route @unixmens
این روتر تعیین‌شده و روترهای دیگر، مجاورت را با تمام روترهای همسایه از طریق خبررسانی چندرسانه‌ای multicasting در شبکه ایجاد می‌کنند. IS-IS از ناحیه‌ی سلسله‌مراتبی با روترهای سطح ۱ و ۲ استفاده می‌کند. روترهای سطح ۱ مانند روترهای OSPF هستند که هیچ ارتباط مستقیمی با خارج از ناحیه‌ی خود ندارند. روترهای سطح ۲ شامل نواحی اصلی می‌شوند که با نواحی دیگر اتصال برقرار می‌کنند.

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

یک پروتکل Link State است.
ا IP و CLNS را مسیریابی می‌کند.
اطلاع‌رسانی مسیریابی: فقط زمانی که تغییر مسیر اتفاق بیفتد.
متریک: هزینه متغیر
تعداد هاپ: هیچ (محدود شده توسط شبکه)
Variable Length Subnet Mask
ا خلاصه‌سازی در Network Class Address یا Subnet Boundary
ا Load Balancing از طریق ۶ مسیر برابر
تایمرها: Hello Interval, Hello Multiplier
نوع نواحی: مانند OSPF سلسله مراتبی است.
نوع روترها: سطح ۱ و سطح ۲
LSP نوع: Internal L1 and L2, External L2
انتخاب روتر تعیین‌شده، بدون BDR

پروتکل BGP

پروتکل BGP مخفف عبارت Border Gateway Protocol است. BGP یک پروتکل Exterior gateway بوده که با پروتکل‌های interior gateway کاملاً متفاوت است. این تمایز بسیار مهم است چون سیستم‌های مستقل باید از پروتکل‌های دیگری مانند EIGRP استفاده کنند. پروتکل‌های Exterior gateway مانند BGP سیستم‌های مستقلی را مسیریابی می‌کنند که یک AS ویژه به آن‌ها اختصاص داده‌شده است.

شماره‌های AS می‌توانند به یک موقعیت با یک یا چند روتر BGP اختصاص یابند. جدول مسیریابی BGP از IP آدرس‌های مقصد، مسیر AS برای رسیدن به مقصد و آدرس هاپ روتر بعدی تشکیل شده است. مسیر AS مجموعه‌ای از شماره‌های AS است که بسته‌های مسیریابی هر موقعیت را نشان می‌دهد ( برخلاف EIGRP که از سیستم‌های مستقل هم استفاده می‌کند).

یک شبکه EIGRP می‌تواند چندین سیستم مستقل را پیکربندی کند. تمام سیستم‌ها توسط شرکت مدیریت می‌شوند تا مواردی مانند خلاصه‌سازی مسیر، توزیع مجدد و فیلتر کردن اعمال شوند. از پروتکل‌های BGP در سازمان‌های بسیار بزرگ و ارائه‌دهندگان خدمات اینترنتی (ISP) که دارای ارتباطات اینترنتی دوگانه هستند، استفاده می‌شود. این شرکت‌ها دارای یک یا دو روتر هستند که به ارائه‌دهنده‌ی خدمات اینترنتی متصل می‌شوند. BGP بسته‌ها را از طریق یک شبکه ISP مسیریابی می‌کند.

ا ISP دارای شماره AS مخصوصی است که توسط InterNIC به آن اختصاص داده شده است. مشتریان جدید می‌توانند برای دفتر خود یک AS اختصاصی از ISP یا InterNIC سفارش دهند. هر روتر BGP می‌تواند با استفاده از نقشه‌های مسیر به‌جای ارسال / دریافت کل جدول مسیریابی اینترنت پیکربندی شود.
مؤلفه‌های جدول مسیریابی BGP

IP آدرس مقصد / Subnet Mask
مسیر AS
IP آدرس هاپ بعدی
جایگزین Icinga، یک fork از Nagios
به موجب اختلاف نظر در مدل توسعه انتخابی برای Nagios (که توسط یک شرکت کنترل می‌شود)، تعدادی از توسعه‌دهندگان آن را fork و از نام جدید Icinga استفاده کردند. Icinga کماکان ـ تا جای ممکن - با پیکربندی‌ها و پلاگین‌های Nagios سازگار، اما ویژگی‌های اضافی را به آن افزوده است.
https://www.icinga.org/
راه‌اندازی Munin
هدف Munin مانیتور کردن ماشین‌های متعدد است؛ بنابراین، طبیعی است که از معماری کلاینت/سرور استفاده کند. میزبان مرکزی - یا grapher - داده را از تمام میزبان‌های قابل مانیتور کردن دریافت کرده و نمودارهای گرافیکی تولید می‌کند.
پیکربندی میزبان‌ها برای مانیتور شدن
اولین گام نصب بسته munin-node است. فرآیند پس‌زمینه‌ای که توسط این بسته نصب می‌شود به درگاه ۴۹۴۹ گوش کرده و داده‌های دریافتی از پلاگین‌های فعال را ارسال می‌کند. هر پلاگین یک برنامه ساده است که توضیح مرتبط با داده دریافتی همراه با آخرین مقدار بدست آمده را باز می‌گرداند. پلاگین‌ها در مسیر /usr/share/munin/plugins/ ذخیره شده‌اند اما تنها آن‌هایی که به صورت پیوند نمادین در /etc/munin/plugins/ قرار داشته باشند، استفاده می‌گردند.
زمانی که بسته نصب شود، مجموعه‌ای از پلاگین‌های فعال بر اساس نرم‌افزار موجود و پیکربندی فعلی میزبان تشخیص داده می‌شوند. اگرچه، این پیکربندی خودکار وابسته به قابلیتی است که هر پلاگین باید فراهم کرده باشد و بهتر است که نتایج را به صورت دستی مرور و ویرایش کنیم. مرور گالری پلاگین می‌تواند جالب باشد با این وجود که همه پلاگین‌ها ممکن است شامل مستندات جامع نباشند. با این حال، تمام پلاگین‌ها اسکریپت هستند که اکثر آن‌ها ساده بوده و دارای توضیحات خوبی می‌باشند. مرور /etc/munin/plugins/ شیوه خوبی برای اطلاع از کارکرد هر پلاگین و تشخیص اینکه کدام یک باید حذف شود می‌باشد. به طور مشابه، فعال‌سازی یک پلاگین جالب در /usr/share/munin/plugins/ به سادگی ایجاد پیوند نمادین با استفاده از ln -sf /usr/share/munin/plugins/plugin /etc/munin/plugins/ می‌باشد. به یاد داشته باشید اگر نام پلاگین به زیرخط یا “_” تمام شود، پلاگین نیازمند یک پارامتر است. این پارامتر باید در نام مرتبط با پیوند نمادین ذخیره‌سازی شود؛ برای نمونه، پلاگین “if_” باید همراه با پیوند نمادین if_eth0 فعال‌سازی شود، تا بتواند ترافیک شبکه رابط eth0 را مانیتور کند.
زمانی که تمام پلاگین‌ها راه‌اندازی شوند، پیکربندی فرآیند پس‌زمینه به منظور تعریف کنترل دسترسی به داده‌های گردآوری شده باید بروزرسانی گردد. اینکار شامل عبارت‌های allow در فایل /etc/munin/munin-node.conf می‌شود. پیکربندی پیشفرض به صورت allow ^127\.0\.0\.1$ است که تنها اجازه دسترسی به میزبان محلی را می‌دهد. یک مدیرسیستم معمولا خطی مشابه را همراه با نشانی IP میزبان grapher می‌افزاید، سپس اقدام به راه‌اندازی مجدد فرآیند پس‌زمینه با استفاده از service munin-node restart می‌کند.
در واقع muninشامل مستندات کاملی درباره چگونگی عملکرد و توسعه پلاگین‌ها است.
https://munin-monitoring.org/wiki/plugins
یک پلاگین بهتر است در شرایط مشابه با فراخوانی توسط munin-node مورد آزمون قرار گیرد؛ این عمل با اجرای munin-run plugin به عنوان root شبیه‌سازی می‌شود. یک پارامتر دوم احتمالی که به این دستور داده می‌شود (از جمله config) به عنوان یک پارامتر به پلاگین فرستاده می‌شود.
زمانی که یک پلاگین توسط پارامتر config فراخوانی می‌شود، باید خود را با بازگرداندن مجموعه‌ای از فیلدها تعریف کند:

$ sudo munin-run load config
graph_title Load average
graph_args --base 1000 -l 0
graph_vlabel load
graph_scale no
graph_category system
load.label load
graph_info The load average of the machine describes how many processes are in the run-queue (scheduled to run "immediately").
load.info 5 minute load average

فیلدهای موجود مختلف توسط “مرجع پلاگین” موجود در قسمت “راهنمای Munin” توضیح داده شده‌اند.
https://munin.readthedocs.org/en/latest/reference/plugin.html
زمانی که بدون پارامتر فراخوانی می‌شود، پلاگین به سادگی آخرین مقدار محاسبه شده را باز می‌گرداند؛ برای نمونه، اجرای sudo munin-run load می‌تواند مقدار load.value 0.12 را باز گرداند.
در نهایت، زمانی که یک پلاگین توسط پارامتر autoconf فراخوانی می‌شود، باید مقدار “yes” (گزارش خروج ۰) یا “no” (گزارش خروج ۱) با توجه به اینکه آیا پلاگین باید در این میزبان فعال شود یا خیر را باز گرداند.
پیکربندی Grapher
ا “grapher” در واقع رایانه‌ای است که داده‌ها را گردآوری کرده و نمودارهای مرتبط با آن را رسم می‌کند. نرم‌افزار مورد نیاز در بسته munin قرار دارد. پیکربندی استاندارد munin-cron را هر ۵ دقیقه یکبار اجرا کرده، تا اطلاعات از تمام میزبان‌های موجود در /etc/munin/munin.conf گردآوری شوند (فقط میزبان محلی به صورت پیشفرض قرار دارد)، داده‌های بدست آمده را در فایل‌های RRD، که مخفف Round Robin Database و مناسب ذخیره‌سازی داده‌های متغیر در طول زمان است، ذخیره‌سازی می‌کند که این فایل‌ها در مسیر /var/lib/munin/ قرار دارند و در نهایت یک صفحه HTML همراه با نمودارها در /var/cache/munin/www/ ایجاد می‌کند.
بنابراین تمام ماشین‌های مانیتور شده باید در فایل پیکربندی /etc/munin/munin.conf قرار داشته باشند. هر ماشین به عنوان یک قسمت کامل همراه با نام آن و حداقل یک مدخل address که شامل نشانی IP ماشین است، قرار می‌گیرد.

[ftp.falcot.com]
address 192.168.0.12
use_node_name yes

قسمت‌ها می‌توانند پیچیده‌تر باشند، تا با ترکیب داده‌های بدست آمده از چند ماشین نمودارهای اضافی رسم گردد. مثال‌های موجود در فایل پیکربندی نقطه آغاز مناسبی برای سفارشی‌کردن این فرآیند هستند.
آخرین گام انتشار صفحات تولید شده است؛ اینکار نیازمند پیکربندی سرور وب به گونه‌ای است که محتوای /var/cache/munin/www/ از طریق یک وبسایت قابل دسترس باشد. دسترسی به این وبسایت می‌تواند با استفاده از مکانیزم احرازهویت یا کنترل دسترسی مبتنی بر IP مدیریت شود.
ا AppArmor یک سیستم کنترل دسترسی ضروری یا Mandatory Access Control (MAC) است که درون رابط ماژول‌های امنیتی لینوکس یا Linux Security Modules (LSM) پیاده‌سازی شده است. در عمل، کرنل قبل از هر فراخوانی سیستمی از AppArmor پرس و جو می‌کند تا بداند آیا فرآیند مجاز به انجام عملیات مذکور است یا خیر. از طریق این مکانیزم، AppArmor برنامه‌ها را محدود به مجموعه کوچکی از منابع می‌کند.
ا AppArmor مجموعه‌ای از قوانین (که بنام “پروفایل” شناخته می‌شوند) را روی هر برنامه اعمال می‌کند. پروفایل اعمال شده توسط کرنل وابسته با مکان نصب اولیه برنامه اجرایی است. بر خلاف SELinux قوانین اعمال شده مبتنی بر کاربر نیستند. تمام کاربران هنگام اجرای برنامه مشابه از یک مجموعه قوانین پیروی می‌کنند (اما مجوزهای سنتی کاربری هنوز برقرار بوده و ممکن است عملکرد متفاوتی داشته باشند!).
پروفایل‌های AppArmor در /etc/apparmor.d/ ذخیره‌سازی شده و شامل فهرستی از قوانین کنترل دسترسی هستند که منابع مختلف را برای هر برنامه مشخص می‌کنند. پروفایل‌ها با استفاده از دستور apparmor_parser کامپایل شده و درون کرنل قرار می‌گیرند. هر پروفایل تنها می‌تواند در یکی از حالت‌های enforcing یا complaining بارگیری شود. اولی با توجه به خط مشی امنیتی، تلاش‌های خرابکارانه را گزارش می‌دهد در صورتی که دومی اجباری در پیروی از خط مشی نداشته ولی فراخوانی‌های سیستمی غیرمجاز را ذخیره‌سازی می‌کند.


#security @unixmens