منو سایت

  • خانه
  • وبلاگ
  • همه چیز درباره کلیدها در محیط لینوکس و ویندوز

همه چیز درباره کلیدها در محیط لینوکس و ویندوز

 تاریخ انتشار :
/
  وبلاگ
همه چیز درباره کلیدها در محیط لینوکس و ویندوز

در این مقاله به بررسی و توضیح کلیدها می پردازیم و نحوه ایجاد کلیدهای SSH در محیط های ویندوز و لینوکس را یاد می گیریم. یکی از روش های رمزگذاری نامتقارن که از امنیت بسیار بالایی برخوردار است، رمزگذاری SSH-KEY است.

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

اما مشکل اینجاست که اگر از این کلیدها برای مدیریت چندین کاربر مختلف استفاده شود، در صورت لو رفتن کلید توسط یک کاربر، اطلاعات دیگران به خطر می افتد. برای این منظور بحث جفت کلید (عمومی و خصوصی) مطرح شد.

کلید SSH عمومی و کلید SSH خصوصی چیست و چگونه کار می کند؟

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

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

کلید خصوصی (کلید خصوصی)

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

کلید عمومی (کلید عمومی)

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

مثالی از کلید عمومی:

3048 0241 00C9 18FA CF8D EB2D EFD5 FD37 89B9 E069 EA97 FC20 5E35 F577 EE31 C4FB C6E4 4811 7D86 BC8F BAFA 362F 922B F01B 2F40 C744 2654 C0DD 2881 D673 CA2B 4003 C266 E2CD CB02 0301 0001

اگر با این مفاهیم آشنا نیستید، ممکن است کمی گیج شوید، بنابراین سعی می کنیم با ارائه مثالی تا حد امکان آن را با جزئیات بیشتر توضیح دهیم:

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

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

آموزش گام به گام ساخت کلید SSH

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

ساختن کلید SSH در ویندوز

نرم افزارهای زیادی برای ایجاد کلیدهای SSH در ویندوز وجود دارد. از پرکاربردترین ها می توان به OpenSSH و Putty اشاره کرد. پیشنهاد ما به شما استفاده از نرم افزار Putty است که از لینک زیر قابل دانلود است:

دو راه برای ایجاد یک کلید SSH با استفاده از Putty وجود دارد:

استفاده كردن CMD

پس از دانلود و نصب Puttygen وارد محیط command prompt شوید (برای این کار از کلیدهای ترکیبی Win+R استفاده کنید) و پس از ظاهر شدن صفحه سیاه، دستور زیر را کپی کرده و سپس Enter را فشار دهید.

puttygen -t rsa -C "[email protected]

بجای [email protected] آدرس ایمیل خود را وارد کنید.

پس از فشار دادن کلید اینتر، سیستم از شما مکان ذخیره سازی را می خواهد، همان مسیر پیش فرض را انتخاب کنید. در مرحله بعد سیستم برای کلید SSH رمز عبور می خواهد، آن را وارد کرده و کلید Enter را فشار می دهد. حالا اگر به همان آدرس پیش فرض بروید، دو فایل به نام های id_rsa و id_rsa.pub را می بینید که id_rsa کلید خصوصی شما و id_rsa.pub کلید عمومی است.

  • id_rsa = کلید خصوصی
  • id_rsa.pub = کلید عمومی

استفاده از محیط گرافیکی Putty

Puttygen را تایپ کرده و گزینه Generate را انتخاب کنید. هنگامی که کلید SSH تولید شد، باید دو کار را انجام دهید:

  • روی گزینه Save Private Key کلیک کنید و فایل ارائه شده را در مکانی امن ذخیره کنید (به یاد داشته باشید که این فایل همان کلید خصوصی است که در مورد اهمیت آن صحبت شد)
  • کل کلید عمومی را کپی کرده و در جایی ذخیره کنید.

تبریک می گویم! اکنون کلید عمومی و خصوصی را با موفقیت ایجاد کرده اید.

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

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

/root/.ssh/authorized_keys

