منبع اصلی نوشتار زیر در این لینک قرار دارد

راه اندازی ، پیکربندی و ایمن سازی FTP Server در دبیان 8

با سلام خدمت دوستان . در این مقاله ، قصد آموزش نصب و راه اندازی FTP Server و همچنین ایمن سازی آن را بر روی توزیع دبیان داریم . راه اندازی FTP Server شاید ساده باشد اما باید توجه کرد که اتصالی که توسط پروتکل FTP با مقصد ( سرور ) برقرار می شود ، فاقد هیچ گونه رمزنگاری است . یعنی در فاصله ای که پکت از سیستم شما تا سرور طی می کند ، احتمال دیده شدن نام کاربری و رمز عبور اکانت FTP وجود دارد . همچنین دیگر فایل ها و اسناد تبادل شده نیز قابل شنود و دریافت توسط شخص سوم شخص می باشد . این موضوع زمانی خود را نشان می دهد که FTP Server را جهت بک آپ گرفتن از فایل های شخصی خود بر روی سرور راه انداخته باشید و یا به بیان دیگر ، سرور شما ، یک سرور پابلیک و عمومی نباشد .

نصب و کانفیگ ابتدایی :

۱. جهت نصب ابتدا پکیچ proftpd را از داخل مخازن توزیع دانلود و نصب می کنیم . برای این منظور :

OSLearn.ir ~ # apt-get install proftpd

در هنگام نصب به قسمتی مشابه با تصویر زیر برخورد می کنید که می بایست گزینه standalone را انتخاب و بر روی Ok کلیک کرد .

1

۲. مراحل نصب تمام شد . حال سرویس proftpd را غیر فعال می کنیم تا به کانفیگ این سرویس بپردازیم . برای این منظور :

OSLearn.ir ~ # /etc/init.d/proftpd stop

 

۳. پیشنهاد می شود جهت امنیت بیش تر یک یوزر مجزا و مخصوص FTP ساخته و از طریق آن یوزر به سرور متصل شوید . جهت ساخت یوزر جدید ابتدا یک گروه با نامی دلخواه ایجاد می کنیم . برای این منظور :

OSLearn.ir ~ # addgroup ftpgroup

 

۴. حال کافیست یوزر خود را به شکل زیر ایجاد کنیم . توجه داشته باشید که من آدرس var/www/ را برای یوزر در نظر گرفتم چرا که فایل های مربوط به web server معمولا در این دایرکتوری ذخیره می شوند . شما می توانید متناسب با کانفیگ سرور خود ، این مسیر را تغییر دهید .

OSLearn.ir ~ # adduser ftp-user -shell /bin/false -home /var/www/

 

۵. بعد از ساخت یوزر و گروه ، حال یوزر ساخته شده را عضو گروه می کنیم . برای این منظور :

OSLearn.ir ~ # adduser ftp-user ftpgroup

 

۶. دسترسی یوزری که ایجاد کردیم ، متناسب با پرمیشن دایرکتوری ای که برای یوزر در نظر گرفته ایم می باشد . ما در مراحل قبل دایرکتوری var/www/ را برای یوزر ftp-user در نظر گرفتیم . حال یوزر ftp-user متناسب با پرمیشنی که بر روی دایرکتوری تنظیم شده است ، سطح دسترسی میگیرد .

 

۷. حال باید تغییراتی را در فایل کانفیگ سرویس ایجاد کرد . برای این منظور فایل کانفیگ سرویس را با یک ویرایشگر باز می کنیم :

OSLearn.ir ~ # nano /etc/proftpd/proftpd.conf

 

۸. ما در این آموزش از آی پی ورژن ۶ استفاده نمی کنیم . لذا فعال بودن سرویس بر روی آی پی ورژن ۶ را غیر فعال می کنیم . برای این منظور عبارت UseIPv6 را جست و جو کرده و مقدار جلوی آن را off قرار می دهیم .

 

۹. به منظور امنیت بیشتر ، مقادیر زیر را به فایل کانفیگ اضافه می کنیم . ( در قسمت اول دسترسی اتصال به FTP Server از طریق یوزر روت را مسدود کرده و در قسمت دوم دسترسی تمامی گروه ها به غیر از گروهی که ایجاد کردیم ، یعنی گروه ftpgroup را غیر فعال می کنیم . )

<Global>
    RootLogin	off
    RequireValidShell off
</Global>

DefaultRoot  ~

<Limit LOGIN>
    DenyGroup !ftpgroup
</Limit>

 

۱۰. کانفیگ اولیه تمام شد . حال فایل کانفیگ را ذخیره می کنیم و در نهایت سرویس proftpd را راه اندازی می کنیم . برای این منظور :

OSLearn.ir ~ # /etc/init.d/proftpd start

 

