به کانال تلگرام سرور دی ال بپیوندید ...

آموزش نصب و کانفیگ ftp سرور در CentOS 7

ارسال شده در ۱۲ اسفند ۱۳۹۳ دسته بندی : آموزشگاه مجازی ، بلاگ


این آموزش زیاد زمان نمیبره ولی شما باید بصورت مجازی یا فیزیکی،این سیستم عامل را در اختیار داشته باشید.شروع:
به ssh لوگین کرده و مخازن EPEL فعال میکنیم

کد:
rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-2.noarch.rpm


مخازن CenstOS ایپدیت میکنیم

کد:
yum update


خوب حالا ProFTPD و OpenSSL نصب میکنیم

کد:
yum install -y proftpd openssl proftpd-utils


حالا لازمه که سرویس برنامه بالا رو اجرا کنیم

کد:
systemctl start proftpd.service systemctl enable proftpd.service


نوبت به تنظیم فایروال میرسه که با دستورت زیر پورت و سرویس مربوط رو باز میکنیم

کد:
firewall-cmd –add-service=ftp –permanent firewall-cmd –reload


خوب حالا نوبت به ایجاد گروه رسیده در اینجا ما گروه ftpgroup رو اضافه میکنیم به سیستم عامل و همچنین یک یوزر به اسم test برای لوگین به ftp میسازیم و اون رو محدود به فولدر /home/ftpshare میکنیم

 

کد:
groupadd ftpgroup


حالا وقت اضافه کردن یوزر test به گروه ftpgroup هستش و ساختن پسورد برای test

کد:
useradd -G ftpgroup test -s /sbin/nologin -d /ftpshare passwd test

خوب حالا لازمه فولدر ftpshare که ساختیم در قبال پاک کردن تغییر اسم محافظت کنیم

کد:
chmod -R 1777 /ftpshare/

تموم شد حالا کافیه ادرس یا دامین خود رو داخل مرورگر وارد کنیم
کد:
ftp://IP-ADDRESS

قبل اینکه آموزش تموم بشه اگه بخواهید tls فعال کنید بروی FTP SERVER برای اینکار مطابق زیر عمل کنید
کد:
nano /etc/proftpd.conf

تغییرات مطابق متن زیر انجام و جاهایی که قراره اصلاح بشه اصلاح کنید

کد:
[…] DefaultRoot ~ !adm PassivePorts 6000 6100 […] #<IfDefine TLS> TLSEngine on TLSRequired on TLSRSACertificateFile /etc/pki/tls/certs/proftpd.pem TLSRSACertificateKeyFile /etc/pki/tls/certs/proftpd.pem TLSCipherSuite ALL:!ADH:!DES TLSOptions NoCertRequest TLSVerifyClient off TLSRenegotiate ctrl 3600 data 512000 required off timeout 300 TLSLog /var/log/proftpd/tls.log # <IfModule mod_tls_shmcache.c> # TLSSessionCache shm:/file=/var/run/proftpd/sesscache # </IfModule> #</IfDefine> […]




پورت های لازم در فایروال باز میکنیم

کد:
firewall-cmd –add-port=6000-6100/tcp –permanent firewall-cmd –reload


تنظیم SELINUX

کد:
setsebool -P allow_ftpd_full_access=1

خوب حالا نوبت به ایجاد SSL certificate رسیده
کد:
openssl req -x509 -nodes -newkey rsa:1024 -keyout /etc/pki/tls/certs/proftpd.pem -out /etc/pki/tls/certs/proftpd.pem

در مرحله بالا یکسری سوالات ازتون پرسیده میشه فقط کافیست دکمه ENTRE بزنید فقط فیلد Common Name جواب بدین IP سرور یا ادرس دامین خودتونو بدینحالا برای دلایل امنیتی فایل سرتیفیکشن فقط خوندنیش میکنیم

 

کد:
chmod 0440 /etc/pki/tls/certs/proftpd.pem


خوب تنها کار باقی مونده سرویس ProFTP کنیم

کد:
systemctl restart proftpd.service

فقط اگر خواستیم که دسترسی Anonymous به FTP Server باز کنیم متن زیر به انتهای فایل زیر اضافه میکنیم

کد:
nano /etc/proftpd.conf

حالا متن زیر به انتهای فایل اضافه میکنیم

کد:
###Anonymous share##### <Anonymous ~ftp> User ftp Group ftp UserAlias anonymous ftp DirFakeUser on ftp DirFakeGroup on ftp MaxClients 10 <Directory *> <Limit WRITE> DenyAll </Limit> </Directory>
</Anonymous>

حالا میتونیم با استفاده از نرم افزار های FTP Client به سرور کانکت بشیم فقط اگر TLS کانفیگ کردین حواستون باشه داخل نرم افزار کلاینت تنظیمات مربوط ssl فعال کنید.