برای اتصال به سرور لینوکس کافی است در ترمینال ویندوز ۱۰/۱۱، مک یا لینوکس دستور ssh root@IP را بزنید، اثرانگشت سرور را با yes تأیید و رمز را وارد کنید. برای امنیت بیشتر بعد از اولین ورود، کلید SSH بسازید و ورود با رمز را ببندید. در موبایل اپهایی مانند Termius همین کار را انجام میدهند.
SSH چیست و چرا لازم است؟
SSH (Secure Shell) پروتکلی برای اتصال رمزنگاریشده به خط فرمان یک سرور از راه دور است. هر چیزی که در ترمینال تایپ میکنید، روی سرور اجرا میشود و خروجی آن برای شما برمیگردد. تقریباً همهٔ کارهای مدیریت سرور لینوکس — نصب نرمافزار، تغییر تنظیمات، دیدن لاگها و اجرای سرویسها — از طریق SSH انجام میشود.
برای اتصال سه چیز لازم دارید:
| مورد | از کجا؟ |
|---|---|
| آیپی سرور | پنل کلودیفای ← مدیریت سرویسها ← سرور |
| نام کاربری | معمولاً root (مشخصات دقیق در پنل) |
| رمز یا کلید | «نمایش پسورد» در پنل؛ یا کلید SSH که خودتان اضافه کردهاید |
| پورت | پیشفرض ۲۲ (اگر تغییرش داده باشید، پورت جدید) |
اگر سرور را تازه ساختهاید، اول مطمئن شوید نصب سیستمعامل تمام شده است؛ راهنمای اولین ورود به سرور را ببینید.
اتصال از ویندوز ۱۰ و ۱۱
ویندوزهای جدید کلاینت OpenSSH را بهصورت داخلی دارند. PowerShell یا Windows Terminal را باز کنید و بنویسید:
ssh root@203.0.113.10
- در اولین اتصال پیامی دربارهٔ «authenticity of host» میبینید؛
yesرا تایپ کنید. - رمز را وارد کنید؛ هنگام تایپ هیچ کاراکتری نمایش داده نمیشود و این طبیعی است.
- برای پورت غیرپیشفرض:
ssh -p 2222 root@203.0.113.10
اگر پیام «ssh is not recognized» دیدید، از Settings ← Apps ← Optional features، گزینهٔ OpenSSH Client را نصب کنید.
PuTTY (روش قدیمیتر)
PuTTY را از سایت رسمی آن دانلود کنید، در فیلد Host Name آیپی و در Port عدد ۲۲ را بنویسید و Open را بزنید. برای ورود با کلید در PuTTY، کلید باید با PuTTYgen به قالب .ppk تبدیل شود. امروز استفاده از OpenSSH داخلی ویندوز سادهتر است.
$ ssh root@203.0.113.10The authenticity of host '203.0.113.10' can't be established.Are you sure you want to continue connecting (yes/no)? yesroot@203.0.113.10's password:root@server:~#$
اتصال از مک و لینوکس
برنامهٔ Terminal را باز کنید (در مک: Applications ← Utilities ← Terminal) و همان دستور را بزنید:
ssh root@203.0.113.10
همهٔ گزینههای دستور ssh در مک و لینوکس یکسان است.
اتصال از موبایل
| سیستمعامل | اپهای رایج | نکته |
|---|---|---|
| اندروید | Termius، JuiceSSH، ConnectBot | Termius رابط ساده و پشتیبانی کلید دارد |
| iOS | Termius، Blink Shell | Blink برای کاربران حرفهای |
در همهٔ این اپها یک «Host» جدید با آیپی، پورت، نام کاربری و رمز یا کلید بسازید. موبایل برای کارهای فوری (ریاستارت سرویس، دیدن لاگ) عالی است؛ برای کار طولانی از کامپیوتر استفاده کنید. ریاستارت و خاموش/روشن کردن کل سرور را هم از ربات کلودیفای میتوانید انجام دهید.
ورود با کلید SSH (توصیهشده)
ورود با رمز در برابر حملات حدس رمز آسیبپذیر است. کلید SSH امنتر و راحتتر است:
# ۱) ساخت کلید روی کامپیوتر خودتان (ویندوز، مک یا لینوکس)
ssh-keygen -t ed25519 -C "my-laptop"
# ۲) کپی کلید عمومی روی سرور (مک و لینوکس)
ssh-copy-id root@203.0.113.10
در ویندوز که ssh-copy-id ندارد:
type $env:USERPROFILE\.ssh\id_ed25519.pub | ssh root@203.0.113.10 "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"
پس از اطمینان از ورود با کلید، ورود با رمز را ببندید. آموزش کامل: تغییر پورت SSH و ورود فقط با کلید.
فایل config: اتصال با یک کلمه
اگر چند سرور دارید، در فایل ~/.ssh/config (در ویندوز: C:\Users\NAME\.ssh\config) برای هر سرور یک نام کوتاه بگذارید:
Host de1
HostName 203.0.113.10
User root
Port 22
IdentityFile ~/.ssh/id_ed25519
ServerAliveInterval 30
از این به بعد فقط بنویسید ssh de1. گزینهٔ ServerAliveInterval کمک میکند اتصال در شبکههای ناپایدار زودتر قطع نشود.
انتقال فایل با scp و rsync
# آپلود فایل از کامپیوتر به سرور
scp backup.zip root@203.0.113.10:/root/
# دانلود از سرور
scp root@203.0.113.10:/var/log/syslog ./
# همگامسازی پوشه (فقط تغییرات)
rsync -avz ./site/ root@203.0.113.10:/var/www/site/
برای کار گرافیکی با فایلها میتوانید از WinSCP (ویندوز) یا FileZilla با پروتکل SFTP استفاده کنید؛ هر دو از همان مشخصات SSH استفاده میکنند.
نکات کار روزمره
- قطع نشدن کار طولانی: کارهای طولانی را داخل
tmuxیاscreenاجرا کنید تا با قطع اتصال متوقف نشوند (apt install tmuxو سپسtmux). - کاربر غیر root: برای کار روزمره یک کاربر با دسترسی sudo بسازید؛ چکلیست امنیتی را ببینید.
- دستورهای پایه: فهرست دستورهای ضروری در دستورهای ضروری لینوکس برای مدیریت سرور آمده است.
خطاهای رایج
| خطا | معنی | راهحل |
|---|---|---|
| Connection timed out | بستهها به سرور نمیرسند | نصب سیستمعامل، آیپی، فایروال و مسیر شبکه را بررسی کنید |
| Connection refused | سرور در دسترس است اما روی آن پورت سرویسی گوش نمیدهد | پورت SSH و سرویس sshd را بررسی کنید |
| Permission denied | رمز یا کلید پذیرفته نشد | رمز را از پنل دوباره بردارید؛ مسیر کلید را با -i مشخص کنید |
| REMOTE HOST IDENTIFICATION HAS CHANGED | اثرانگشت سرور تغییر کرده (مثلاً بعد از نصب مجدد) | ssh-keygen -R 203.0.113.10 و اتصال دوباره |
راهنمای کامل رفع خطای اتصال: خطای Connection timed out و refused در SSH.
سؤالات متداول
چرا وقتی رمز را تایپ میکنم چیزی نمایش داده نمیشود؟
این رفتار عمدی و امنیتی است؛ رمز را کامل تایپ و Enter را بزنید. برای جلوگیری از اشتباه، میتوانید رمز را کپی و با کلیک راست (در ویندوز) یا Cmd+V (در مک) جایگذاری کنید.
بعد از نصب مجدد سرور، اتصال خطای هشدار میدهد؛ چرا؟
نصب مجدد کلیدهای میزبان سرور را عوض میکند. با ssh-keygen -R IP رکورد قدیمی را حذف کنید و دوباره وصل شوید.
آیا برای سرور ویندوز هم SSH لازم است؟
سرورهای ویندوز معمولاً با Remote Desktop (RDP) مدیریت میشوند؛ این راهنما برای سرورهای لینوکس است.
چند نفر میتوانند همزمان به یک سرور وصل شوند؟
بله؛ برای هر نفر یک کاربر جدا با کلید خودش بسازید تا دسترسیها قابل کنترل باشد.
اتصال SSH بعد از چند دقیقه بیکاری قطع میشود؛ چه کنم؟
در فایل config گزینهٔ ServerAliveInterval 30 را اضافه کنید یا کار را داخل tmux انجام دهید.
از ۱٬۲۰۰ تومان در ساعت · پرداخت ریالی



