برگهٔ تقلب SSH
مرجعی قابلجستجو و چاپ از SSH — اتصال، کلیدها، پیکربندی، تونلزنی، SCP/SFTP و forwarding عامل. رایگان.
اتصال
10ssh user@host
اتصال بهعنوان کاربر به host
ssh -p 2222 user@host
اتصال روی پورت غیرپیشفرض
ssh -i ~/.ssh/id_ed25519 user@host
استفاده از کلید هویت خاص
ssh user@host 'uptime'
اجرای یک دستور راهدور و خروج
ssh -v user@host
خروجی مفصل برای اشکالزدایی (-vvv برای بیشتر)
ssh -t user@host 'sudo -i'
اجبار pseudo-terminal (برای دستورات تعاملی)
ssh -X user@host
فعالسازی forwarding X11
ssh -o ServerAliveInterval=60 user@host
ارسال keepalive برای جلوگیری از timeout
exit / Ctrl-D
بستن نشست راهدور
~.
قطع اجباری نشست منجمد
تولید کلید
8ssh-keygen -t ed25519 -C 'you@example.com'
تولید جفتکلید مدرن Ed25519
ssh-keygen -t rsa -b 4096
تولید جفتکلید RSA با ۴۰۹۶ بیت
ssh-keygen -t ed25519 -f ~/.ssh/work
نوشتن کلید در یک فایل خاص
ssh-keygen -p -f ~/.ssh/id_ed25519
تغییر passphrase یک کلید موجود
ssh-keygen -y -f ~/.ssh/id_ed25519
چاپ کلید عمومی از کلید خصوصی
ssh-keygen -l -f ~/.ssh/id_ed25519.pub
نمایش اثرانگشت کلید
ssh-keygen -lv -f ~/.ssh/id_ed25519.pub
نمایش تصویر randomart اثرانگشت
ssh-keygen -R host
حذف کلید host از known_hosts
نصب کلیدهای عمومی
7ssh-copy-id user@host
کپی کلید عمومی پیشفرض به سرور
ssh-copy-id -i ~/.ssh/work.pub user@host
کپی یک کلید عمومی خاص
ssh-copy-id -p 2222 user@host
کپی کلید روی پورت سفارشی
cat ~/.ssh/id_ed25519.pub | ssh user@host 'cat >> ~/.ssh/authorized_keys'
کپی دستی وقتی ssh-copy-id موجود نیست
chmod 700 ~/.ssh
اصلاح مجوزهای دایرکتوری .ssh
chmod 600 ~/.ssh/authorized_keys
اصلاح مجوزهای authorized_keys
pbcopy < ~/.ssh/id_ed25519.pub
کپی کلید عمومی به کلیپبورد (macOS)
پیکربندی SSH (~/.ssh/config)
10Host myserver
نام مستعار: اتصال با `ssh myserver`
HostName 203.0.113.10
نام میزبان یا IP واقعی برای نام مستعار
User deploy
نام کاربری پیشفرض برای این host
Port 2222
پورت پیشفرض برای این host
IdentityFile ~/.ssh/work
کلید مورد استفاده برای این host
IdentitiesOnly yes
فقط کلید فهرستشده ارائه شود
ForwardAgent yes
forward کردن SSH agent به این host
Host *.example.com
تطبیق wildcard برای یک دامنه
Host *
پیشفرضهای سراسری برای همه hostها
ServerAliveInterval 60
بازه keepalive برای همه hostها
forwarding پورت / تونلزنی
7ssh -L 8080:localhost:80 user@host
محلی: دسترسی به host:80 از طریق 8080 محلی
ssh -L 5432:db.internal:5432 user@host
forward محلی به host سوم از طریق سرور
ssh -R 9000:localhost:3000 user@host
راهدور: نمایش 3000 محلی بهعنوان host:9000
ssh -D 1080 user@host
پویا: پراکسی SOCKS روی پورت محلی 1080
ssh -N -L 8080:localhost:80 user@host
فقط تونل، بدون اجرای shell راهدور
ssh -f -N -L 8080:localhost:80 user@host
باز کردن تونل در پسزمینه
ssh -g -L 8080:localhost:80 user@host
اجازه استفاده hostهای دیگر از forward محلی
hostهای واسط / bastionها
5ssh -J jump@bastion user@target
عبور از bastion برای رسیدن به هدف
ssh -J h1,h2 user@target
زنجیرهسازی چند host واسط
ProxyJump bastion
معادل پیکربندی -J
ProxyCommand ssh -W %h:%p bastion
jump قدیمی مبتنی بر ProxyCommand
ssh -o ProxyJump=bastion user@target
گزینه ProxyJump درونخطی
انتقال فایل (scp و sftp)
7scp file user@host:/path/
کپی فایل محلی به سرور
scp user@host:/path/file .
کپی فایل راهدور به دایرکتوری فعلی
scp -r dir/ user@host:/path/
کپی بازگشتی یک دایرکتوری
scp -P 2222 file user@host:/path/
کپی روی پورت سفارشی (توجه به -P بزرگ)
sftp user@host
شروع نشست تعاملی SFTP
put localfile / get remotefile
بارگذاری / دریافت درون SFTP
rsync -avz -e ssh dir/ user@host:/path/
همگامسازی کارآمد روی SSH (قابلادامه)
ssh-agent و forwarding
7eval "$(ssh-agent -s)"
راهاندازی agent در shell فعلی
ssh-add ~/.ssh/id_ed25519
افزودن یک کلید به agent
ssh-add -l
فهرست کلیدهای بارگذاریشده در agent
ssh-add -D
حذف همه کلیدها از agent
ssh-add --apple-use-keychain ~/.ssh/id_ed25519
ذخیره passphrase در keychain مک
ssh -A user@host
forward کردن agent برای این اتصال
ForwardAgent yes
معادل پیکربندی forwarding agent
هیچ موردی با «:q» مطابقت ندارد.
به کمک نیاز دارید؟
با این ابزار مشکلی پیدا کردید؟ به تیم ما اطلاع دهید.