منو سایت

  • خانه
  • وبلاگ
  • نحوه نصب سرور FTP با VSFTPD در لینوکس اوبونتو را بیاموزید

نحوه نصب سرور FTP با VSFTPD در لینوکس اوبونتو را بیاموزید

 تاریخ انتشار :
/
  وبلاگ

در این مقاله چگونه نیک سرور FTP با VSFTPD در لینوکس اوبونتو راه اندازی کنید که برای به اشتراک گذاری فایل ها بین دستگاه های مختلف استفاده می شود. به طور کامل تحصیلات داده خواهد شد. منتظر شبکه Datis باشید.

با نحوه راه اندازی سریع سرور FTP با VSFTPD در لینوکس اوبونتو آشنا شوید

یک سرور FTP با VSFTPD اوبونتو نصب کنید

FTP (پروتکل انتقال فایل) یک پروتکل شبکه استاندارد است که برای انتقال فایل از راه دور استفاده می شود. چندین سرور ftp منبع باز برای لینوکس در دسترس است.

معروف ترین و پرکاربردترین آنها PureFTPd ، ProFTPD و vsftpd هستند. در این مقاله سعی داریم نحوه راه اندازی یک سرور ftp امن ، سریع و پایدار با vsftpd (شیطان بسیار مطمئن Ftp) را به شما آموزش دهیم.

اگرچه FTP یک پروتکل بسیار محبوب است ، اما برای انتقال امن تر و سریعتر داده ها به آن نیاز دارید SCP یا SFTP استفاده کنید.

بسته vsftpd در مخازن اوبونتو موجود است و برای نصب آن ، کافی است دستورات زیر را اجرا کنید:

sudo apt update sudo apt install vsftpd

هنگامی که مراحل نصب سرور ftp به پایان رسید ، به طور خودکار فعال می شود. برای تأیید دستور زیر را وارد کنید:

sudo systemctl status vsftpd

نتیجه دستور بالا باید نشان دهد که سرویس vsftpd فعال و در حال اجرا است:

 vsftpd.service - vsftpd FTP server
