- مقدمه
- مراحل راهاندازی
- 1. نصب vsftpd
- 2. تنظیمات اولیه vsftpd
- 3. ایجاد گواهی SSL
- 4. تنظیم دیوار آتش
- 5. راهاندازی دوباره vsftpd
- 6. بررسی وضعیت سرور
- 7. اتصال به سرور با FTP Client
- نتیجهگیری
راهاندازی Secure FTP Server با vsftpd و TLS
مقدمه
FTP یکی از پروتکلهای پرکاربرد برای انتقال فایلها در شبکه است؛ اما به دلایل امنیتی، استفاده از آن به تنهایی مناسب نیست. از این رو، استفاده از پروتکل FTPS (FTP Secure) که با TLS (Transport Layer Security) ایمن میشود، یک گزینه مناسب است. در این مقاله، به صورت گامبهگام نحوه راهاندازی یک سرور FTP ایمن با استفاده از vsftpd و TLS را بررسی خواهیم کرد.
مراحل راهاندازی
1. نصب vsftpd
در ابتدا، باید پکیج vsftpd را بر روی سرور خود نصب کنید. برای این کار از دستور زیر استفاده نمایید:
sudo apt update
sudo apt install vsftpd
2. تنظیمات اولیه vsftpd
پس از نصب، فایل پیکربندی vsftpd واقع در /etc/vsftpd.conf را با ویرایشگر متنی باز کنید. در این فایل، تنظیمات را به صورت زیر تغییر دهید:
- خط
anonymous_enable=YESرا بهNOتغییر دهید. - خط
local_enable=YESرا فعال کنید. - خط
write_enable=YESرا فعال کنید. - در انتهای فایل، موارد زیر را اضافه کنید تا TLS فعال شود:
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
rsa_cert_file=/etc/ssl/certs/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem
سپس فایل را ذخیره کنید.
3. ایجاد گواهی SSL
برای استفاده از TLS، نیاز به یک گواهی SSL دارید. میتوانید یک گواهی خودامضا تولید کنید:
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/certs/vsftpd.pem
تمامی اطلاعات خواسته شده را پر کنید تا گواهی تولید شود.
4. تنظیم دیوار آتش
برای اینکه سرور FTP بصورت بیوقفه کار کند، باید پورتهای FTP و TLS را باز کنید. به عنوان مثال، پورتهای 21 و 990 را با استفاده از UFW باز کنید:
sudo ufw allow 21/tcp
sudo ufw allow 990/tcp
همچنین برای پورتهای difault passive، میتوانید پورتهای خاصی را در فایل config اضافه کنید. به همین منظور میتوانید در فایل پیکربندی vsftpd، خطوط زیر را اضافه کنید:
pasv_enable=YES
pasv_min_port=10000
pasv_max_port=11000
و سپس دیوار آتش را برای این پورتها باز کنید:
sudo ufw allow 10000:11000/tcp
5. راهاندازی دوباره vsftpd
بعد از اتمام تنظیمات، سرور vsftpd را دوباره راهاندازی کنید تا تنظیمات جدید فعال شوند:
sudo systemctl restart vsftpd
6. بررسی وضعیت سرور
برای اطمینان از عملکرد صحیح سرور، میتوانید وضعیت آن را با استفاده از دستور زیر بررسی کنید:
sudo systemctl status vsftpd
7. اتصال به سرور با FTP Client
برای اتصال به سرور FTP ایمن، میتوانید از نرمافزارهای کلاینت FTP مانند FileZilla استفاده کنید. در این نرمافزار، آدرس سرور را وارد کرده و پورت 21 را انتخاب کنید. همچنین گزینه استفاده از FTPS را فعال کنید.
نتیجهگیری
در این مقاله، مراحل راهاندازی یک سرور FTP ایمن با استفاده از vsftpd و TLS را به تفصیل بررسی کردیم. ابتدا با نصب و تنظیمات ابتدایی سرور آشنا شدیم. سپس گواهی SSL ایجاد کردیم و تنظیمات دیوار آتش را برای دسترسی به سرور اعمال کردیم. در انتها، با راهاندازی مجدد سرور و بررسی وضعیت آن، اطمینان حاصل کردیم که سرور به درستی کار میکند. این مراحل میتواند به عنوان یک راهنمای جامع برای مدیران سرور و توسعهدهندگان حرفهای در نظر گرفته شود.
