~2 دقیقه مطالعه • بروزرسانی ۳۰ تیر ۱۴۰۴

۱. ssh چیست؟


ssh مخفف Secure Shell، ابزاری برای اتصال راه‌دور به ماشین‌های لینوکس/یونیکس از طریق شبکه و در بستر امن رمزگذاری‌شده است. برای ورود به سرور:

ssh user@hostname

مثال:

ssh [email protected]

۲. نصب ssh در لینوکس


  • کلاینت ssh: معمولاً از پیش نصب شده
  • سرور ssh: برای پذیرش اتصال‌ها باید نصب شود
sudo apt install openssh-server

سرویس را فعال کنید:

sudo systemctl enable --now ssh

۳. گزینه‌های مهم ssh


  • -p: تعیین پورت سفارشی
  • ssh -p 2222 user@host
  • -i: استفاده از کلید خصوصی برای احراز هویت
  • ssh -i ~/.ssh/id_rsa user@host
  • -L: تنظیم tunnel یا port forwarding
  • ssh -L 8080:localhost:80 user@host

۴. scp چیست؟


scp ابزاری برای انتقال فایل بین دو سیستم، مبتنی بر پروتکل ssh و کاملاً امن و رمزگذاری‌شده است.


۵. انتقال فایل از سیستم محلی به راه‌دور


scp file.txt [email protected]:/home/user/

۶. انتقال فایل از راه‌دور به سیستم محلی


scp [email protected]:/home/user/file.txt ./

۷. انتقال پوشه‌ها با scp


از سوییچ -r برای انتقال بازگشتی (recursive):

scp -r myfolder/ user@host:/home/user/

۸. سوییچ‌های مهم scp


سوییچکاربردمثال
-Pتعیین پورت ssh مقصد
scp -P 2222 file.txt user@host:/path
-iاستفاده از کلید خصوصی
scp -i ~/.ssh/id_rsa file.txt user@host:/path
-rانتقال پوشه
scp -r dir/ user@host:/path
-vفعال کردن حالت verbose برای دیباگ
scp -v file.txt user@host:/path

۹. نکات امنیتی


  • از کلیدهای SSH به‌جای رمز عبور استفاده کنید (ssh-keygen)
  • فایل ~/.ssh/authorized_keys را برای مجوزدهی استفاده کنید
  • دسترسی chmod 600 برای کلیدهای خصوصی ضروری است
  • از fail2ban یا firewall برای محافظت در برابر حملات brute-force استفاده کنید

۱۰. نتیجه‌گیری


ssh و scp از ابزارهای بنیادین در لینوکس برای مدیریت راه‌دور، انتقال فایل و ایمن‌سازی عملیات شبکه هستند. یادگیری نحوهٔ استفادهٔ صحیح از آن‌ها، مبنای مدیریت حرفه‌ای سیستم‌ها و امنیت اطلاعات در بستر شبکه است.


نوشته و پژوهش شده توسط دکتر شاهین صیامی