یوشا

دست نوشته ها و تجربیات شخصی

یوشا

دست نوشته ها و تجربیات شخصی

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

طبقه بندی موضوعی
تبلیغات
Blog.ir بلاگ، رسانه متخصصین و اهل قلم، استفاده آسان از امکانات وبلاگ نویسی حرفه‌ای، در محیطی نوین، امن و پایدار bayanbox.ir صندوق بیان - تجربه‌ای متفاوت در نشر و نگهداری فایل‌ها، ۳ گیگا بایت فضای پیشرفته رایگان Bayan.ir - بیان، پیشرو در فناوری‌های فضای مجازی ایران

 

بطور خلاصه، اساس کار SSh-Key مبتنی بر رمزنگاری بر کلید عمومی هست. به این صورت که شما دو کلید ایجاد می کنید: یکی کلید عمومی(public key) و دیگری کلید خصوصی(private key). که در اینجا کلید عمومی نقش قفل رو داره و کلید خصوصی نقش کلید!

 

شما می تونید کلید عمومی(public key) خودتون رو به هر کسی بدید یا در هر جایی قرار بدید... چراکه تنها عملکردش رمزی کردن داده هاست و هیچ کارایی دیگه ای نداره. پس چیزی هم شما رو تهدید نمی کنه. کلید دیگه، کلید خصوصی هه(private key)، که شما نباید اون رو به کسی بدید! و عملکردش رمزگشایی داده هاست. (داده های رمزگذاری شده توسط کلید عمومی)

شیوه تعامل این دو کلید به این صورته که:

1- سرور/remote یک پیام کوتاه رو توسط کلید عمومی شما [که قبلاً بهش داده بودید رو] رمزگذاری و اون به کامپیوتر شما ارسال میکنه.

2- کامپیوتر شما، این پیام رمزگذاری شده رو دریافت و با کلید خصوصی شما اون رو رمزگشایی میکنه و اون رو به سرور/remote ارسال می کنه.

3- در نهایت، سرور/remote هویت شما رو [از نظر مالک کلید خصوصی] شناسایی میکنه و بلافاصله دسترسی های لازم رو به شما اعطا می کنه. بهمین سادگی!

 

فهرست/مندرجات:

  • دریافت برنامه
  • ساخت SSh-Key
  • آپلود SSh-Key

 

برای ساخت SSh-Key در ویندوز برنامه های زیادی وجود داره، ولی خروجی حاصل شده قطعاً یکی هستش...

از جمله این برنامه های میشه PuTTYFreeSShDKiTTYMobaXtermSmarTTYTerminalsBitvise SSh ClientOpenSShGit رو نام برد که من در اینجا به OpenSSh, PuTTY و Git میپردازم...

 

توجه: درصورتی که یکی از برنامه های OpenSSh, CyGWin, PuTTY یا Git رو نصب دارید، این قسمت رو رها و به قسمت ساخت SSh-Key در پایین رجوع کنید!

 

1- ابتدا جدیدترین نسخه برنامه OpenSSh یا برنامه Git یا Installer برنامه PuTTY رو دانلود کنید:

OpenSSh:

https://sourceforge.net/projects/sshwindows

یا

Git:

https://git-scm.com/download/win

یا

PuTTY:

http://chiark.greenend.org.uk/~sgtatham/putty/download.html

 

2- حالا فایل دانلود شده رو باز و برنامه رو با زدن دکمه Next نصب کنید. (تا آخرین مرحله)

نکته: اگر احیاناً پنجره ای با عنوان User Account Control یا Security Warning اومد، دکمه Run/Yes رو بزنید.

 

1- برنامه Command Prompt ویندوز رو از مسیر Start -> All Programs -> Accessories یا C:\Windows\System32\Cmd.exe باز کنید. (یا کلید WINODWS + R روی کیبورد رو فشار بدید و بنویسید Cmd بعد ENTER رو بزنید)

 

2- بعد داخل پنجره [سیاه] باز شده، عبارت زیر رو بنویسید و بعد کلید ENTER رو بزنید:

برای برنامه های OpenSSh یا Git یا CyGWin

ssh-keygen -t ecdsa -b 521 -C "YOUR-EMAIL-ADDRESS"

برای برنامه PuTTY

puttygen -t ecdsa -b 521 -C "YOUR-EMAIL-ADDRESS"

