در این درس میخوانید
SSH Client با SSH Server تفاوت دارد
برای اتصال از ویندوز به یک سرور لینوکسی، Bitvise SSH Client روی دستگاه مبدأ نصب میشود. این برنامه میتواند با سرور سازگار SSH از جمله OpenSSH ارتباط بگیرد؛ لازم نیست Bitvise SSH Server را روی لینوکس نصب کنید. محصول Server محصول جداگانهای برای ویندوز است و شرایط مجوز متفاوتی دارد. صفحهٔ این درس و لینک دانلود همراه آن دربارهٔ Client است.
نصب و آمادهسازی پروفایل
نصبکنندهٔ Client را از صفحهٔ رسمی Bitvise دریافت کنید و معماری و نسخههای ویندوز پشتیبانیشده را در همان صفحه بررسی کنید. پیش از ورود اطلاعات حساب، نام محصول را ببینید. پس از اجرا، برای ماشین آزمایشی یک پروفایل با نام روشن ذخیره کنید؛ اگر چند سرور دارید، هر کدام پروفایل جدا داشته باشد تا اشتباه در مقصد کمتر شود.
دریافت رسمی Client: https://bitvise.com/ssh-client-download
کادرهای Login چگونه پر میشوند؟
- Host: آدرس واقعی سرور؛ بدون پیشوند https://.
- Port: پورت واقعی سرویس SSH؛ مقدار متداول 22 است.
- Username: نام حساب روی سیستم مقصد، مثلاً حسابی که مدرس ساخته است.
- Initial method: روش ورود مجاز مانند password یا publickey طبق تنظیم سرور.
- Login: شروع اتصال پس از بازبینی مقصد و اطلاعات.
راهنمای رسمی اولین اتصال Bitvise، نمونهای با سرور ویندوز روی localhost دارد. برای VPS لینوکسی، localhost را کپی نکنید؛ آن واژه به دستگاهی که کلاینت روی آن اجرا میشود اشاره دارد. نام حساب ویندوز و روش ورود دامنهای آن مثال هم الزاماً برای حساب لینوکسی شما کاربرد ندارند.
کلید میزبان را کامل بررسی کنید
در اتصال نخست، اثر انگشت کلید میزبان را با مقداری که قبلاً از مدیر یا کنسول معتبر گرفتهاید تطبیق دهید. کل رشتهٔ SHA-256 باید یکسان باشد. بعد از تأیید معتبر میتوان کلید را در سوابق برنامه نگه داشت. اگر هشدار تغییر کلید دیدید، قبل از ارسال اطلاعات ورود علت را بررسی کنید. Host key manager برای مدیریت کلیدهای میزبان است؛ این کلیدها با جفتکلید خصوصی و عمومی کاربر یکی نیستند.
ترمینال پس از ورود
بسته به گزینههای پروفایل، پنجرهٔ ترمینال و SFTP ممکن است خودکار باز شوند؛ در غیر این صورت از امکانات Terminal و SFTP برنامه استفاده کنید. در ترمینال، whoami، hostname و pwd را اجرا کنید تا حساب، دستگاه و پوشهٔ مقصد روشن شود. فایلهای تمرین را در پوشهٔ خانگی همان حساب بسازید.
whoami
hostname
pwd
mkdir -p ~/darsavand-lab/uploadsانتقال یک فایل آزمایشی با SFTP
روی ویندوز یک فایل متنی بیاهمیت مانند hello.txt بسازید. در پنجرهٔ SFTP، پنل محلی مربوط به فایلهای دستگاه شما و پنل راه دور مربوط به سرور است. در سمت راه دور، پوشهٔ darsavand-lab/uploads در خانهٔ حساب خود را باز کنید و فایل را به آن انتقال دهید. مسیر واقعی خانهٔ حساب را از pwd یا اطلاعات سرور تشخیص دهید؛ /home/student را برای هر حساب مفروض نگیرید.
ls -l ~/darsavand-lab/uploads
cat ~/darsavand-lab/uploads/hello.txtاگر خطای مجوز گرفتید، ابتدا مسیر، مالک پوشه و حساب ورود را بررسی کنید. دادن مجوز 777 به پوشههای سیستم راهحل مناسبی برای این تمرین نیست. SFTP با FTP متفاوت است؛ اطلاعات آن را در برنامهٔ FTP معمولی یا روی پورت نامرتبط وارد نکنید.
پروفایل و کلید خصوصی را چطور نگهداری کنیم؟
پروفایل میتواند آدرسها، نام حساب و تنظیمات اتصال را در خود داشته باشد و بسته به انتخابها اطلاعات حساستری هم نگه دارد. فایل پروفایل را عمومی نکنید و رمز و کلید خصوصی را در گزارش تمرین قرار ندهید. اگر روش publickey انتخاب شده، کلید عمومی باید از قبل برای حساب مقصد مجاز شده باشد؛ داشتن فایل خصوصی در کلاینت بهتنهایی اجازهٔ ورود ایجاد نمیکند.
تمرین با پاسخ راهنما
فایل را انتقال دادهاید اما در مرورگر وب دیده نمیشود. آیا انتقال خراب است؟ پاسخ: خیر؛ SFTP فقط فایل را در مسیر مقصد میگذارد. وبسرور، ریشهٔ سایت و مجوز ارائهٔ عمومی موضوع دیگری هستند. در این تمرین هدف، وجود فایل در پوشهٔ خانگی و خواندن آن در ترمینال است، نه انتشار عمومی.
ادامهٔ مسیر و منابع انگلیسی
پیشنیاز SSH: https://www.darsavand.com/resources/ssh-first-connection-host-key-basics
ابزار جایگزین برای نشست ترمینال: https://www.darsavand.com/resources/putty-ssh-windows-beginner-guide
Bitvise، نصب Client: https://bitvise.com/getting-started-install-ssh-client
Bitvise، مراحل اولین اتصال: https://bitvise.com/getting-started-connect-first-time
Bitvise، کلیدهای عمومی در SSH: https://bitvise.com/public-keys-in-ssh
پیشنیاز و محیط اجرای مثالها
درس 8 از ۱۰ در مسیر مقدماتی لینوکس و مفاهیم سرور. درس SSH و مفهوم کاربر و مجوز فایل را خوانده باشید. آدرس و اطلاعات حساب مجاز و اثر انگشت معتبر سرور آزمایشی را آماده کنید.
پیشرفت روی همین مرورگر ذخیره میشود.