بازگشت به وبلاگ
مه 23, 2026راهنماها

نحوه تنظیم SFTP برای انتقال امن فایل

از OpenSSH برای آپلود SFTP در VPS خود استفاده کنید: کاربران ایجاد کنید، chroot jails کنید و با FileZilla یا WinSCP متصل شوید.

نحوه تنظیم SFTP برای انتقال امن فایل

SFTP (پروتکل انتقال فایل SSH) آپلود و دانلود فایل رمزگذاری شده را بدون دیمون FTP جداگانه فراهم می کند. در لینوکس VPS، SFTP در OpenSSH تعبیه شده است - این راهنما تنظیمات ایمن را در سرورهای Hiddence نشان می دهد.

SFTP با کاربر اختصاصی

یک کاربر فقط برای آپلود فایل ایجاد کنید:

bash
sudo adduser sftpuser
sudo passwd sftpuser

# Test SFTP from client:
sftp sftpuser@YOUR_VPS_IP

# Or use FileZilla: Protocol SFTP, port 22

زندان Chroot (توصیه می شود)

برای امنیت کاربر را به یک دایرکتوری محدود کنید:

bash
sudo mkdir -p /var/sftp/sftpuser/upload
sudo chown root:root /var/sftp/sftpuser
sudo chmod 755 /var/sftp/sftpuser
sudo chown sftpuser:sftpuser /var/sftp/sftpuser/upload

sudo nano /etc/ssh/sshd_config

# Add at end:
Match User sftpuser
    ChrootDirectory /var/sftp/sftpuser
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no

sudo systemctl restart sshd

از دسکتاپ وصل شوید

مشتریان محبوب از SFTP خارج از جعبه پشتیبانی می کنند:

  • FileZilla — میزبان: sftp://YOUR_VPS_IP، پورت: 22، نوع ورود: عادی
  • WinSCP - پروتکل: SFTP
  • macOS Finder - اتصال به سرور: sftp://user@IP
  • لینوکس: sftp user@IP یا scp file user@IP:/path/
  • VS Code - پسوند SSH از راه دور برای ویرایش مستقیم

چک لیست امنیتی

  • در صورت امکان از کلیدهای SSH به جای رمز عبور برای کاربران SFTP استفاده کنید
  • هرگز دسترسی root SFTP را با اشخاص ثالث به اشتراک نگذارید
  • غیرفعال کردن اعتبار رمز عبور برای root در sshd_config
  • از chroot برای حساب‌های فقط آپلود استفاده کنید
  • با Fail2ban در پورت SSH ترکیب کنید
  • فایروال: در صورت امکان پورت 22 را فقط از IP های قابل اعتماد مجاز کنید

نکات

  • SFTP FTP نیست - پورت 21 را باز نکنید مگر اینکه به FTP قدیمی نیاز داشته باشید
  • برای وردپرس، کلیدهای SSH + sftp را در wp-config ترجیح دهید یا از ابزارهای استقرار استفاده کنید
  • rsync از طریق SSH برای مهاجرت های بزرگ سریعتر است
  • در صورت عدم موفقیت آپلود، مجوزها را بررسی کنید (755 dir، 644 فایل)
  • پس از تغییرات sshd_config، همیشه SSH را در جلسه دوم قبل از بسته شدن تست کنید