SSH: تفاوت بین نسخه‌ها

از ویکی فارسی اوبونتو
پرش به: ناوبری، جستجو
 
(۸ نسخه‌ٔ میانی ویرایش شده توسط ۲ کاربر نشان داده نشده)
سطر ۱: سطر ۱:
{{ویرایش|این صفحه در برخی بخش ها از شیوه‌نامه رسمی نگارش یک صفحه ویکی برخوردار نیست. لطفاً آن را تصحیح و این الگو را حذف نمایید.}}
+
'''SSH''' (مخفف Secure Shell) یک [[پوسته | پوستهٔ]] امن برای دست‌یابی از راه دور به [[Server | کارساز]] مورد نظر به شکل رمزنگاری شده است.
  
 +
امروزه ssh راه‌حل استاندارد، امن و پرکاربرد برای اتصال به ماشین‌های راه‌دور است.
 +
 +
خدمت SSH به شکل کارساز، کارخواه عمل می‌کند.
 +
 +
برای اینکه سامانه بتواند خدمت SSH ارائه دهد نخست باید نصب و پیکربندی شود.
 +
و برای اینکه بتوانید به یک ماشین راه‌دور متصل شوید نخست باید کارخواه ssh را نصب کنید.
  
'''SSH''' (مخفف Secure Shell) یک [[پوسته|پوستهٔ]] امن برای دست‌یابی از راه دور به [[Server|کارساز]] مورد نظر به صورت رمزنگاری شده است.
 
  
 
== نصب ==
 
== نصب ==
 
برای نصب بسته‌های مربوط به SSH از فرمان زیر استفاده کنید.  
 
برای نصب بسته‌های مربوط به SSH از فرمان زیر استفاده کنید.  
{{bc|$ sudo apt install openssh-server openssh-client}}
 
{{نکته|نصب هر دو بسته برای کارکرد کامل برنامه ضروری است.}}
 
  
== راه‌اندازی خدمت SSH ==
+
===نصب کارخواه ssh===
می‌توان با فرمان‌های زیر خدمت SSH را در سامانه راه‌اندازی کرد:
+
 
 
{{bc|
 
{{bc|
$ sudo systemctl start ssh
+
$ sudo apt install openssh-client
or
 
$ sudo service ssh start
 
 
}}
 
}}
  
با دستور بالا خدمت SSH در سامانه راه‌اندازی شده و می‌توان با سایر سیستم عامل‌ها(گنو/لینوکس، ویندوز، اندروید و...) به سامانه متصل شد.
+
===نصب کارساز ssh===
  
برای متوقف کردن خدمت(کارساز) SSH از دستورات زیر می‌توان استفاده کرد:
 
 
{{bc|
 
{{bc|
$ sudo systemctl stop ssh
+
$ sudo apt install openssh-server
or
 
$ sudo service ssh stop
 
 
}}
 
}}
  
همچنین می‌توانید برای فعال و غیرفعال کردن خدمت SSH هنگام شروع سامانه از فرمان‌های زیر استفاده کنید.
+
برای تغییر درگاه یا سایر تنظیمات می‌توانید پروندهٔ پیکربندی خدمت SSH را در مسیر {{ic|/etc/ssh/sshd_config}} تغییر دهید.
 +
 
 +
== وصل شدن به کارساز ==
 +
 
 +
برای ارتباط با کارساز مورد نظر از فرمان پایهٔ زیر در [[شبیه‌ساز پایانه]] استفاده می‌شود.
 +
 
 
{{bc|
 
{{bc|
$ sudo systemctl enable ssh
+
$ ssh USER@HOST/IP [-p PORT]
and
 
$ sudo systemctl disable ssh
 
 
}}
 
}}
  
مثلا می‌خواید خود به خود سرور SSH وقتی کامپیوترتون رو روشن میکنین فعال بشه یا میخوایین که غیر فعال بشه و خودتون هرموقع دوست دارین فعالش کنین (که این کار بهتره):
 
  
برای تغییر درگاه و سایر تنظیمات خدمت(کارساز) SSH می‌توانید پروندهٔ پیکربندی آن را در مسیر {{bc|$ /etc/ssh/sshd_config}} ویرایش کنید.
+
== تنظیمات ==
  