بجای عبارت YOUR-EMAIL-ADDRESS، آدرس ایمیل واقعی تون رو بنویسید.

نکته: اگر عضو یکی سایت هایی مثل GitHub, GitLab, BitBucket, SourceForge و... هستید، پیشنهاد می کنم اون آدرس ایمیلی که در اون سایت باهاش عضو شدید رو بنویسید.

توجه: اگر با پیام "'ssh' is not recognized as an internal or external command operable program or batch file." مواجه شدید بدونید که برنامه(Git, PuTTY, OpenSSh, CyGWin) مورد نظر رو درست نصب یا تنظیم نکردید.

 

3- حالا از شما سوالی درباره مسیر ساخت SSh-Key میپرسه، که پیشنهاد می کنم همون مسیر پیشفرض خودش رو قبول کنید و کلید ENTER رو فشار بدید.

در ویندوز 7 این مسیر پیشفرض برابره با: C:\Users\<YOUR-USERNAME>\.ssh

در ویندوز Xp این مسیر پیشفرض برابره با: C:\Documents and settings\<YOUR-USERNAME>\.ssh

 

توجه: اگر با پیامی شبیه already exists یا Overwrite مواجه شدید، این یعنی شما درحال حاضر SSh-Key دارید و نیاز به ساخت مجدد اون ندارید پس کلید ENTER رو بزنیدتا عملیات متوقف بشه. مگر اینکه قصد داشته باشید یک SSh-Key جدید بسازید، پس می نویسید y و کلید ENTER رو میزنید تا overwrite بشه.

 

4- حالا از شما می خواد که رمزی رو برای این SSh-Key وارد کنید... رمز رو وارد و کلید ENTER رو بزنید. بعد، مجدداً از شما درباره رمز سوال میکنه، رمز قبلی رو وارد و کلید ENTER رو میزنید.

نکته: اگر عضو یکی سایت هایی مثل GitHub, GitLab, BitBucket, SourceForge و... هستید، پیشنهاد می کنم همون رمزی که در اون سایت باهاش عضو شدید رو وارد کنید. (که فراموش نکنید)

SSh-Key شما ساخته شد!

 

1- به مسیری که SSh-Key رو ساختید برید، در اونجا باید دو فایل با نام id_ecdsa و id_ecdsa.pub داشته باشید. فایل id_ecdsa.pub رو با برنامه Notepad (یا هر ویرایشگری دیگه) باز کنید و فقط و فقط خط اول رو کامل کپی کنید.

دقت کنید خط دوم که خالی هست رو کپی نکنید.

توجه: اگر پسوند فایلها رو نمی بینید، به مسیر Start -> Control panel -> Folder options برید و در پنجره باز شده، زبانه View رو بزنید. حالا در کادر Advanced settings، گزینه Hide extensions for known file types رو غیرفعال کنید.

 

نکته: فایل id_ecdsa.pub، فایل کلید عمومی هست. یعنی این کلید رو در سرور/remote ای که قراره بهش متصل بشید آپلود می کنید (که به شما گفته میشه کجا و چگونه). اما فایل id_ecdsa، فایل کلید خصوصی هست. پس همیشه این فایل باید در کامپیوتر شما بمونه!

 

2- به سایت مورد نظرتون برید و login کنید. بعد بدنبال گزینه Settings یا Profile settings یا Preferences بگردید و بعد روش کلیک کنید. سپس در صفحه باز شده گزینه ی SSh keys یا SSh Settings رو پیدا و روش کلیک کنید.

 

3- بعد از باز شدن صفحه SSh Keys، دکمه Add new key یا Add SSh key رو بزنید و محتوایی که قبلاً از داخل فایل id_ecdsa.pub کپی کرده بودید رو در اونجا paste کنید.

در آخر دکمه Add یا Save رو بزنید. تمام

 

نکته: برای استفاده از GPG key بهمراه برنامه Git بهتره متغیر GNUPGHOME رو از  environment variable سیستم حذف کنید.

 

۹۳/۰۲/۰۶

نظرات (۳)

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

کاربران بیان میتوانند بدون نیاز به تأیید، نظرات خود را ارسال کنند.
اگر قبلا در بیان ثبت نام کرده اید لطفا ابتدا وارد شوید، در غیر این صورت می توانید ثبت نام کنید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">