اَبرِ دیجیتال، مرکز تخصصی ارائه سرویس های ابری، سرور مجازی/اختصاصی، هاست و دامنه

اَبرِ دیجیتال، مرکز تخصصی ارائه سرویس های ابری

دریافت مشاوره رایگان

انتقال فایل‌ها و پوشه‌ها از ویندوز به لینوکس با WinSCP

چکیده

 

این راهنمای جامع، گام‌به‌گام و سئو شده توضیح می‌دهد چگونه با استفاده از WinSCP فایل‌ها و پوشه‌ها را از ویندوز به لینوکس منتقل کنید. شامل نصب و پیکربندی SSH در لینوکس، نصب WinSCP در ویندوز، اتصال با رمز عبور و کلید خصوصی، روش‌های انتقال (گذراندن درگ‌انددراپ، همگام‌سازی، خط فرمان)، نکات امنیتی، رفع اشکال متداول و بهترین روش‌ها برای عملکرد و اتوماسیون است.

 

فهرست مطالب

 

مقدمه و مزایا

پیش‌نیازها

نصب و فعال‌سازی SSH در لینوکس

نصب و پیکربندی WinSCP در ویندوز

اتصال اولیه با رمز عبور (SFTP/SCP)

اتصال امن با کلید خصوصی (SSH key)

انتقال فایل‌ها و پوشه‌ها — روش‌ها و نکات عملی

همگام‌سازی پوشه‌ها و تنظیمات خودکار

اسکریپت‌نویسی و اتوماسیون انتقال با WinSCP

تنظیمات پیشرفته و بهینه‌سازی سرعت

امنیت و بهترین شیوه‌ها

رفع اشکال متداول

نتیجه‌گیری و منابع پیشنهادی

 

مقدمه و مزایا

 

WinSCP یک کلاینت گرافیکی قدرتمند برای انتقال فایل بین ویندوز و سرورهای لینوکسی است. مزایا: رابط کاربری آسان، پشتیبانی از SFTP/SCP/FTP/WebDAV، رمزگذاری ارتباط، همگام‌سازی خودکار پوشه‌ها، پشتیبانی از کلیدهای SSH و امکان اجرای دستورات از پنجره‌ی ترمینال. این راهنما برای کاربران مبتدی تا پیشرفته مفید است.

 

پیش‌نیازها

 

سرور لینوکس با SSH فعال و دسترسی (IP/نام دامنه).

– حساب کاربری روی سرور لینوکس (نام کاربری و رمز عبور یا کلید SSH).

– ویندوز با WinSCP نصب‌شده (نسخه پایدار اخیر).

– دسترسی شبکه (پورت 22 باز/فوروارد شده بین دو دستگاه).

– (اختیاری) PuTTY/ssh-keygen برای تولید کلیدهای SSH روی ویندوز.

 

نصب و فعال‌سازی SSH در لینوکس

 

نصب OpenSSH (Debian/Ubuntu)

به‌روزرسانی مخازن:

sudo apt update

 

نصب OpenSSH server:

 

sudo apt install openssh-server -y

 

 

بررسی وضعیت:

 

sudo systemctl status ssh

 

فعال‌سازی سرویس برای اجرا در بوت:

 

sudo systemctl enable ssh

 

 

نصب در RHEL/CentOS/Fedora

sudo dnf install openssh-server -y
sudo systemctl enable --now sshd
sudo systemctl status sshd

 

 

تنظیمات پایه در /etc/ssh/sshd_config

- پورت پیش‌فرض: 22 (در صورت نیاز برای امنیت می‌توانید آن را تغییر دهید).
- PermitRootLogin را روی no قرار دهید.
- PasswordAuthentication: yes/no بسته به استفاده از کلید.

 

– پس از ویرایش:

sudo systemctl restart sshd

 

 

بررسی اتصال از ویندوز (پینگ/تست پورت)

– پینگ آدرس سرور:

ping <server_ip>

 

– تست پورت با PowerShell:

Test-NetConnection -ComputerName <server_ip> -Port 22

 

 

نصب و پیکربندی WinSCP در ویندوز

 

دانلود آخرین نسخه از سایت رسمی WinSCP و نصب.

هنگام نصب، گزینهٔ “Commander” (دوپنجره‌ای) یا “Explorer” را انتخاب کنید — توصیه: Commander برای کار با سرورها.

