مدیریت کاربران ssh (ارتباطات ایمن با میزبان از راه دور)
مدیریت کاربران ssh
همه کاربران در سیستم عامل لینوکس بایستی قادر به مدیریت سیستم عامل از راه دور از طریق شبکه به صورت ریموت باشند.
تقریبا همه مدیران وب سایت ها و وب مسترها به این شیوه سرورهای سایت های خود را مدیریت می کنند
(سرورهای لینوکس به دلیل قیمت پایین تر خیلی رایج است).
در گذشته قبل از سازگاری کامل اینترنت، برنامه های رایج زیادی به منظور لاگین به سرورهای ریموت وجود داشت.
مثل برنامه های telnet و rlogin.
هرچند این برنامه ها از همان ایرادی که دستور ftp داشت رنج می بردند.
تمامی ارتباطات این برنامه ها به صورت متن ساده (رمزنگاری نشده) انجام می گرفت (حتی ارسال نام کاربری و رمز عبور نیز متن ساده بود )
در نتیجه در این دوران آشفته سرقت های اینترنتی استفاده از آنها دیگر مناسب نبود.
تا آنجا که دو رویکرد دیگر (SSH و SCP) به میان آمد که می خواهیم درباره آنها صحبت بکنیم.
SSH
برای حل مشکل های موجود در Telnet پروتکل جدیدی با نام SSH مخفف (Secure Shell) توسعه یافت.
SSH دو مشکل اصلی در رابطه با ارتباط ایمن را بر طرف می کند.
اول اینکه ssh میزبان ریموت را تشخیص هویت می کند (از حملات شخص واسط Man-In-The-Middleجلوگیری کرده)
دوم اینکه همه ارتباطات انجام شده بین میزبان های لوکال و ریموت را رمزنگاری می کند.
SSH از دو بخش تشکیل شده است.
یک سرور SSH که بر روی میزبان ریموت اجرا شده و منتظر تماس های ورودی بر روی پورت 22 می ماند.
در حالی که کلاینت SSH بر روی ماشین محلی برای برقراری ارتباط با ماشین سرور استفاده می شود.
بیشتر توزیع های لینوکس دارای یک اجرا از SSH هستند که OpenSSH نام دارد که از پروژه BSD گرفته شده است.
برخی توزیع ها به صورت پیش فرض دارای بسته های هم کلاینت و هم سرور SSH هستند (مثل ردهت)
در حالی که برخی دیگر مثل (اوبونتو) فقط دارای کلاینت هستند.
برای فعال سازی یک سیستم به دریافت تماس های ریموت بایستی بسته OpenSSH-server نصب شده و پیکربندی و اجرا شده باشد
و (اگر سیستم در پشت یک فایروال قرار گرفته است) بایستی به اتصالات ورودی شبکه بر روی پورت 22 TCP اجازه ورود بدهد.
نکته:
اگر یک سیستم ریموت برای اتصال ندارید ولی می خواهید این مثال ها را امتحان کنید،
ابتدا مطمئن شوید که بسته OpenSSH-server نصب شده باشد که از localhost به عنوان نام میزبان ریموت استفاده می کند.
از این طریق ماشین با خود ارتباط برقرار می کند.
برای نصب این بسته نرم افزاری هم همانطور که قبلا گفتیم می توانیم از دستور apt-get استفاده کنیم.
apt-get install OpenSSH-server
خب گفتیم برای اتصال شما دسترسی به سرور جداگانه ندارید.
حالا بعد از اینکه OpenSSH-server را نصب کردیم می توانیم از سیستم خود به عنوان سرور استفاده کنیم.
یعنی در این حالت سیستم هم سرور هست هم کلاینت. یعنی سیستم از طریق SSH به خودش متصل می شود.
به این منظور نام سرور را localhost می نامیم:
همان طور که مشاهده می کنید اتصال ریموت برقرار است، این اتصال تا زمانی که دستور exit را وارد کنید برقرار است.
شما همچنین می توانید با استفاده از یک کاربر دیگر به صورت ریموت متصل شوید.
برای مثال: اگر کاربر پیش فرض ما rashvand باشد می توانیم با کاربر ali هم به صورت زیر متصل شویم.
علاوه بر اینها ssh ما را قادر می سازد تا یک دستور را اجرا کنیم.
برای مثال می توانیم دستور free را بر روی سیستم ریموت localhost اجرا کنیم به صورت زیر:
می توان این تکنیک را به شیوه ای جذاب تر استفاده کرد.
برای مثال:
به صورت زیر در آن ما یک دستور ls را بر روی سیستم ریموت اجرا کرده و خروجی آن را در داخل یک فایل بر روی سیستم لوکال ذخیره می کنیم:
به استفاده از تک کوتیشن توجه کنید.
این کار انجام می شود چونکه ما نمی خواهیم بسط نام مسیر (expansion pathname) بر روی ماشین لوکال انجام شود.
به جای آن می خواهیم که بر روی سیستم ریموت صورت پذیرد.
علاوه بر این اگر بخواهیم خروجی به یک فایل در ماشین ریموت ریدایرکت شود می توانیم از عملگر ریدایرکت و نام فایل در بین تک کوتیشن استفاده کنیم.
به صورت زیر:
جهت مشاهده دوره های آموزشی بر روی این لینک کلیک نمایید.
نویسنده: موسی رشوند
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.