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

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

Gitlab‌ یکی از معروف ترین منابع رایگان دسترسی به گیت است. گیت لب با استفاده از امکاناتی نظیر مدیریت کد منبع، امکان نظارت و خصوصیات امنیتی ویژه، کاربران بسیاری را به سمت خود کشانده است. گیت لب به تیم ها کمک می‌کند تا چرخه ی عمر محصول را کاهش داده و بهره وری را افزایش دهند که نوبه خود برای مشتریان نیز ارزشمند است.

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

توسعه دهندگان ایرانی اکنون به دنبال این هستند که با مسدود شدن گیت لب چه باید کرد؟

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

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

شما نیز اگر علاقه مند هستید که یک گیت لب به صورت لوکال برای خودتان داشته باشید تا اگر بر روی پروژه‌ای در حال کار هستید، تیم‌تان نیز بتوانند در آن مشارکت کند و یا حتی چندین تیم تشکیل داده و هر کدام بر روی پروژه ای مشغول کار شوند می‌توانید با استفاده از سرویس های ما یک سرور لینوکسی مخصوص برای گیت لب اجاره کرده و در آن گیت لب را نصب کنید. اگر برای مراحل نصب نیز به مشکل خوردید، تیم پیشگامان همواره و به صورت ۲۴/۷ آماده است تا شما را راهنمایی کند.

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

همانطور که در مطالب اخیر خوانده‌اید، bigbluebutton یک سیستم برگزاری کنفرانس آنلاین منبع باز برای آموزش آنلاین است. یک سرور بیگ بلو باتن که حداقل منابع ممکن را داشته باشد تقریبا از ۱۵۰ کاربر به صورت همزمان پشتیبانی می‌کند. برای بسیاری از مدارس و سازمان ها توانایی برگزاری ۳ کلاس هم زمان با ظرفیت ۵۰ نفر و یا ۶ کلاس ۲۵ نفره، ظرفیتی قابل قبول و کافی است. با این حال اگر سازمانی بخواهد از ۱۵۰۰ کاربر در ۵۰ کلاس مختلف همزمان پشتیبانی کند تکلیف چیست؟ یک سرور بیگ بلو باتن نمی‌تواند چنین ظرفیتی را ارائه کند. برای این که چنین امری مقدور باشد، ما از یک لود بالانسر استفاده می‌کنیم که ما را قادر می‌سازد مجموعه‌ای از سرورهای bigbluebutton را مدیریت کنیم. استفاده از لود بالانسر باعث می‌شود مجموعه سرورها به صورت یک سرور بیگ بلو باتن که بسیار مقیاس پذیر است ظاهر شوند.
با استفاده از لود بالانسر، یک مدرسه می‌تواند مجموعه‌ای از ۴ سرور bigbluebutton ایجاد کرده و ۱۶ کلاس همزمان با ۵۰ کاربر را اداره کند. می‌خواهید مقیاس بالاتر داشته باشید؟ سرورهای بیگ بلو باتن بیشتری به مجموعه سرورها اضافه کنید. بیگ بلو باتن اکنون بیش از ۱۰ سال است که در حال توسعه می‌باشد و آخرین نسخه از آن نیز به طور کامل از HTML5 پشتیبانی می‌کند. برای مقیاس بندی سرور، ابتدا از آنلاین بودن سرورها و آمادگی دریافت درخواست API‌ آن مطمئن می‌شویم و سپس بار فعلی سرور (تعداد یوزرهایی که به سرور متصل هستند را مشخص می‌کنیم). با استفاده از این اطلاعات، وقتی برای ایجاد یک کلاس جدید ورودی API دریافت می‌کنیم، آن را بر روی یکی از مجموعه خوشه سرورها قرار می‌دهیم. در واقع لودبالانسر مجموعه ای از سرورهای بیگ بلوباتن را به عنوان یک سرور بسیار مقیاس پذیر ارائه می‌دهد.

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

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

در این مطلب یکی از مهم‌ترین نمونه‌های نقض یکپارچگی در سیستم‌های همتا‌به‌همتای توزیعی را معرفی می‌کنیم: مسئله‌ی خرج مجدد

 