== وصل شدن به کارساز SSH ==
+
برای استفاده بهتر از امکانات ssh می‌توان از تنظیمات زیر استفاده کرد.
برای اتّصال به کارساز مورد نظر از فرمان پایهٔ زیر در [[شبیه‌ساز پایانه]] استفاده می‌شود.
 
{{bc|$ ssh USER@HOST/IP}}
 
  
همچنین می‌توانید با استفاده از گزینهٔ {{ic|-p}} درگاه پیش‌گزیده('''22''') را تغییر دهید:
+
یک پرونده به نام {{ic| ~/.ssh/config}} با داده‌های بسازید.
{{bc|$ ssh -p2022 USER@HOST/IP}}
 
{{نکته|در صورت مشخص نکردن نام‌کاربری، دستور '''ssh''' از نام‌کاربری شما برای ورود استفاده خواهد کرد.}}
 
  
همچنین می‌توانید در ویندوز از برنامه‌هایی مانند '''putty''' و گنو/لینوکس از '''Remmina''' استفاده کنید.
+
{{bc|
 +
Host remote_server
 +
    HostName 1.2.3.4
 +
    User user
 +
}}
  
=== اتّصال به کارساز در شبکهٔ محلی(local) ===
+
سپس برای اتصال به ماشین مورد نظر کافی است تنها نام آن را وارد کنید.
برای اتّصال کارخواه(client) به کارساز(server) در [[LAN|شبکه‌ٔ داخلی]] از الگوی زیر استفاده می‌شود:
 
{{bc|$ ssh android@192.168.1.32}}
 
{{نکته|برای یافتن نشانی آی‌پی(IP) می‌توانید از فرمان '''ifconfig''' در گنو/لینوکس و فرمان '''ipconfig''' در ویندوز استفاده کنید.}}
 
  
{{نکته|در حالت معمول برای شبکهٔ داخلی، درگاه روی عدد 22 تنظیم شده است. پس اگر در فرمان بالا شمارهٔ Port وارد نشود، SSH به صورت پیش‌گزیده از Port ۲۲ استفاده خواهد کرد. درغیر‌این‌صورت باید شمارهٔ Port مورد نظر را هم وارد کرد.}}
+
{{bc|
 +
$ ssh remote_server
 +
}}
  
=== اتّصال به کارساز از شبکهٔ اینترنت ===
+
== کاربرد رمزنگاری جفت کلید ==
ابتدا نشانی IP عمومی را پیدا کنید.
 
برای نمونه فرمان زیر
 
{{bc|$ curl ifconfig.me}}
 
  
خوب بعد اون اگه اینترنت ما از وایفای یا سوییچ یا چیز دیگه ای باشه کارمون یکم دیگه ادامه پیدا میکنه . یعنی باید پورت سرور خودمون (مثلا ۲۲) رو از وای فای یا .. فوروارد کنیم تا اون پورت مستقیم کامپیوتر ما برسه و وای فای اونو بلاک نکنه . یا به جای دیگه ای نفرسته.(مثلا هنگام تلنت اگه ما ایپی عمومی رو بزنیم به جای کامپیوتر خودمون داریم به مودم وای فای تلنت میکنیم)
+
می‌توان از مفهوم رمزنگاری با کلید عمومی و خصوصی برای اتصال به ماشین راه‌دور استفاده کرد. به این شکل که فرایند احراز هویت به جای نام‌کاربری و رمز عبور توسط تطبیق این دو کلید صورت می‌گیرد.
برای پورت فرواردینگ میتونین تو اینترنت جستوجو کنین.
 
  
بعضی وقتا ممکنه دیوار آتش پورت مورد نظر ما رو بلاک کنه که در اون شرایط میشه با دستور زیر اون پورت رو باز کرد:
+
نخست باید یک زوج کلید تولید شود.
{{bc|$ sudo ufw allow 22}}
+
 
 +
{{bc|
 +
$ ssh-keygen
 +
}}
 +
 
 +
سپس کلید عمومی تولید شده را به ماشین راه دور منتقل(رونوشت) کرد.
 +