اجرای WinSCP و پر کردن فرم اتصال:

– File protocol: SFTP (توصیه) یا SCP

– Host name: آدرس IP یا دامنه سرور

– Port number: معمولاً 22

– User name و Password یا تنظیم کلید خصوصی

ذخیرهٔ نشست (Save) برای استفاده‌های بعدی.

تنظیمات پیشرفته (Advanced):

– SSH > Authentication: مسیر کلید خصوصی (Private key file) در صورت استفاده از کلید.

– Environment > Directories: تنظیم فولدرهای محلی و راه دور در هنگام باز شدن نشست.

– Transfer > Background transfer: فعال/غیرفعال کردن انتقال در پس‌زمینه.

 

اتصال اولیه با رمز عبور (SFTP/SCP)

انتخاب پروتکل SFTP در لیست.

وارد کردن آدرس، کاربر و رمز عبور.

کلیک روی Login — در صورت اتصال موفق، دو پنجره نمایش داده می‌شود (چپ: محلی، راست: راه دور).

انتقال فایل‌ها: کشیدن و رها کردن، یا راست‌کلیک و Upload/Download.

مجوز فایل‌ها: پس از انتقال با دستور chmod در ترمینال سرور تنظیم کنید:

chmod 644 /path/to/file
chmod 755 /path/to/directory

 

 

اتصال امن با کلید خصوصی (SSH key)

 

تولید کلید با PuTTYgen (ویندوز)

اجرای PuTTYgen → Generate → حرکت دادن موس برای تولید رندوم.

ذخیرهٔ Private key (.ppk) و کپی Public key.

در سرور لینوکس، کلید عمومی را به فایل ~/.ssh/authorized_keys اضافه کنید:

mkdir -p ~/.ssh
echo "ssh-rsa AAAA... user@host" >> ~/.ssh/authorized_keys
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

 

استفاده از کلید در WinSCP

در Login → Advanced → SSH → Authentication → Private key file: انتخاب فایل .ppk.

Login — اتصال بدون نیاز به رمز عبور انجام می‌شود (در صورت فعال بودن PasswordAuthentication=no).

 

تبدیل کلید OpenSSH به PuTTY (.ppk) و بالعکس

– اگر کلید در فرم OpenSSH دارید، PuTTYgen می‌تواند آن را بارگذاری و ذخیره کند.

– برای تبدیل .ppk به OpenSSH (برای استفاده در سرور) از PuTTYgen یا ابزارهای خط فرمان استفاده کنید.

 

انتقال فایل‌ها و پوشه‌ها — روش‌ها و نکات عملی

 

روش‌های انتقال

– درگ‌انددراپ: ساده‌ترین روش؛ فایل را از پنجره محلی به پنجره راه دور بکشید.

– Upload via context menu: راست‌کلیک → Upload.

– کشیدن پوشه‌ها: WinSCP به‌طور پیش‌فرض پوشه‌ها را بازگشتی ارسال می‌کند.

– چندفایل: انتخاب چند فایل با Ctrl/Shift و کشیدن.

– Resume interrupted transfers: WinSCP قابلیت تکرار/ادامه دارد.

تنظیم مجوزها پس از انتقال

– گزینه در Transfer settings → Set permissions: تنظیم خودکار مجوزها هنگام آپلود.

– یا با اجرای chmod روی سرور.

 

انتقال فایل‌های بزرگ

– تنظیم Transfer > Partially transfer large files: فعال کردن resume.

– فضای دیسک و محدودیت quota را بررسی کنید: df -h

 

حفظ مالکیت و زمان‌بندی‌ها

– WinSCP می‌تواند timestamp فایل را حفظ کند (Preserve timestamp).

– مالکیت (owner/group) معمولاً به مالک حساب کاربری آپلودکننده تغییر می‌کند مگر اینکه از root استفاده شود.

همگام‌سازی پوشه‌ها و تنظیمات خودکار

 

 

همگام‌سازی دوطرفه یا یک‌طرفه

– Commands > Synchronize: انتخاب Local → Remote یا Remote → Local.

– گزینه‌ها: موردمطالعه: file mask، comparison method (time/size)، حذف فایل‌ها (mirror).

 