تشبیه

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

مسئله خرج مجدد

یک سیستم همتا‌به‌همتا برای مدیریت مالکیت در بازار املاک و مستغلات را در نظر بگیرید. در چنین سیستمی، دفاترکلی که برای پیگیری اطلاعات مالکیت استفاده می‌شوند، بجای یک پایگاه‌داده‌ی مرکزی روی تک‌تک رایانه‌های اعضای سیستم نگهداری می‌شوند. از این رو، هر همتا نسخه‌ی خودش از دفترکل را نگهداری می‌کند. به محض انتقال مالکیت از یک فرد به فردی دیگر، همه‌ی دفاترکلِ سیستم باید بروزرسانی شوند تا دربرگیرنده‌ی آخرین نگارش از واقعیت باشند. با این وجود، انتقال اطلاعات بین همتاها و بروزرسانی تک‌تک دفاترکل نیاز به زمان دارد. تا زمانی که آخرین عضو سیستم، اطلاعات جدید را دریافت نکرده و دفترکلش را به روز نکرده باشد، سیستم به ثبات نرسیده است. بعضی از اعضای سیستم آخرین انتقالات مالکیت را دریافت می‌کنند، در صورتی که بقیه اعضا هنوز این اطلاعات را دریافت نکرده‌اند؛ این وضعیت که دفاترکلِ همه‌ی اعضا اطلاعات به‌روز‌شده را ندارند، آن‌ها را در معرض سو‌ءاستفاده‌ی اعضایی که اطلاعات کامل را دارند، قرار می‌دهد.
موقعیت پیش‌رو را تصور کنید. شخص شماره ۱ خانه‌ی خود را به شخص شماره ۲ می‌فروشد. انتقال مالکیت از شخص شماره ۱ به شخص شماره ۲، در دفترکل یکی از اعضای سیستم همتا‌به‌همتا ثبت می‌شود. این دفترکل، دیگر اعضا را در جریان این انتقال قرار می‌دهد؛ آن‌ها نیز ما‌بقی اعضا را در جریان قرار می‌دهند تا در نهایت، همه‌ی اعضا از انتقال مالکیت از شخص شماره ۱ به ۲ آگاه شوند. حال فرض کنید شخص شماره ۱ به‌سرعت به یک دفترکل دیگر مراجعه کند و یک انتقال مالکیت دیگر برای همان ملک ثبت کند، اما این بار از شخص شماره ۱ به شخص شماره ۳. اگر این دفترکل هنوز در جریان انتقال مالکیت از شخص شماره ۱ به ۲ قرار نگرفته باشد، انتقال مالکیتِ همان ملک از شخص شماره ۱ به ۳ را تایید کرده و آن را ثبت می‌کند. بنابراین شخص شماره ۱ توانسته از زمان‌بر بودنِ توزیع اطلاعاتِ مربوط به اولین فروشش، بهره‌برداری کند و خانه‌اش را دو‌مرتبه بفروشد. حال آنکه شخص شماره ۲ و ۳ نمی‌توانند همزمان مالک آن خانه باشند و فقط یکی از آن‌ها قرار است صاحب جدید و قانونی خانه باشد. از این رو، این وضعیت مسئله‌ی خرج مجدد نام گرفته است.

اصطلاح خرج مجدد

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

خرج مجدد به عنوان مشکل کپی برداری از کالاهای دیجیتال

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

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

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

خرج مجدد به عنوان نمونه ای از نقض یکپارچگی در سیستم های همتا به همتای توزیعی

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

حل مسئله خرج مجدد به عنوان مشکل کپی برداری از کالاهای دیجیتال

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

حل مسئله خرج مجدد به عنوان نمونه ای از نقض یکپارچگی در سیستم های همتا به همتای توزیعی

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