نکته : جهت اتصال می توان از ابزار هایی مثال FileZilla و … استفاده کرد .

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

 

ایمن سازی :

۱. اگر FTP Server عمومی و یا پابلیک نمی باشد ، می توان پورت پیش فرض را از ۲۱ به پورتی دلخواه تغییر داد . برای این منظور فایل کانفیگ سرویس را باز کرده و به دنبال عبارت Port می گردیم و مقدار پیش فرض را از ۲۱ به مقداری دلخواه تغییر می دهیم .

Port                            2121

 

۲. به صورت پیش فرض ورژن سرویس در داخل اسکنر هایی همانند nmap نمایش داده می شود . جهت مخفی کردن ورژن سرویس فایل کانفیگ را باز کرده و در پایین عبارت ServerName ، عبارت زیر را اضافه می کنیم :

ServerIdent                     off

 

۳. به صورت پیش فرض نامی به عنوان ServerName برای سرویس در نظر گرفته شده است . بهتر است که این مقدار را از حالت پیش فرض خارج کرده . برای این منظور در داخل فایل کانفیگ به دنبال عبارت ServerName گشته و مقدار جلوی آن را به عبارتی دلخواه تغییر دهید .

ServerName                      "OSLearn FTP Server"

 

۴. بالاتر گفتیم که سرویس FTP به صورت پیش فرض از رمزنگاری استفاده نمی کند . برای فعال کردن رمزنگاری ابتدا در داخل فایل کانفیگ به دنبال عبارت Include /etc/proftpd/tls.conf گشته و # قبل از آن را پاک کنید و در نهایت فایل کانفیگ را ذخیره کنید .

 

۵. حال از فایل etc/proftpd/tls.conf/ یک کپی تهیه کرده و فایل tls.conf شخصی سازی شده خود را ایجاد می کنیم . برای این منظور :

OSLearn.ir ~ # mv /etc/proftpd/tls.conf /etc/proftpd/tls.conf_BackUP
OSLearn.ir ~ # nano /etc/proftpd/tls.conf

 

۶. در مرحله بعد عبارات زیر را داخل فایل tls.conf می ریزیم . توجه داشته باشید که خطوط ۶ و ۷ به کلید رمزنگاری ما اشاره می کند که در ادامه آن ها را ایجاد می کنیم .

<IfModule mod_tls.c>
TLSEngine                  on
TLSLog                     /var/log/proftpd/tls.log
TLSProtocol                SSLv23
TLSOptions                 NoCertRequest
TLSRSACertificateFile      /etc/proftpd/ssl/proftpd.cert.pem
TLSRSACertificateKeyFile   /etc/proftpd/ssl/proftpd.key.pem
TLSVerifyClient            off
TLSRequired                on
</IfModule>

 

۷. حال همان طور که در بالا گفته شد ، باید اقدام به ساخت کلید رمزنگاری کرد . برای این منظور ابتدا یک دایرکتوری با نام ssl در دایرکتوری سرویس FTP ایجاد کرده و در نهایت کلید خود را می سازیم . برای این منظور :

OSLearn.ir ~ # mkdir /etc/proftpd/ssl/
OSLearn.ir ~ # openssl req -new -x509 -days 365 -nodes -out /etc/proftpd/ssl/proftpd.cert.pem -keyout /etc/proftpd/ssl/proftpd.key.pem

 

۸. جهت امنیت بیش تر ، پرمیشن فایل proftpd.key.pem را به ۰۴۴۰ تغییر می دهیم تا تنها فایل قابل خواندن برای سازنده و گروه سازنده فایل باشد . توجه داشته باشید که در پرمین ۰۴۴۰ ، گروه Other هیچ دسترسی ای ، حتی خواندن هم ندارد .

OSLearn.ir ~ # chmod 0440 /etc/proftpd/ssl/proftpd.key.pem

 

۹. تمام ! حال کافیست یک بار سرویس FTP را ، راه اندازی مجدد کنیم . برای این منظور :

OSLearn.ir ~ # /etc/init.d/proftpd restart

 

۱۰. همان طور که قبلا گفته شد ، جهت اتصال به سرور می توان از برنامه هایی نظیر FileZilla استفاده کرد .

2

تست شده بر روی Debian 8.1 Netinstall و Debian 8.4 Netinstall

 

منبع : او اس لرن دات آی آر | http://OSLearn.ir

نویسنده : E2MA3N

مطلب اضافه ، سوال و بحث پیرامون این ارسال دارید ؟ لطفا آن را در انجمن سایت مطرح کنید .

از این مطلب راضی هستید ؟ می خواهید به سایت کمک کنید ؟ رضایت خودتون رو با دونیت به ما اعلام کنید . برای دونیت روی خرید کلیک کنید . با تشکر



برچسب ها : , ,