Loaded: loaded (/lib/systemd/system/vsftpd.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2021-03-02 15:17:22 UTC; 3s ago
...

vsftpd را پیکربندی کنید

پیکربندی سرور vsftpd در پرونده /etc/vsftpd.conf محفوظ است.

در بخش های زیر ، برخی از تنظیمات مهم مورد نیاز برای پیکربندی امن vsftpd را بررسی می کنیم.

با باز کردن فایل پیکربندی vsftpd شروع کنید:

sudo nano /etc/vsftpd.conf

1. دسترسی به ftp

ما فقط به کاربران محلی دسترسی داریم FTP خواهیم داد. دستورالعمل ها ناشناس_قابل فعال شدن و local_enable مطابقت پیکربندی را جستجو و تأیید کنید:

anonymous_enable=NO local_enable=YES

2. قابلیت بارگذاری اطلاعات

دستورالعمل ها write_enableیافتن و اجازه بارگذاری یا حذف فایل ها:

write_enable=YES

3. شاتر کروت

برای جلوگیری از دسترسی کاربران به فایل های خارج از فهرست راهنمای مشخص شده خود ، با آنها هماهنگ کنید chroot_local_user مراحل اول:

chroot_local_user=YES

به طور پیش فرض ، به دلایل امنیتی ، هنگامی که chroot فعال است ، کاربران نمی توانند فایلهایی را در فهرست راهنمایی که به آنها دسترسی ندارند بارگذاری کنند.

برای غلبه بر این محدودیت در هنگام فعال بودن chroot ، می توانید از راه حل های زیر استفاده کنید:

روش 1: در این روش ، توصیه می کنیم تابع chroot و پیکربندی دایرکتوری ftp را فعال نگه دارید. به عنوان مثال ، ما یک دایرکتوری ftp در خانه کاربر ایجاد می کنیم. که به عنوان یک croot و یک پوشه ضبط برای بارگذاری فایل ها عمل می کند:

user_sub_token=$USER local_root=/home/$USER/ftp

روش 2: راه دیگر این است که دستور را فعال کنید allow_writeable_chroot است:

allow_writeable_chroot=YES

4. اتصالات FTP منفعل

به طور پیش فرض ، vsftpd از حالت فعال استفاده می کند. برای استفاده از حالت غیرفعال ، حداقل و حداکثر محدوده پورت را تنظیم کنید:

pasv_min_port=30000 pasv_max_port=31000

می توانید از هر پورت برای اتصالات FTP منفعل استفاده کنید. هنگامی که حالت غیرفعال فعال است ، سرویس گیرنده ftp اتصال به سرور پورت تصادفی را در محدوده ای که انتخاب کرده اید باز می کند.

5. ورود کاربران را محدود کنید

می توانید vsftpd را طوری پیکربندی کنید که فقط برخی از کاربران بتوانند وارد سیستم شوند. برای انجام این کار ، دستورات زیر را در پایین فایل پیکربندی وارد کنید:

userlist_enable=YES userlist_file=/etc/vsftpd.user_list userlist_deny=NO

وقتی این گزینه را فعال می کنید ، باید مشخص کنید که برای ورود به چه کاربرهایی باید وارد شوید. برای انجام این کار ، باید هر نام کاربری را در یک ردیف ارسال کنید /etc/vsftpd.user_list اضافه کردن.

6. تبادل اطلاعات ایمن از طریق SSL / TLS

برای رمزگذاری انتقال داده به FTP با SSL / TLS ، باید یک گواهی SSL داشته باشید و سرور FTP را برای استفاده از آن پیکربندی کنید.

اگر یک دامنه یا زیر دامنه دارید که آدرس IP سرور FTP را نشان می دهد ، می توانید یک گواهی SSL رایگان را به سرعت رمزگذاری کنید.

ما یک کلید خصوصی 2048 بیتی و یک گواهی SSL خود امضا تولید می کنیم که به مدت ده سال فعال است:

sudo openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem

کلید خصوصی و گواهی در یک فایل ذخیره می شوند.

پس از ایجاد گواهی SSL ، فایل پیکربندی vsftpd را باز کنید:

sudo nano /etc/vsftpd.conf

دستورالعمل هاrsa_cert_file وrsa_private_key_file و ارزش آنها ارائه شود pam تغییر و دستور العمل ssl_enableدر حالت YESتغییر دهید:

pasv_min_port=30000 rsa_cert_file=/etc/ssl/private/vsftpd.pem rsa_private_key_file=/etc/ssl/private/vsftpd.pem ssl_enable=YES

اگر تنظیمات فوق انجام نشده باشد ، سرور ftp فقط از TLS برای ارتباط ایمن استفاده می کند.

سرویس vsftpd را راه اندازی مجدد کنید

آموزش زیر برای نصب و راه اندازی سرور FTP با VSFTPD در لینوکس اوبونتو پس از ویرایش ، فایل پیکربندی vsftpd باید به این شکل باشد:

listen=NO listen_ipv6=YES anonymous_enable=NO local_enable=YES write_enable=YES dirmessage_enable=YES use_localtime=YES xferlog_enable=YES connect_from_port_20=YES chroot_local_user=YES secure_chroot_dir=/var/run/vsftpd/empty pam_service_name=vsftpd rsa_cert_file=/etc/ssl/private/vsftpd.pem rsa_private_key_file=/etc/ssl/private/vsftpd.pem ssl_enable=YES user_sub_token=$USER local_root=/home/$USER/ftp pasv_min_port=30000 pasv_max_port=31000 userlist_enable=YES userlist_file=/etc/vsftpd.user_list userlist_deny=NO

برای اعمال تغییرات ، فایل را ذخیره کرده و سرویس vsftpd را راه اندازی مجدد کنید:

sudo systemctl restart vsftpd

فایروال را باز کنید

اگر از فایروال UFW استفاده می کنید ؛ شما باید ترافیک FTP را فعال کنید.

تا دروازه باز شود 21 (پورت فرمان FTP) ، پورت 20 (پورت داده FTP) و 30000-31000 (محدوده پورت منفعل) ، دستورات زیر را اجرا کنید:

sudo ufw allow 20:21/tcp sudo ufw allow 30000:31000/tcp

برای جلوگیری از قفل شدن ، دروازه را باز نگه دارید 22 مطمئن باش:

sudo ufw allow OpenSSH

با غیرفعال کردن و فعال کردن مجدد UFW ، خط مشی UFW را بارگیری کنید:

sudo ufw disable sudo ufw enable

برای تأیید تغییرات خود:

sudo ufw status

خروجی:

Status: active To                         Action      From --                         ------      ---- 20:21/tcp                  ALLOW       Anywhere 30000:31000/tcp            ALLOW       Anywhere OpenSSH                    ALLOW       Anywhere 20:21/tcp (v6)             ALLOW       Anywhere (v6) 30000:31000/tcp (v6)       ALLOW       Anywhere (v6) OpenSSH (v6)               ALLOW       Anywhere (v6)

یک کاربر ftp ایجاد کنید

ما یک کاربر جدید برای آزمایش سرور FTP ایجاد می کنیم.

  • اگر کاربری که می خواهید به FTP دسترسی داشته باشد در لیست کاربران قرار دارد ، مرحله 1 را نادیده بگیرید.
  • اگر در فایل پیکربندی شما است allow_writeable_chroot=YES مرحله 3 را نادیده بگیرید

01. کاربر جدید با نام ftpuser ايجاد كردن:

sudo adduser newftpuser

02. کاربر را به لیست کاربران مجاز FTP اضافه کنید:

echo "newftpuser" | sudo tee -a /etc/vsftpd.user_list

03 یک دایرکتوری FTP ایجاد کرده و مجوزهای لازم را تنظیم کنید:

sudo mkdir -p /home/newftpuser/ftp/upload sudo chmod 550 /home/newftpuser/ftp sudo chmod 750 /home/newftpuser/ftp/upload sudo chown -R newftpuser: /home/newftpuser/ftp

همانطور که در قسمت قبل گفته شد ، کاربر می تواند فایل های خود را در فهرست قرار دهد ftp/upload بار.

در این مرحله ، سرویس ftp شما راه اندازی شده است. تنها کاری که باید انجام دهید این است که با استفاده از نرم افزار اضافی به سرور ایجاد شده متصل شوید.

دسترسی Shell را غیرفعال کنید

به طور پیش فرض ، هنگام ایجاد یک کاربر ، کاربر به سرور SSH دسترسی خواهد داشت ، مگر اینکه صریحاً مشخص شده باشد.

برای یادگیری نحوه راه اندازی یک سرور FTP با VSFTPD در لینوکس اوبونتو ، غیرفعال کردن دسترسی به پوسته ، یک پوسته جدید ایجاد کنید که به کاربر می گوید حساب او فقط به دسترسی ftp محدود شده است.

برای ایجاد یک فایل /bin/ftponly و برای استفاده از آن ، دستورات زیر را وارد کنید:

echo -e '#!/bin/shnecho "This account is limited to FTP access only."' | sudo tee -a  /bin/ftponly sudo chmod a+x /bin/ftponly

پوسته جدید برای لیستی از پوسته های معتبر در فایل /etc/shells اضافه کردن:

echo "/bin/ftponly" | sudo tee -a /etc/shells

بارگیری کاربر در /bin/ftponly تغییر دهید:

sudo usermod newftpuser -s /bin/ftponly

برای تغییر پوسته همه کاربرانی که فقط می خواهید FTP اگر دسترسی دارید ، می توانید از همان دستور استفاده کنید.

گفتگوی پایانی

در این آموزش ، ما سعی کردیم نحوه تنظیم سرور FTP با VSFTPD در اوبونتو را به شما آموزش دهیم. اگر سوالی دارید ، می توانید آنها را از طریق بخش نظرات به اشتراک بگذارید.

امیدواریم این مقاله در مورد راه اندازی سرور FTP با VSFTPD در اوبونتو مفید بوده باشد.

شبکه داتیس را در شبکه های اجتماعی دنبال کنید.

آموزش نصب سرور FTP با VSFTPD در لینوکس اوبونتو برای اولین بار در شبکه Datis ظاهر شد.

دیدگاهتان را بنویسید

آدرس ایمیل شما برای عموم منتشر نخواهد شد.