همانطور که میدانیم فاکتور امنیتی 2 عامله یکی از بهترین راه ها برای امنیت اطلاعات اکانت هایمان است و به این صورت کار میکند که هر زمان خواستید از یک دستگاه دیگر وارد اکانت خود شوید برای شما یک کد ارسال میکند و اگر به این کد دسترسی نداشته باشید نمیتوانید وارد اکانت خود شوید. با استفاده از یک برنامه 2FA (two factor authentication) میتوانید از دسترسی افراد به حساب هایتان صرفا با در دست داشتن پسورد شما جلوگیری کنید.

در این جا البته یک نکته وجود دارد؛ از آن جا که 2FA از یک کلید خاص استفاده میکند، اگر تلفن شما خراب شود یا آن را گم کنید، نمیتوانید به راحتی برنامه را در تلفن جدید خود نصب کنید و بایستی کد اصلی آن تلفن به همراه برنامه اصلی را انتقال دهید. چگونه؟ با ما همراه باشید.

اپلیکیشن های مختلفی که برای احراز هویت وجود دارند، روش های مختلفی برای انتقال به دستگاه های مختلف دارند. در این آموزش ما Google Authenticator را به همراه ساده ترین راه انتقال آن به تلفن جدید شما (در صورتی که به تلفن قبلی خود دسترسی دارید) بررسی می‌کنیم؛ و همینطور اینکه چطور میتوانید برای یک مشکل احتمالی آماده شوید.

نرم افزار احراز هویت گوگل از طریق اسکن کردن یک کد QR که بر روی یک دستگاه دیگر تولید شده است کار میکند. این روند تقریبا آسان است مگر اینکه مجبور شوید برنامه را به تلفن جدید انتقال دهید. به خاطر این که 2FA از کلیدهای امنیتی خاصی استفاده میکند که مختص هر سخت افزار است نمیتوانید Google Auth را به سادگی روی تلفن جدید خود نصب کنید و از آن برای ورود به حساب های خود استفاده کنید. در عوض بایستی کلیدها را به برنامه جدید خود منتقل کنید. ساده ترین روش به خصوص اگر از 2FA برای چندین برنامه استفاده میکنید، استفاده از ویژگی اختصاصی برنامه Google Auth برای انتقال کلیدهای خود از یک تلفن به تلفن دیگر است. با این حال چندین فرضیه در این جا وجود دارد: اول، این که شما به هر دو تلفن قدیمی و جدید نیاز دارید و دوم اینکه شما به دستگاه های اندرویدی احتیاج دارید؛ اگر هرکدام از این شرایط را ندارید، از روش های دیگری میتوانید استفاده کنید که در ادامه بررسی میکنیم.

 

نحوه انتقال اکانت ها به وسیله تلفن های اندرویدی

اگر 2 دستگاه اندرویدی (قدیمی و جدید) در اختیار دارید میتوانید اکانت های خود را با استفاده از یک QR کد، به دستگاه جدید انتقال دهید؛ برای این کار:

  • Google Auth را بر روی گوشی قدیمی خود باز کنید.
  • روی 3 نقطه در سمت راست بالای صفحه بزنید و “transfer accounts” را انتخاب کنید.
  • گزینه “export accounts” را انتخاب کنید؛ ممکن است از شما خواسته شود که هویت خود را از طریق پسورد یا اثر انگشت تایید کنید.
  • اکانت هایی که مایل به انتقال آن ها هستید را انتخاب کرده و بر روی Next کلیک کنید.
  • یک QR کد به شما نمایش داده میشود.
  • بر روی دستگاه جدید خود دستورالعمل های بالا را تکرار کرده ولی بر روی “Import accounts” بزنید.
  • گزینه اسکن QR کد را انتخاب کنید.
  • کد موجود در تلفن قدیمی خود را با دستگاه جدید خود اسکن کنید.

 

روش جایگزین 1: از کدهای پشتیبان خود استفاده کنید

وقتی برای برنامه ای از Google Authenticator استفاده میکنید، قبل از اتمام مراحل به شما به شما یک مجموعه کد بک آپ داده میشود و از شما میخواهد آن را پرینت کرده و یا ذخیره کنید.

