SSH: تفاوت بین نسخهها
(←نصب) |
(←نصب) |
||
(۴ نسخهٔ میانیِ همین کاربر نمایش داده نشده است) | |||
سطر ۱: | سطر ۱: | ||
'''SSH''' (مخفف Secure Shell) یک [[پوسته | پوستهٔ]] امن برای دستیابی از راه دور به [[Server | کارساز]] مورد نظر به صورت رمزنگاری شده است. | '''SSH''' (مخفف Secure Shell) یک [[پوسته | پوستهٔ]] امن برای دستیابی از راه دور به [[Server | کارساز]] مورد نظر به صورت رمزنگاری شده است. | ||
+ | |||
+ | امروزه ssh راهحل استاندارد و امن اتصال به ماشینهای راهدور است. | ||
== نصب == | == نصب == | ||
سطر ۱۱: | سطر ۱۳: | ||
===نصب کارساز ssh=== | ===نصب کارساز ssh=== | ||
+ | |||
{{bc| | {{bc| | ||
$ sudo apt install openssh-server | $ sudo apt install openssh-server | ||
سطر ۲۰: | سطر ۲۳: | ||
برای ارتباط با کارساز مورد نظر از فرمان پایهٔ زیر در [[شبیهساز پایانه]] استفاده میشود. | برای ارتباط با کارساز مورد نظر از فرمان پایهٔ زیر در [[شبیهساز پایانه]] استفاده میشود. | ||
+ | |||
{{bc| | {{bc| | ||
$ ssh USER@HOST/IP [-p PORT] | $ ssh USER@HOST/IP [-p PORT] | ||
}} | }} | ||
+ | |||
+ | |||
+ | == تنظیمات == | ||
+ | |||
+ | برای استفاده بهتر از امکانات ssh میتوان از تنظیمات زیر استفاده کرد. | ||
+ | |||
+ | یک پرونده به نام {{ic| ~/.ssh/config}} با دادههای بسازید. | ||
+ | |||
+ | {{bc| | ||
+ | Host remote_server | ||
+ | HostName 1.2.3.4 | ||
+ | User user | ||
+ | }} | ||
+ | |||
+ | سپس برای اتصال به ماشین مورد نظر کافی است تنها نام آن را وارد کنید. | ||
+ | |||
+ | {{bc| | ||
+ | $ ssh remote_server | ||
+ | }} | ||
+ | |||
+ | == کاربرد رمزنگاری جفت کلید == | ||
+ | |||
+ | میتوان از مفهوم رمزنگاری با کلید عمومی و خصوصی برای اتصال به ماشین راهدور استفاده کرد. به این شکل که فرایند احراز هویت به جای نامکاربری و رمز عبور توسط تطبیق این دو کلید صورت میگیرد. | ||
+ | |||
+ | نخست باید یک زوج کلید تولید شود. | ||
+ | |||
+ | {{bc| | ||
+ | $ ssh-keygen | ||
+ | }} | ||
+ | |||
+ | سپس کلید عمومی تولید شده را به ماشین راه دور منتقل(رونوشت) کرد. | ||
+ | این کار با فرمان زیر انجام میگیرد. | ||
+ | |||
+ | {{bc| | ||
+ | $ ssh-copy-id remote_server | ||
+ | }} | ||
+ | |||
+ | برای انجام رونوشت لازم است یکبار نامکاربری و رمزعبور وارد شود. | ||
+ | |||
+ | پس از اجرای این مراحل دیگر برای اتصال به ماشین راهدور نیازی به ورود نامکاربری و رمزعبور نیست. | ||
== راهنما == | == راهنما == | ||
سطر ۲۸: | سطر ۷۲: | ||
{{bc|$ man ssh}} | {{bc|$ man ssh}} | ||
{{bc|$ ssh --help}} | {{bc|$ ssh --help}} | ||
+ | |||
+ | == کاربردها== | ||
+ | |||
+ | * اتصال به ماشین راهدور | ||
+ | * انتقال پروندهها و پوشهها بین ماشینها با [[scp]] | ||
+ | * سوارکردن فایل سیستم ماشین راهدور روی ماشین محلی با [[sshfs]] | ||
+ | |||
نسخهٔ کنونی تا ۹ اردیبهشت ۱۴۰۳، ساعت ۱۳:۱۴
SSH (مخفف Secure Shell) یک پوستهٔ امن برای دستیابی از راه دور به کارساز مورد نظر به صورت رمزنگاری شده است.
امروزه 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