سلام دوسان؛
در این آموزش قصد داریم نحوه تنظیم و راه اندازی FTP سرور با سیستم عامل اوبونتو را با هم بررسی کنیم. FTP یا پروتکل انتقال فایل، واسطه ای برای ارسال و دریافت فایل ها از طریق اتصال به شبکه است. با استفاده از چارچوب client/server و با موارد امنیتی SSL / TLS، FTP به کاربران این امکان را می دهد که فایل های خود را از طریق کامپیوترها به صورت کاملا امن، کارآمد و قابل اطمینان انتقال دهند. (با استفاده از پروتکل TCP / IP).
راه اندازی FTP سرور
توابع FTP همانند پروتکل های HTTP یا SMTP عمل می کنند؛ اگر بخواهیم آن ها را مقایسه کنیم این طور می توان گفت که تنها تفاوت این پروتکل ها این است که در اینترنت به جای ارسال صفحات وب از سرور به یک کاربر یا ایمیل، مسئولیت انتقال امن فایل ها از یک فرستنده به گیرنده را دارد.
توجه: این آموزش راه اندازی FTP سرور بر مبنای سیستم عامل اوبونتو 16.04 است. اما باز هم می توان همین مراحل را در هنگام ایجاد یک سرور FTP با سیستم عامل اوبونتو 14.04 یا پایین تر نیز اعمال کرد.
مرحله 1: نصب Vsftpd
در گام اول، قبل از اینکه به نصب vsftpd بپردازیم، باید پیکیج های خود را بروز رسانی کنیم. برای شروع عملیات بروزرسانی، دستور زیر را اجرا می کنیم:
sudo apt-get update
sudo apt-get install vsftpd
sudo cp /etc/vsftpd.conf /etc/vsftpd.conf.original
مرحله 2: پیکربندی های FTP و فایروال
برای اینکه سرور FTP اوبونتو بتواند با دنیای بیرونی خود ارتباط برقرار کند، باید تنظیمات پیکربندی آن را از طریق فایروال انجام داد. ابتدا ببینید آیا فایروال سیستم فعال است یا خیر. برای بررسی وضعیت، دستور زیر را اجرا کنید:
sudo ufw status
ufw: command not found
اگر بعد از وارد کردن دستور بالا یکسری قوانین تعریف شده یا پیامی را مشاهده کردید که نشان می داد فایروال فعال است، سوال اجازه ترافیک های FTP که از شما پرسیده می شود را تایید کنید. در ادامه پورت های 20 و 21 را برای ترافیک FTP باز می کنیم؛ رنج 40000-50000 طیف وسیعی از پورت های منفعل که در فایل پیکربندی، تنظیم شده است و پورت 990 هم زمانی که TLS فعال باشد، استفاده می شود. برای انجام این پیکربندی ها دستورات زیر را اجرا کنید:
sudo ufw allow 20/tcp sudo ufw allow 21/tcp sudo ufw allow 990/tcp sudo ufw allow 40000:50000/tcp
sudo ufw status
Output Status: active To Action From -- ------ ---- 990/tcp ALLOW Anywhere 20/tcp ALLOW Anywhere 21/tcp ALLOW Anywhere 40000:50000/tcp ALLOW Anywhere 20/tcp (v6) ALLOW Anywhere (v6) 21/tcp (v6) ALLOW Anywhere (v6) 990/tcp (v6) ALLOW Anywhere (v6) 40000:50000/tcp (v6) ALLOW Anywhere (v6)
مرحله 3: ساخت user directory
sudo adduser alex
sudo mkdir /home/alex/ftp
sudo chown nobody:nogroup /home/alex/ftp
sudo chmod a-w /home/alex/ftp
sudo ls -la /home/alex/ftp
total 8 dr-xr-xr-x 2 nobody nogroup 4096 Jun 29 11:32 . drwxr-xr-x 3 alex alex 4096 Jun 29 11:32 ..
sudo mkdir /home/alex/ftp/files sudo chown alex:alex /home/alex/ftp/files
echo "vsftpd sample file" | sudo tee /home/alex/ftp/files/sample.txt