اگر تلفن شما به هر دلیلی دچار خرابی شده و یا آن را گم کرده اید، میتوانید از این کدهای بک آپ استفاده کرده و Google Auth را بر روی تلفن جدید خود راه اندازی کنید.

روش جایگزین 2: از هر بارکد اسکرین شات بگیرید

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

فقط کافی است تصویر مورد نظر را روی رایانه قرار دهید، Google Auth را بر روی تلفن جدید خود نصب کنید و در ادامه از علامت + برای اسکن بارکد استفاده کنید.

بیایید فرض کنیم که یک سرور لینوکس در حال اجرا داریم و می‌خواهیم ترافیک گذرنده از آن را ردیابی کنیم و یا این که می‌خواهیم بدانیم که سرور جدید ما در حال انجام چه کاری است؟

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

حال باید ببینیم بهترین راهی که یک ادمین انتخاب می‌کند چه خواهد بود؟

یکی از ابزارهایی که در این حوزه بسیار محبوب بوده Tshark نام دارد که جایگزینی به صورت command line برای Wireshark است؛ چرا که وقتی داریم با یک سرور اصطلاحا headless کار می‌کنیم، یک رابط کاربری گرافیکی به دردمان نخواهد خورد.

با Tshark میتوانید ترافیک پورت مورد نظر خود را ببینید و هم چنین پورت سرور لینوکسی خود را مانیتور کنید.

به چه چیزی احتیاج داریم؟

  • یک لینوکس سرور
  • یک یوزر با دسترسی sudo

 

چگونه Tshark را نصب کنیم؟

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

sudo apt-get install tshark -y

این تمام چیزی است که برای نصب احتیاج دارید.

چگونه رابط شبکه خود را پیدا کنیم؟

با استفاده از Tshark رابط شبکه شما در واقع به یک شماره متصل است. اگر فقط یک Interface دارید، موردی برای نگرانی نیست. با این حال اگر چند interface دارید بایستی بدانید که Tshark به کدام رابط listen میکند. برای این کار از دستور زیر استفاده کنید:

sudo tshark -D

این دستور همه ی Interface های شما را مانند تصویر زیر لیست میکند.

چگونه با استفاده از تی‌شارک listen کنیم؟

حالا که رابط را مشخص کرده ایم، میتوانیم به صورت real-time ترافیک را مشاهده کنیم. برای مثال برای listen کردن بر روی ens5، که سرور اصلی ما است، دستور زیر را تایپ میکنیم:

sudo tshark -i 6

در این جا یک لیست از خروجی پورت های مختلف را داریم :

اگر بخواهیم فقط به یک پورت خاص گوش دهیم نیز Tshark به ما کمک میکند. برای مثال بیایید فرض کنیم که میخواهید فقط ترافیک پورت 22 را بررسی کنیم. در این صورت دستور زیر را تایپ میکنیم:

sudo tshark -i 6 -f "tcp port 22"

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

اگر مطالب سایت پیشگامان گسترش را دنبال کرده باشید حتما مقایسه بین ادوبی کانکت و بیگ‎بلو باتن را مطالعه کرده اید .

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

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

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

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

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

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

بلاک‌‌چین به چه معنا است؟

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

تعریف بلاک چین به عنوان یک ساختمان داده

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

تعریف بلاکچین به عنوان یک الگوریتم

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

تعریف بلاک‌چین به عنوان مجموعه‌ای از فناوری‌ها

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

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

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

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

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

مقدمه

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

ادوبی کانکت: نصب آسان‌تر نسبت به بیگ بلو باتن