زمان‌بندی همگام‌سازی

– از WinSCP scripting به‌همراه Task Scheduler ویندوز استفاده کنید تا همگام‌سازی منظم انجام شود.

مثال اسکریپت ساده:

open sftp://user:password@host/ -hostkey="ssh-rsa 2048 xx:xx:..."
synchronize remote "C:\local\folder" "/remote/folder"
exit

 

– ذخیره در فایل .txt و اجرای WinSCP.com با Task Scheduler.

 

اسکریپت‌نویسی و اتوماسیون انتقال با WinSCP

 

فایل اسکریپت نمونه

option batch on
option confirm off
open sftp://user:password@example.com/ -hostkey="ssh-rsa 2048 xx:xx:..."
put -delete "C:\local\folder\*" /remote/folder/
exit

 

– دستور put برای آپلود، get برای دانلود، synchronize برای همگام‌سازی.

– اجرای اسکریپت:

winscp.com /script=script.txt

 

 

استفاده از نسخه CLI برای اتوماسیون امن‌تر

– از فایل‌های کنفیگ یا متغیرهای محیطی استفاده کنید؛ از نگهداری پسورد در اسکریپت خودداری کنید و از کلید خصوصی استفاده نمایید.

– مثال با کلید خصوصی:

open sftp://user@example.com/ -privatekey="C:\keys\private.ppk" -hostkey="ssh-rsa 2048 xx:xx:..."

 

 

تنظیمات پیشرفته و بهینه‌سازی سرعت

 

– تغییر تعداد کانکشن‌ها یا استفاده از فشرده‌سازی SSH (اگر CPU سرور اجازه دهد).

– انتقال موازی (Background transfers) برای چند فایل هم‌زمان.

– محدود کردن پهنای باند در Transfer settings → Speed limits.

– استفاده از SCP در شبکه‌های با تاخیر کم و SFTP در شبکه‌های ناامن‌تر.

 

امنیت و بهترین شیوه‌ها

 

– همیشه SFTP یا SCP را به‌جای FTP استفاده کنید.

– استفاده از کلیدهای SSH با passphrase و محافظت از کلید خصوصی.

– غیرفعال کردن Login با root و استفاده از sudo.

– تغییر پورت SSH جزئی از امنیت است اما جایگزینی برای فایروال/قفل کردن نیست.

– تنظیم فایروال (ufw/firewalld) برای مجوز فقط IPهای مورد نیاز و پورت 22 یا پورتی که استفاده می‌کنید.

– نصب fail2ban برای جلوگیری از حملات brute-force.

 

رفع اشکال متداول

 

– اتصال رد می‌شود (Connection refused): SSH فعال نیست یا پورت اشتباه/بلوکه شده.

– زمان انتظار / timeout: بررسی فایروال، وضعیت شبکه، یا کاهش MTU در شبکه‌های خاص.

– خطای host key mismatch: key تغییر کرده — بررسی کنید آیا سرور تعویض شده یا MITM است، در صورت اطمینان entry را حذف کنید و دوباره اتصال برقرار کنید.

– مجوزهای نادرست پس از آپلود: chmod و chown برای تنظیم صحیح.

– خطای authentication failed: بررسی رمز عبور، کلید خصوصی، و فرمت کلید (ppk vs OpenSSH).

– فایل‌ها آپلود نمی‌شوند به علت محدودیت فضا: df -h و quota -v

 

نتیجه‌گیری و منابع پیشنهادی

 

WinSCP ابزار قدرتمندی برای انتقال فایل بین ویندوز و لینوکس است که هم برای استفاده دستی و هم برای اتوماسیون مناسب است. ترکیب WinSCP با کلیدهای SSH، اسکریپت‌ها و زمان‌بندی ویندوز ترکیبی امن و قابل اطمینان برای انتقال منظم فایل‌ها فراهم می‌کند.

 

منابع پیشنهادی:

– مستندات رسمی WinSCP

– مستندات OpenSSH

– مقالات مرتبط درباره امنیت SSH و مدیریت کلیدها

 

4.4/5 - (3119 امتیاز)

ارسال دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *


16 - 8

قوانین

قوانین ارسال دیدگاه

لطفاً در ارسال دیدگاه از کلمات مناسب استفاده کنید. ارسال اسپم ممنوع است.