نحوه نصب ftpserver در centos
در این مقاله به نحوه نصب ftpserver در centos میپردازیم و با چند با تنظیمات پیشرفته راه اندازی ftpserver در centos در خدمت شما هستیم.
نحوه نصب ftpserver در centos
FTP یا پروتکل File Transfer Protocol یکی از پروتکل های تحت شبکه و با مقیاس بزرگ برای جابجایی اطلاعات فایلی میباشد که بصورت های سرور به سرور و سرور به کلاینت و… فعالیت میکند.
ftpserver برای ارایه فایل یا داده هایی است که برای استفاده در شبکه های محلی , آنلاین , اینترانت و … میباشد که تحت پروتکل های شبکه ای مختلفی از جمله ستاره ای و مش نیز میتوان از آن استفاده کرد.
یکی از مشکلات اساسی این پروتکل امنیت پایین آن است که در صورتی که درست تنظیم و کانفیگ نشود مستقیم فایل ها و داده ها در دسترس قرار میگیرند .
برای مثال نسخه های قدیمی زبان تحت خانواده ویندوز که زبان برنامه نویسی فرمی نیز شناسخته میشود (ASPX) و متاسفانه همچنان نیز خیلی از سایت های مهم در حال میزبانی از ان هستند باگ های مختلفی ارایه میدادند که بزرگترین آن ها دسترسی به فایل ها از طریق پورت 21 و پروتکل ftp بود .
سرویس FTP یکی از پرکاربردترین سرویس های ارسال فایل های بک آپ مانند بک آپ سیپنل و بک آپ دایرکت ادمین میباشد.
در صورتی که تنظیمات اف تی پی سرور را درست اعمال کنید مشکلی از بابت امنیت نخواهید داشت و میزبان های ویندوزی و لینوکسی در نسخه های آپدیت ویندوز سرور و لینوکس سرور قطعا امنیت بالایی نسبت به نسخه های قدیمیتر خود دارند.
برای امنیت بیشتر ما از VSFTPD استفاده میکنیم که مخفف عبارت Very Secure FTP Daemon میباشد.
پیش نیازها:
- سرور مجازی لینوکس
- نام کاربری root یا دسترسی sudo
- نرم افزار putty
- نرم افزار مدیریت ftp مانند FileZilla
نصب ftpserver در centos
قبل از شروع به سرور با مشخصات ip,username,passwd توسط نرم افزا putty نتصل میشویم.
نکته: در صورت نیاز میتوانید سرور مجازی ایران و سرور مجازی اروپا را در کنار سرور اختصاصی ایران و هاست و… را از فاما سرور تهیه کنید.
برای شروع نیاز داریم تا سرویس های iptable نسخه ipv4 و ip6table نسخه آیپی v6 را در سرور centos غیر فعال کنیم.برای این کار دستورات زیر را در محیط SSH وارد میکنیم.
service iptables stop
service ip6tables stop
برای چک کردن وضعیت iptables دستورات زیر را وارد میکنیم.
chkconfig iptables off chkconfig ip6tables off
دستور زیر را برای بروزرسانی مخازن و پکیج های cent os وارد میکنیم.
yum -y update
نکته: ممکن است بر اساس سرعت اینترنت سرور شما این آپدیت مدت زمانی طول بکشد در صورتی که محدودیتی در مخازن شما اعمال شده میتوانید از میرور رسمی centos در ایران فاماسرور استفاده کنید.
بعد از بروزرسانی بسته ها برای نصب سرویس vsftpd از دستور زیر استفاده میکنیم.
yum install vsftpd
بعد از اجرای دستور بالا گزینه y را به منزله تایید کلیک میکنیم.
سپس با دستور زیر ftp client را نیز نصب میکنیم.
yum install -y ftp
پس از اتمام نصب پکیج ها ftp باید سرویس آن که بصورت پیشفرض غیر فعال است را فعال سپس در لیست اکتیو قرار دهیم تا بعد از ریست شدن سرور بصورت خودکار اجرا شود.
systemctl start vsftpd systemctl enable vsftpd
سپس باید سرویس ftp را در فایروال فعال کنیم و پورت 21 را نیز مجاز برای استفاده ورودی و خروجی نماییم.
firewall-cmd --zone=public --permanent --add-port=21/tcp firewall-cmd --zone=public --permanent --add-service=ftp
سپس فایروال را برای اعمال تغییرات راه اندازی مجدد میکنیم.
firewall-cmd --reload
کار تمام است و سرویس ما با موفقیت نصب و راه اندازی شد و برای استفاده باید تنظیماتی دیگر نیز اعمال شود.
تنظیم FTP Server در centos
در این مرحله ما با فایل ها و تنظیماتی روبرو هستیم که نیاز داریم با ویراشگر های متنی کار کنیم در صورتی که در سرور شما دستورات با خطا مواجه میشوند با دستور زیر میتوانید ویرایشگر nano را در سرور نصب نمایید.
yum install nano -y
نیاز داریم تا فایل اصلی پروتکل VSFTP را که vsftpd.conf نام دارد باز کنیم و ویرایشی انجام دهیم.
nano /etc/vsftpd/vsftpd.conf
بعد از باز شدن فایل تنظیمات لطفا تنظیمات را خط به خط مطالعه کنید و مانند جدول زیر مواردی را نیاز به تغییر دارید که طبق جدویل زیر اقدام به تغییر نمایید.
بعد از اعمال و تغییرات با زدن کلید Ctrl+X و تایید با Y تغییرات را ذخیره میکنیم.
شما می توانید لیست یوزر هایی مجاز یا غیرمجاز را در فایل /etc/vsftpd.userlist مشخص کنید.
برای اعمال تغییرات دستور زیر را میزنیم.
nano etc/vsftpd.userlist
سپس با کپی کردن موارد زیر و کلیک راست کردن روی فایل باز شده محتویات را به داخل فایل بالا منتقل مکینیم.
userlist_enable=YES userlist_file=/etc/vsftpd.userlist userlist_deny=NO chroot_local_user=YES allow_writeable_chroot=YES setsebool -P ftp_home_dir on semanage boolean -m ftpd_full_access --on
سپس با دستور زیر سرویس را ریستارت میکنیم.
systemctl restart vsftpd
برای اتصال نیاز داریم تا یک کاربر ایجاد نمایید برای افزودن کاربر در cent os دستور زیر را میزنیم
useradd famaserver
سپس برای نام کاربری famaserver با دستور زیر پسوری را تعیین میکنیم.
passwd famaserver
کار تمام است حال با مشخصات آیپی سرور + نام کاربری ایجاد شده و کلمه عبور میتوانیم به سرور متصل و فایل را آپلود کنیم.
برای تست با نرم افزار FileZilla به سرور ftp وارد شدیم و چندین فایل در دایرکتوری اصلی آپلود کردیم.
نحوه نصب ftpserver در centos
فاماسرور
چطور میتوان از این سرویس برای بک آپ استفاده کنیم؟
دایرکت ادمین و سیپنل و دیگر پنل های مدیریت هاست در قسمت بک آپ گزینه ای تحت عنوان ftp دارند که با وارد کردن مشخصات میتوانید بک آپی که از سرور گرفته میشود مستقیم منتقل کنید به ftp دیگر مانند تصویر زیر.
نکته: برای امنیت بیشتر سعی کنید سرور های بک آپ را مانند ما بصورت لوکال تنظیم کنید تا ترافیک مصرفی لوکال و امنیت آن تضمین شده باشد.
آیا میتوان بصورت مستمر و پربازدید به عنوان هاست دانلود هم از این سرویس استفاده کرد؟
بله در صورت نصب آپاچی میتوانید تنظیمات را طوری تعیین کنید که فایل ها برای دانلود صرفا نمایش داده شود.مانند https://dl.famaserver.com
در صورتی که آیپی لوکال باشد آیا میتوان سرویس ها را نصب کرد؟
بله صرفا در صورتی که شبکه لوکال شما NAT داشته باشد دسترسی به اینترنت دارید و میتوانید بسته ها و آپدیت ها را نصب کنید در غیر اینصورت با آیپی ولید یکبار تنظیمات و نصب ها و آپدیت ها را انجام دهید سپس با دستور nmtui در centos آیپی را بصورت لوکال وارد کنید و از آن استفاده کنید.