ProFTPD kurulumu ve yapılandırılması

Ubuntu Türkiye Wiki sitesinden
10.32, 17 Mart 2013 tarihinde Hatas (mesaj | katkılar) tarafından oluşturulmuş 14595 numaralı sürüm (Hatas moved page ProFTPD Nasıl Kurulur ve Yapılandırılır to ProFTPD kurulumu ve yapılandırılması without leaving a redirect)
Gezinti kısmına atla Arama kısmına atla

Tanıtım

ProFTPD, GPL lisansı ile dağıtılan bir FTP sunucusudur. Genel yapı dizaynı olarak Apache web sunucusunun dizaynı örnek alınmıştır.


Temel Özellikleri


  • 1- Tek bir yapılandırma dosyası bulunmaktadır. Debian tabanlı sistemlerde genelde /etc/proftpd/proftpd.conf yolunda bulunur. Dosya içerisinde direktifler ve direktif grupları bulunur.
  • 2- Her dizine isteğe bağlı olarak koyulan .ftpaccess dosyası tıpkı Apache deki .htaccess dosyası gibidir.
  • 3- Standalone (Tekbaşına) ya da inetd (sistem hizmeti) şeklinde çalıştırılabilir.
  • 4- Anonim FTP erişiminde kök dizinler ayrı bir dizin yapısı şeklinde yapılandırılmaya gerek duymaz.
  • 5- Unix / Linux biçimli erişim yetkilendirmelerine (chmod) izin verir
  • 6- Günlük tutma özelliği vardır. Ve kayıt edilecek bilgilerin genişletilme seçeneği mevcuttur.
  • 7- Shadow Password (Gölge Parolama) desteği vardır.



Kurulum


Debian tabanlı sistemlerde (Ubuntu , Kubuntu , Xubuntu , Lubuntu, Mint , ...vb)



sudo apt-get install proftpd 


komutu verilir ve kuruluma başlanır. Yükleme esnasında size aşağıdaki gibi soru soracaktır.

Proftpd1.png


Bu soruda size açıklamasında da belirtildiği gibi Kendibaşına (Standalone) ya da inetd den (Sistem servisi) olarak çalışma modlarından hangisini kullanmak istediğinizi seçmenizi isteyecektir. Açıklamada da belirtildiği gibi eğer yüksek trafiğe sahip bir ftp sunucunuz olacak ise, yani aynı anda bağlanacak kullanıcı sayınız fazla ise. Sunucuyu kendi başına (standalone) olarak çalıştırmanız önerilir. Hem böylelikle herhangi bir saldırgan sunucunuza bağlandığında sunucu üzerinde yazılım çalıştırmak isterse hiçbir şekilde sisteme erişemediğinden başarısız olacaktır.

Yapılandırma

Sunucunuzu ilk kurduğunuzda varsayılan olarak tüm bağlantılara kapalı bir şekilde yapılandırılmış olacaktır.



sudo gedit /etc/proftpd/proftpd.conf 


komutu vererek yapılandırma dosyamızı açıyoruz.

Dosyada Kullanılan/Kullanılabilecek yönergelerden bazıları :

  • 1- ServerName ---> FTP sunucunuzun adı
  • 2- ServerType ---> FTP sunucunuzun çalışma modu
  • 3- DeferWelcome ---> Kullanıcı yetkilendirilmeden önce Hoş geldin mesajı görünsünmü?
  • 4- MultilineRFC2228 ---> Çoklu satır kullanarak ecvap verme modu
  • 5- DefaultServer ---> Varsayılan FTP sunucusu olsunmu
  • 6- ShowSymlinks ---> Sembolik linkler görünsünmü
  • 7- TimeoutNoTransfer ---> Transfer işlemi olmadan bağlantı zaman aşımı
  • 8- TimeoutStalled ---> Transfer durduktan sonraki zmaan aşımı
  • 9- TimeoutIdle ---> Boş bağlantı zaman aşımı
  • 10- DisplayLogin ---> Giriş yapıldığında Hoş geldin mesajı olarak gösterilecek dosya
  • 11- DisplayChdir ---> Dizine girildiğinde gösterilecek mesaj dosyası
  • 12- ListOptions ---> Dizin listelenirken kullanılacak seçenekler
  • 13- DenyFilter ---> Düzenli ifade (Regular expression) ile komutlarda filtreleme
  • 14- Port ---> FTP sunucunuzun kullanacağı port numarası
  • 15- MaxInstances ---> Maksimum işlem sınırı
  • 16- AllowOverwrite ---> Dosyalar üzerine yazılabilir olsunmu
  • 17- TransferLog ---> Transfer işlemlerinin kayıt altına alınacağı dosya
  • 18- SystemLog ---> Sunucuyla yapılan bağlantıların kayıt altına alınacağı dosya
  • 19- RequireValidShell ---> Bağlanacak kullanıcılar geçerli bir komut sistemine sahipmi kontrolü
  • 20- RootLogin ---> Sistem yöneticisi (root) giriş yapabilsinmi
  • 21- UseFtpUsers ---> Bağlantısı bloke edilecek kullanıcıların listesi kullanılsınmı /etc/ftpusers
  • 22- DefaultRoot ---> Bağlanacak kullanıcılar için kök dizini
  • 23- <Limit parametre> ---> Verilen parametrelere göre filtre belirlenmesi
  • 24- <Directory dizin_yolu> ---> Belirtilen dizine ait özelliklerin belirtilmesi
  • 25- <Anonymous ~ftp> ---> Anonim bağlantıların ayarlarının yapılması
  • 26- MaxClients ---> Bağlantı yapabilecek maksimum istemci sayısı


Örnekler

Senaryo 1: Kurduğum FTP sunucusuna yalnızca Anonim bağlantı yapılmasını aktif etmek istiyorum Cevap :
Yapılandırma dosyası içerisine aşağıdaki şekilde yönergeler yazılır, kaydedilir ve sunucu yeniden başlatılır

Dosya İçeriği
Dosya yolu:Yapılandırma Dosyası


<Anonymous ~ftp>
   User            ftp
   Group         nogroup
   UserAlias         anonymous ftp
   DirFakeUser      on    ftp
   DirFakeGroup    on    ftp
   RequireValidShell      off
   MaxClients         10
   DisplayLogin         welcome.msg
   DisplayChdir         .message

   <Directory *>
     <Limit WRITE>
       DenyAll
     </Limit>
   </Directory>
 </Anonymous>

Senaryo 2:
Kurduğum FTP sunucusuna belirlediğim sistem kullanıcılarının bağlanmasını istiyorum fakat hiçbir kullanıcı diğer kullanıcıların dosyalarına erişemesin

Cevap :
yapılandırma dosyası içerisinde



DefaultRoot   ~ 


olarak belirtmek ve ayrıca eğer oluşturulan kullanıcılar /bin/false gibi bir komut kabuğunu kullanacak şekilde ayarlanmış ise



RequireValidShell      off 


olarak ayarlanması ve kaydedilip sunucunun yeniden başlatılması yeterlidir.

Kaynak

http://forum.ubuntu-tr.net/index.php/topic,20654.msg249455.html#msg249455