شاید مهم ترین ویژگی‌ای که باعث می‌شود کارشناسان فناوری اطلاعات استفاده از ادوبی کانکت را به بیگ بلو باتن ترجیح دهند نصب آسان تر آن باشد. ادوبی کانکت به راحتی بر روی ویندوز سرور قابل نصب است و جدا از برخی جزئیات کلیدی که هنگام نصب بایستی آن ها را رعایت کنید مسئله خاص دیگری ندارد. بعد از نصب نیز پنلی پیش روی شما است که آپشن های فراوانی در اختیار شما می‌گذارد. برای مثال می‌توانید هر تعداد کلاس (meeting) که می‌خواهید بسازید و به رکوردهای این کلاس‌ها نیز دسترسی داشته باشید و آن‌ها را ذخیره کنید. در قسمت مدیریتی نیز می‌توانید یوزر جدید بسازید وآن ها را با دسترسی‌های گوناگون به کلاس‌های مختلف اضافه کنید. در عوض برای نصب بیگ بلو باتن نیاز به یک سرور لینوکسی دارید و مراحل نصب به نسبت پیچیده تر از ادوبی کانکت خواهد بود، به طوری که اگر تا به حال با سرورهای لینوکسی سر و کار نداشته‌اید احتمالا برای نصب به مشکل برخواهید خورد. در ادامه نیز می‌توانید مانند ادوبی کانکت یوزرهای مختلف بسازید و آن ها را به کلاس مورد نظر اضافه کنید. اما این نکته را هم مد نظر داشته باشید که تنظیم https برای کلاس‌های آموزش ادوبی کانکت به آسانی نصب آن نبوده و زمان بیشتری از شما خواهد گرفت.

ادوبی کانکت: پرتال پیشرفته با آپشن‌های بیشتر

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

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

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

جمع بندی

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

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

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

ایمن‌سازی سرورهای لینوکس جنبه های مثبت مختلفی در جهت محافظت داده‌ها، مالکیت معنوی و سایر موارد دارد. مدیر سیستم مسئول بررسی و تامین مقدمات امنیتی سیستم است.
در قسمت اول این مطلب ما 10 نکته امنیتی مهم برای نصب سیستم لینوکس را ارائه می‌دهیم.
بایستی توجه داشته باشید که دستوراتی که در ادامه به آن ها اشاره می‌کنیم با ورژن‌های Ubuntu/Debian و CentOS/RHEL لینوکس سازگاری دارند.

1- رمزگذاری ارتباط داده‌ها برای سرور لینوکس:

تمامی داده‌هایی که در طول شبکه انتقال پیدا میکنند قابل نظارت کردن هستند و همینطور میتوانید این داده‌ها را به وسیله پسورد و یا certificate مخصوص، رمزگذاری کنید. به چند نمونه از این روش‌ها اشاره می‌کنیم.
• برای انتقال فایل می‌توانید از دستورهای ssh، scp، rsync و یا sftp استفاده کنید. همچنین با استفاده دستور sshf می‌توانید فایل‌های سرور ریموت و یا دایرکتوری خود را mount کنید.
• GnuPG به شما اجازه می‌دهد تا داده‌ها و ارتباطات خود را با استفاده از یک سیستم مدیریت کلیدی متنوع و همچنین دسترسی به ماژول‌های مختلف دایرکتوری کلیدهای عمومی رمزگذاری کنید.
• نصب و استفاده از Apache SSL
• نصب و استفاده از Lighttpd SSL

2- استفاده از سرویس‌های FTP، Telnet را بر روی لینوکس متوقف کنید:

تحت اکثر تنظیمات شبکه، نام کاربری، رمز عبور، دستورات rsh، telnet، FTP و همینطور فایل‌های منتقل شده توسط هر شخصی در همان شبکه قابل ضبط هستند. راه حل متداول برای رفع این مشکل استفاده از OpenSSH، SFTP و یا FTPS است که رمزگذاری SSL یا TLS را به FTP اضافه می‌کنند.
برای این منظور به شکل زیر از دستور yum استفاده کنید:

yum erase xinetd ypserv tftp-server telnet-server rsh-server#

اگر از سرور لینوکسی بر پایه ی اوبونتو/دبیان استفاده میکنید، از دستور زیر برای حذف سرویس های نا امن استفاده کنید:

sudo apt-get --purge remove xinetd nis yp-tools tftpd atftpd tftpd-hpa telnetd rsh-server rsh-redone-server$
3- برای حداقل‌سازی آسیب به لینوکس از نصب نرم افزارهای اضافه خودداری کنید:

