چرا به اکانت FTP نیاز داریم و چه مشکلاتی را حل میکند؟
تصور کنید یک سایت فروشگاهی با دهها هزار فایل دارید و میخواهید یک طراح گرافیک فقط به پوشه تصاویر دسترسی داشته باشد، یا یک توسعهدهنده بتواند فایلهای قالب را ویرایش کند اما به دیتابیس دسترسی نداشته باشد. در این شرایط، دادن دسترسی کامل cPanel یا SSH به همه همکاران ریسک امنیتی بزرگی است. راه حل استاندارد، ساخت اکانت FTP با دسترسی محدود است.
با یک اکانت FTP میتوانید:
- دسترسی هر کاربر را دقیقاً به یک پوشه خاص محدود کنید (مثلاً
public_html/images). - دسترسی نوشتن، خواندن یا حذف فایلها را به صورت جداگانه تنظیم کنید.
- در صورت اتمام همکاری، بدون تأثیر روی سایر کاربران، اکانت را حذف کنید.
- ترافیک و تعداد فایلهای آپلود شده را کنترل کنید (در صورت نیاز).
در این مقاله، فرض میکنیم از هاست لینوکس با کنترل پنل cPanel یا DirectAdmin استفاده میکنید. اگر از سرورنت خدمات هاستینگ دریافت کردهاید، این مراحل دقیقاً در محیط مدیریت هاست شما قابل اجراست.
ساخت اکانت FTP محدود به یک پوشه (گام به گام)
مرحله ۱: ورود به کنترل پنل و یافتن بخش FTP
وارد cPanel یا DirectAdmin شوید. در cPanel، به دنبال بخش Files بگردید و گزینه FTP Accounts را کلیک کنید. در DirectAdmin، گزینه FTP Management را در منوی اصلی پیدا کنید.
مرحله ۲: تنظیمات اکانت جدید
فرم ایجاد اکانت جدید را با دقت پر کنید. مهمترین بخش، تعیین مسیر (Directory) است. فرض کنید میخواهید یک اکانت برای مدیریت پوشه public_html/downloads بسازید:
- Log in: نام کاربری را وارد کنید (مثلاً
downloads_user). - Password: یک رمز قوی با ترکیب حروف بزرگ، کوچک، عدد و نماد انتخاب کنید. از رمزهای تکراری استفاده نکنید.
- Directory: اینجا مهمترین بخش است. مسیر را به صورت کامل وارد کنید:
/home/username/public_html/downloads. توجه کنید کهusernameنام کاربری اصلی هاست شماست. - Quota (اختیاری): اگر میخواهید حجم فضای مصرفی این کاربر محدود شود، مقدار را بر حسب مگابایت وارد کنید. مثلاً
500یعنی حداکثر ۵۰۰ مگابایت.
سپس دکمه Create FTP Account را بزنید.
مرحله ۳: تست اتصال و بررسی دسترسی
با یک کلاینت FTP مانند FileZilla یا Cyberduck، اتصال را تست کنید. اطلاعات زیر را وارد کنید:
- Host: آدرس IP یا دامنه سایت (مثلاً
ftp.yourdomain.comیا192.168.1.100) - Username: نام کاربری کامل (در cPanel معمولاً به صورت
username@domain.comاست) - Password: رمز عبور تعیین شده
- Port: ۲۱ (پیشفرض)
پس از اتصال، بررسی کنید که کاربر فقط محتویات پوشه downloads را میبیند و نمیتواند به پوشههای بالاتر (مثلاً public_html یا home) دسترسی پیدا کند. اگر موفق شد به پوشههای بالاتر برود، یعنی مسیر اشتباه تنظیم شده است.
مدیریت دسترسیها و تنظیمات پیشرفته
تغییر رمز عبور و محدودیتهای امنیتی
برای تغییر رمز یک اکانت FTP موجود، به همان بخش FTP Accounts برگردید. در کنار نام کاربری، گزینه Change Password را کلیک کنید. توصیه میشود هر ۳ ماه یک بار رمزها را تغییر دهید.
همچنین میتوانید از طریق SSH (در صورت دسترسی root) محدودیتهای بیشتری اعمال کنید. مثلاً با ویرایش فایل /etc/vsftpd/vsftpd.conf میتوانید گزینه chroot_local_user=YES را فعال کنید تا کاربران نتوانند از پوشه خانگی خود خارج شوند. اما در هاست اشتراکی، معمولاً cPanel این کار را خودکار انجام میدهد.
مدیریت همزمان چند اکانت FTP
اگر چندین همکار دارید، برای هر کدام یک اکانت جداگانه بسازید. هر اکانت میتواند به یک پوشه متفاوت اشاره کند. مثلاً:
- developer1: دسترسی به
public_html/templates - designer1: دسترسی به
public_html/images - content_writer: دسترسی به
public_html/blog
این کار باعث میشود اگر یکی از اکانتها به خطر بیفتد، خسارت محدود به همان پوشه باشد.
حذف امن اکانت FTP و پاکسازی کامل
مراحل حذف اکانت
وقتی یک همکار از پروژه خارج میشود یا دیگر به دسترسی نیاز ندارد، باید اکانت را حذف کنید. مراحل:
- به بخش FTP Accounts بروید.
- در کنار نام کاربری مورد نظر، گزینه Delete را کلیک کنید.
- در پنجره تأیید، روی Delete کلیک کنید.
توجه: حذف اکانت FTP فایلهای داخل پوشه را حذف نمیکند. فقط دسترسی کاربر از بین میرود. اگر میخواهید فایلهای آپلود شده توسط آن کاربر هم پاک شود، باید به صورت دستی این کار را انجام دهید.
اشتباه رایج: فراموشی حذف اکانتهای قدیمی
بسیاری از مدیران سایت پس از پایان همکاری، اکانت FTP را حذف نمیکنند. این یک خطر امنیتی جدی است. یک اکانت FTP قدیمی میتواند راهی برای نفوذ به سایت باشد. همیشه پس از اتمام پروژه، اکانت را حذف کنید و رمز عبور همه اکانتهای فعال را بهروز کنید.
عیبیابی مشکلات رایج اکانت FTP
مشکل: نمیتوانم به پوشه مورد نظر دسترسی پیدا کنم
اگر کاربر FTP نمیتواند به پوشه تعیین شده متصل شود، موارد زیر را بررسی کنید:
- مسیر پوشه را دقیقاً مطابق با ساختار هاست وارد کردهاید؟ (معمولاً با
/home/username/شروع میشود) - پوشه مورد نظر وجود دارد؟ اگر نه، ابتدا آن را از طریق File Manager ایجاد کنید.
- مجوزهای (Permissions) پوشه را بررسی کنید. پوشه باید حداقل مجوز
755داشته باشد تا کاربر FTP بتواند وارد شود.
مشکل: خطای ۵۳۰ Authentication failed
این خطا معمولاً به دلیل اشتباه در نام کاربری یا رمز عبور است. در cPanel، نام کاربری کامل معمولاً به صورت mainuser@domain.com است. در DirectAdmin، ممکن است فقط mainuser_ftpuser باشد. حتماً از فرمت صحیح استفاده کنید.
مشکل: اتصال برقرار میشود اما نمیتوانم فایل آپلود کنم
اگر کاربر میتواند وارد شود اما نمیتواند فایل آپلود کند، احتمالاً مجوزهای پوشه اشتباه است. پوشه مقصد باید مجوز 755 یا 775 داشته باشد. همچنین مطمئن شوید که quota تعیین شده پر نشده باشد.
نکات امنیتی نهایی برای مدیریت اکانت FTP
- از FTP امن (SFTP/FTPS) استفاده کنید: اگر کنترل پنل شما از SFTP پشتیبانی میکند، حتماً از آن استفاده کنید. SFTP ترافیک را رمزگذاری میکند و امنتر است.
- فعال کردن لاگگیری: در cPanel، میتوانید لاگ FTP را فعال کنید تا ببینید چه کسی چه فایلی را آپلود یا حذف کرده است. این کار به ردیابی مشکلات کمک میکند.
- محدود کردن IP: اگر همکاران شما از IP ثابت استفاده میکنند، میتوانید دسترسی FTP را فقط به IPهای خاص محدود کنید. این کار از طریق فایروال یا تنظیمات cPanel امکانپذیر است.
- عدم استفاده از FTP برای انتقال فایلهای حساس: FTP به صورت پیشفرض رمزگذاری نمیشود. برای انتقال فایلهای حساس مانند اطلاعات بانکی، از SFTP یا HTTPS استفاده کنید.
با رعایت این نکات، میتوانید از اکانت FTP خود به صورت امن و کارآمد استفاده کنید و دسترسی همکاران را به دقت مدیریت نمایید. اگر نیاز به راهنمایی بیشتر دارید، تیم پشتیبانی سرورنت آماده کمک به شماست.