راه اندازی SFTP در CentOS 7
SFTP مخفف SSH File Transfer Protocol و یک راه انتقال فایل به سرور که از رمزنگاری ارتباط SSH استفاده می کند.SFTP بر خلاف اسمش کاملا متفاوت از FTP می باشد ولی توسط برخی نرم افزار های Client FTP نیز پشتیبانی می شود.SFTP به صورت پیش فرض بر روی سرور هایی که دسترسی SSH بر روی آن ها فعال می باشد وجود دارد ولی تنظیمات آن از نظر امنیتی قابل قبول نمی باشد زیرا SSH به تمامی کاربرانی که در سیستم عامل وجود دارند دسترسی انتقال فایل ها و شل می دهد که شاید ما درنظر داشته باشیم که فقط دسترسی انتقال فایل را به یک کاربر بدهیم.در این آموزش به راه اندازی SFTP با محدودیت دسترسی فقط به یک دایرکتوری و بدون دسترسی شل در CentOS 7 می پردازیم.
ابتدا یک کاربر ایجاد کنید :
از این کاربر برای SFTP استفاده خواهیم کرد.
1 | adduser sftpalma |
بر روی کاربر ساخته شده پسورد تنظیم کنید :
1 | passwd sftpalma |
حال به ساخت یک دایرکتوری می پردازیم که کاربری که در بالا ساختیم را به این دایرکتوری برای انتقال فایل ها محدود کنیم :
ایجاد دایرکتوری :
1 | mkdir -p /var/sftp/uploads |
صاحب پوشه ی sftp را کاربر root و دسترسی آن را 755 می کنیم که توسط کاربران دیگر قابل نوشتن نباشد :
1 | sudo chown root:root /var/sftp |
1 | sudo chmod 755 /var/sftp |
و دسترسی پوشه ی uploads را هم برای کاربری که در بالا ساختیم را تنظیم می کنیم :
1 | sudo chown sammyfiles:sammyfiles /var/sftp/uploads |
حال باید به تغییر فایل کانفیگ سرویس SSH برای اعمال محدودیت ها و تنظیم SFTP برای کاربر ساخته شده در بالا که در اینجا sammyfiles می باشد بپردازیم :
1 | nano /etc/ssh/sshd_config |
در آخر فایل مقادیر زیر را اضافه کنید :
1 2 3 4 5 6 7 8 | Match User sammyfiles ForceCommand internal-sftp PasswordAuthentication yes ChrootDirectory /var/sftp PermitTunnel no AllowAgentForwarding no AllowTcpForwarding no X11Forwarding no |
در آخر سرویس SSH را ری استارت کنید :
1 | systemctl restart sshd |
در حال حاضر می توانید از کاربر sammyfiles برای انتقال فایل ها به دایرکتوری /var/sftp/uploads و بدون دسترسی به شل استفاده کنید.
[line]
تیم فنی آلما هاست، در تمام ایام سال به صورت 24 ساعته در خدمت شما هستند تا برای خرید سرور اختصاصی آنتی دیداس، سرور نیمه اختصاصی انگلیس شما را یاری کنند و جدیدترین آفر های موجود را برای شما متناسب با نیازتان ارائه کنند. برای دریافت آخرین آفر های ویژه و تخفیف های ما، می توانید از طریق تیکت با ما در ارتباط باشید تا آفر های موجود را بر اساس نیاز شما برایتان ارسال کنیم.