برای جلوگیری از آسیب پذیری به نرم افزار از نصب نرم افزارهای غیرضروری خودداری کنید. از سیستم‌های مدیریت بسته RPM مانند Yum و apt-get و dpkg برای بررسی و مرور بسته‌های نصب شده بر روی سیستم خود استفاده کنید.برای پاک کردن پکیج های غیر ضروری، مانند دستور زیر عمل کنید:

yum list installed#
yum list packageName#
yum remove packageName#

یا

dpkg --list#
dpkg --info packageName#
apt-get remove packageName#
4- کرنل لینوکس خود را آپدیت نگه دارید:

استفاده از پچ‌های امنیتی یکی از مهم‌ترین بخش‌های حفظ و نگهداری سرورهای لینوکس است. لینوکس تمام ابزارهای لازم برای به روزرسانی سیستم شما را فراهم میکند و هم‌چنین امکان استفاده آسان بین نسخه ها را نیز فراهم می‌کند.
همه‌ به روزرسانی‌های امنیتی باید در اسرع وقت بررسی و اعمال شوند، برای این منظور بایستی از دستورات yum و یا apt-get استفاده کنید.

yum update#

یا

apt-get update && apt-get upgrade#
5- حساب‌های کاربری لینوکس و استفاده از رمز عبور قوی برای آن‌ها:

از دستورات useradd/usermod برای ایجاد و نگهداری حساب‌های کاربری استفاده کنید؛ همچنین اطمینان حاصل کنید که از یک رمز عبور قوی استفاده می‌کنید. به عنوان مثال یک رمز عبور خوب شامل 8 کاراکتر و ترکیبی از اعداد و کاراکترها و حروف بزرگ و کوچک است.
برای یافتن رمز عبورهای ضعیف می‌توانید از ابزاری مانند “John the ripper” استفاده کنید.

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

دستور change command تاریخ بین تغییر پسورد، از اولین پسورد تنظیم شده تا اخرین پسورد را اندازه گیری کرده و تغییر می‌دهد. سیستم از این اطلاعات برای تعیین کردن زمان تغییر پسورد توسط کاربر استفاده می‌کند.

7- محدودسازی استفاده از رمزهای عبور قبلی در لینوکس:

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

8- می‌توانید از دستور faillog برای نمایش سوابق عدم ورود موفق به سیستم و یا محدود کردن ورود ناموفق به سیستم، استفاده کنید:

دستور faillog محتوای failure log را از آدرس var/log/faillog database/log file فرمت می‌کند. همچنین می‌توانید برای ذخیره تعداد ورودهای ناموفق به سیستم از آن استفاده کنید. برای دیدن تلاش های ناموفق ورود به سیستم مانند زیر عمل کنید:

Faillog

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

faillog -r -u userName

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

# lock Linux account
passwd -l userName
# unlock Linux account
passwd -u userName
9- چگونه اطمینان حاصل کنیم که هیچ اکانتی پسورد خالی ندارد:

دستور زیر را اجرا کنید:

# awk -F: '($2 == "") {print}' /etc/shadow

برای قفل کردن همه‌ی حساب ها با رمز عبور خالی:

# passwd -l accountName
10- چگونه اطمینان حاصل کنیم که هیچ اکانتی غیر از Root مقدار UID برابر 0 ندارد:

فقط اکانت root دارای UID برابر 0 و مجوز کامل برای دسترسی به سیستم است. دستور زیر را اجرا کنید تا همه اکانت‌ها با UID=0 نمایش داده شوند:

# awk -F: '($3 == "0") {print}' /etc/passwd

در ادامه باید تنها یک خط مانند زیر ببینید:

root:x:0:0:root:/root:/bin/bash

اگر خطوط دیگری را مشاهده می‌کنید آن ها را حذف کنید.

11- غیرفعال کردن سرویس‌های غیر ضروری:

همه خدمات غیرضروری و سرویس‌هایی که در پس زمینه اجرا میشوند را متوقف کنید، تمام سرویس هایی که در start-up اجرا می‌شوند را متوقف کنید. دستور زیر را اجرا کنید تا تمام سرویس‌هایی که در بوت اجرا می‌شوند را ببینید.

