آموزش نصب و کانفیگ ftp سرور در CentOS 7	
	
	
		
این آموزش زیاد زمان نمیبره ولی شما باید بصورت مجازی یا فیزیکی،این سیستم عامل را در اختیار داشته باشید.
شروع:
به ssh لوگین کرده و مخازن EPEL فعال میکنیم
	
کد:
	
rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-2.noarch.rpm
مخازن CenstOS ایپدیت میکنیم
	
کد:
	
خوب حالا 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 
میکنیم
	
کد:
	
حالا وقت اضافه کردن یوزر test به گروه ftpgroup هستش و ساختن پسورد برای test
	
کد:
	
useradd  -G ftpgroup test -s /sbin/nologin -d /ftpshare
passwd test
خوب حالا لازمه فولدر ftpshare که ساختیم در قبال پاک کردن تغییر اسم محافظت کنیم
 
	
کد:
	
تموم شد حالا کافیه ادرس یا دامین خود رو داخل مرورگر وارد کنیم
	
کد:
	
قبل اینکه آموزش تموم بشه اگه بخواهید tls فعال کنید بروی FTP SERVER برای اینکار مطابق زیر عمل کنید
	
کد:
	
تغییرات مطابق متن زیر انجام و جاهایی که قراره اصلاح بشه اصلاح کنید
	
کد:
	
[...]
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 باز کنیم متن زیر به انتهای فایل زیر اضافه میکنیم
حالا متن زیر به انتهای فایل اضافه میکنیم
	کد:
	###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 فعال کنید.
ترجمه شده.
 تاریخ ارسال: 2015-02-16           
			تعداد بازدید: 10721           
		نویسنده: admin