کلید عمومی به صورت زیر در فایل فوق قرار می گیرد.

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDNqqi1mHLnryb1FdbePrSZQdmXRZxGZbo0gTfglysq6KMNUNY2VhzmYN9JYW39yNtjhVxqfW6ewc+eHiL+IRRM1P5ecDAaL3V0ou6ecSurU+t9DR4114mzNJ5SqNxMgiJzbXdhR+j55GjfXdk0FyzxM3a5qpVcGZEXiAzGzhHytUV51+YGnuLGaZ37nebh3UlYC+KJev4MYIVww0tWmY+9GniRSQlgLLUQZ+FcBUjaqhwqVqsHe4F/woW1IHe7mfm63GXyBavVc+llrEzRbMO111MogZUcoWDI9w7UIm8ZOTnhJsk7jhJzG2GpSXZHmly/a/buFaaFnmfZ4MYPkgJD [email protected]

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

 Connection -> SSH -> Auth

سپس با کلیک بر روی گزینه Browse فایل ppk. که کلید خصوصی شماست را انتخاب کنید. پس از اتمام، از Ctrl+d برای خروج استفاده کنید.

تبریک می گویم! اتصال شما به سرور مورد نظر با موفقیت برقرار شد.

ایجاد کلیدهای SSH در سیستم عامل های لینوکس و مک

ایجاد کلید SSH در سیستم عامل های لینوکس و مک کاملاً شبیه یکدیگر است. در زیر ابتدا از در دسترس نبودن کلید SSH مطمئن می شویم و در صورت نبود کلید مراحل ساخت آن را مرحله به مرحله توضیح می دهیم.

مرحله 1: آیا سیستم عامل لینوکس من قبلاً یک کلید SSH دارد؟

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

cd ~/.ssh

سپس دو حالت وجود دارد، اگر با پیغام “عدم وجود فایل یا دایرکتوری” مواجه شدید، به این معنی است که کلید SSH وجود ندارد و باید آن را ایجاد کنید (مرحله دوم را نادیده بگیرید و مرحله سوم را انجام دهید) اما امکان پذیر است. کلید قبلا ایجاد شده است و شما قصد استفاده از آن را دارید، برای این کار باید کلید مورد نظر را بازیابی کنید

مرحله 2: کلید SSH را بازیابی کنید

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

mkdir key_backup

copy id_rsa* key_backup

مرحله سوم:

نحوه ساخت کلید SSH در لینوکس

از آنجایی که ایجاد کلید SSH در لینوکس در محیط ترمینال انجام می شود، از این روش می توان برای ایجاد کلید SSH در مک نیز استفاده کرد. برای تولید کلید SSH، وارد محیط ترمینال خود شده و دستور زیر را وارد کنید.

ssh-keygen -t rsa -C "[email protected]"

نکته 1: وارد کردن آدرس در آینده به شما کمک می کند تا کلید را بهتر شناسایی کنید.

نکته 2: رمزگذاری پیش فرض در SSH 2048 بیت است که برای تغییر آن به مقادیر بالاتر می توانید به جای دستور بالا از دستور زیر استفاده کنید.

ssh-keygen -t rsa -b 4096

سپس مطابق شکل بالا مسیر پیش فرض پیشنهادی سیستم را بپذیرید (این مسیر دایرکتوری /.ssh است که در صورت عدم وجود توسط سیستم ایجاد می شود).

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

تبریک می گویم! شما موفق شدید ایجاد یک کلید در سیستم عامل لینوکس شدید، قوی

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

پس از ایجاد کلید در ترمینال سیستم عامل لینوکس، دو فایل به نام های id_rsa و id_rsa.pub در پوشه /.ssh ذخیره می شوند (/.ssh همان محل پیش فرضی است که در مراحل قبل ذکر شد). id_rsa کلید خصوصی شما و id_rsa.pub کلید عمومی است.

برای اتصال به سرور دستور زیر را در محیط SSH وارد کنید.

ssh -i /path/to/id_rsa [email protected]

منظور از user@xxxx نام کاربری شماست.

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