chkconfig --list | grep '3:on'#

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

service serviceName stop#
chkconfig serviceName off#

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

systemctl disable service#
systemctl disable httpd.service#

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

systemctl disable service#
systemctl disable httpd.service#

برای گزارش وضعیت سرویس از دستور زیر استفاده کنید:

systemctl status service#
systemctl status httpd.service#

برای دریافت گزارشات لاگ، از دستور زیر استفاده کنید:

journalctl#
journalctl -u network.service#
journalctl -u ssh.service#
journalctl -f#
journalctl -k#
12- پورت‌های باز شبکه را پیدا کنید. (Listening Ports):

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

netstat -tulpn

یا از دستور SS به همین منظور:

$ ss -tulpn

و یا:

nmap -sT -O localhost
nmap -sT -O server.example.com
13- از SUID و SGID های غیرضروری جلوگیری کنید:

زمانی که فایل های SUID و SGID مشکلی دارند ممکن است با مشکلات امنیتی و باگ های سیستمی رو به رو شوید، بروز این مشکلات برای تمام کاربرانی که با سیستم کار میکنند امکان پذیر است در نتیجه پیشنهاد میکنیم برای پیدا کردن این مشکلات از دستور زیر استفاده کنید:

#See all set user id files:
find / -perm +4000
# See all group id files
find / -perm +2000
# Or combine both in a single command
find / \( -perm -4000 -o -perm -2000 \) -print
find / -path -prune -o -type f -perm +6000 -ls
14- پیدا کردن فایل های World-Writable:

فایل های world-writable میتوانند تبدیل به یک مشکل امنیتی شوند، از دستور زیر برای پیدا کردن این فایل ها استفاده کنید:

find /dir -xdev -type d \ (-perm -0002 -a! -perm -1000 \) -print

بعد از این میتوانید مقادیری که میخواهید را نگه داشته و بقیه را حذف کنید.

15- فایل هایی که مربوط به هیچ کاربری نمیشوند را پیدا کنید:

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

find /dir -xdev \ (-nouser -o -nogroup \) -print

بعد از اینکه این فایل ها را پیدا کردید، بایستی آن را به یک کاربر یا گروه خاص اختصاص داده یا آن را حذف کنید.

16- دستگاه های USB، Firewire، thunderbolt را غیرفعال کنید:

برای غیرفعال کردن دیوایس های USB از دستور زیر استفاده کنید:

echo 'install usb-storage /bin/true' >> /etc/modprobe.d/disable-usb-storage.conf#

همچنین برای غیرفعال کردن ماژول های firewire و thunderbolt، از دستور زیر استفاده کنید:

echo "blacklist firewire-core" >> /etc/modprobe.d/firewire.conf#
echo "blacklist thunderbolt" >> /etc/modprobe.d/thunderbolt.conf#

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

17- سرویس هایی که از آن ها استفاده نمیکنید را غیر فعال کنید:

میتوانید سرویس هایی که از آن استفاده ای نمیشود را با استفاده از دستور زیر غیر فعال کنید:

sudo systemctl stop service $
sudo systemctl disable service $

به عنوان مثال، اگر نمیخواهید مدتی از سرویس NginX استفاده کنید، آن را غیرفعال کنید:

sudo systemctl stop nginx $
sudo systemctl disable nginx $
18- امن سازی سرور Apache، PHP، Nginx:

فایل httpd.conf را ادیت کرده و مقادیر زیر را اضافه کنید:

ServerTokens Prod
ServerSignature Off
TraceEnable Off
Options all -Indexes
Header always unset X-Powered-By

برای ری استارت کردن سرویس های hhtpd/apache2 بر روی لینوکس، دستور زیر را اجرا کنید:

sudo systemctl restart apache2.service $

و یا :

sudo systemctl restart httpd.service $

چنانچه موارد فوق را برای VPS لینوکسی خود انجام داده‌اید، می‌توانید از ابزار OpenSCAP برای بررسی امنیت سرور مجازی خود استفاده کنید.