این کار با فرمان زیر انجام می‌گیرد.
 +
 
 +
{{bc|
 +
$ ssh-copy-id remote_server
 +
}}
 +
 
 +
برای انجام رونوشت لازم است یکبار نام‌کاربری و رمزعبور وارد شود.
 +
 
 +
پس از اجرای این مراحل دیگر برای اتصال به ماشین راه‌دور نیازی به ورود نام‌کاربری و رمزعبور نیست.
  
 
== راهنما ==
 
== راهنما ==
برای مطالعهٔ جزئیات بیش‌تر و راهنمای این برنامه، می‌توان [[Man Page|صفحهٔ راهنما]] آن را مشاهده کرد.
+
برای مطالعهٔ جزئیات بیش‌تر و راهنمای این برنامه، می‌توان [[Man Page|صفحهٔ راهنما]] را مشاهده یا از انتخاب {{ic|--help}} استفاده کرد.
 
{{bc|$ man ssh}}
 
{{bc|$ man ssh}}
 +
{{bc|$ ssh --help}}
 +
 +
== کاربردها==
 +
 +
* اتصال به ماشین راه‌دور
 +
* انتقال پرونده‌ها و پوشه‌ها بین ماشین‌ها با [[scp]]
 +
* سوارکردن فایل سیستم ماشین راه‌دور روی ماشین محلی با [[sshfs]]
 +
 +
  
 
[[رده:نرم‌افزارهای شبکه]]
 
[[رده:نرم‌افزارهای شبکه]]
 
[[رده:پوسته‌ها]]
 
[[رده:پوسته‌ها]]
 
[[رده:کارسازها]]
 
[[رده:کارسازها]]
[[رده:خط فرمان]]
 

نسخهٔ کنونی تا ‏۱۰ مهر ۱۴۰۴، ساعت ۱۱:۴۵

SSH (مخفف Secure Shell) یک پوستهٔ امن برای دست‌یابی از راه دور به کارساز مورد نظر به شکل رمزنگاری شده است.

امروزه ssh راه‌حل استاندارد، امن و پرکاربرد برای اتصال به ماشین‌های راه‌دور است.

خدمت SSH به شکل کارساز، کارخواه عمل می‌کند.

برای اینکه سامانه بتواند خدمت SSH ارائه دهد نخست باید نصب و پیکربندی شود. و برای اینکه بتوانید به یک ماشین راه‌دور متصل شوید نخست باید کارخواه ssh را نصب کنید.


نصب

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

نصب کارخواه ssh

$ sudo apt install openssh-client

نصب کارساز ssh

$ sudo apt install openssh-server

برای تغییر درگاه یا سایر تنظیمات می‌توانید پروندهٔ پیکربندی خدمت SSH را در مسیر /etc/ssh/sshd_config تغییر دهید.

وصل شدن به کارساز

برای ارتباط با کارساز مورد نظر از فرمان پایهٔ زیر در شبیه‌ساز پایانه استفاده می‌شود.


$ ssh USER@HOST/IP [-p PORT]


تنظیمات

برای استفاده بهتر از امکانات ssh می‌توان از تنظیمات زیر استفاده کرد.

یک پرونده به نام ~/.ssh/config با داده‌های بسازید.


Host remote_server
    HostName 1.2.3.4
    User user

سپس برای اتصال به ماشین مورد نظر کافی است تنها نام آن را وارد کنید.


$ ssh remote_server

کاربرد رمزنگاری جفت کلید

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

نخست باید یک زوج کلید تولید شود.


$ ssh-keygen

سپس کلید عمومی تولید شده را به ماشین راه دور منتقل(رونوشت) کرد. این کار با فرمان زیر انجام می‌گیرد.


$ ssh-copy-id remote_server

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

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

راهنما

برای مطالعهٔ جزئیات بیش‌تر و راهنمای این برنامه، می‌توان صفحهٔ راهنما را مشاهده یا از انتخاب --help استفاده کرد.

$ man ssh
$ ssh --help

کاربردها

  • اتصال به ماشین راه‌دور
  • انتقال پرونده‌ها و پوشه‌ها بین ماشین‌ها با scp
  • سوارکردن فایل سیستم ماشین راه‌دور روی ماشین محلی با sshfs