29 Eylül 2014 Pazartesi

vsFTPd Kurulumu ve Yapılandırılması

FTP Nedir?
File Transfer Protocol (FTP) günümüzde internet üzerinde kullanılan en eski ve en bilinen protokollerden biridir. FTP nin amacı kullanıcıların, işletim sistemleri arasındaki dosya paylaşım sistemlerindeki farkları bilmesine gerek kalmadan basit dosya paylaşımı yapabilmelerini sağlamaktır. FTP oldukça eski bir protokol olduğundan kullanıcı adı ve şifre bilgileri için herhangi bir kriptoloji işlemi yapmaz. Şifreler açık halde gönderilir.
VsFTPd (very secure FTP Daemon)
Hızlı ve gelişmiş özelliklere sahiptir. Ayarların büyük çoğunluğu güvenliğe yöneliktir. Diğer birçok FTP sunucusunda eksik olan özellikleri desteklemekedir:
  • Çok yüksek güvenlik gereksinimleri
  • İyi ölçeklenebirlik
  • Sanal kullanıcı yaratma olanağı
  • IPnG desteği
  • Ortalama başarımdan daha fazlası
  • Sanal IP verebilme olanağı
  • Yüksek hız

Kurulum



Vsftpd depoda hazır bulunduğu için herhangi bir paket indirmesine gerek kalmadan direk yükleme yapılabilir.
  • apt-get install vsftpd

Şimdi vsftpd'nin konfigürasyon ayarlarını yapalım.
  • vim /etc/vsftpd.conf

Default ayarlarda aktif olarak gelen anonymous girişini pasif edelim.
  • anonymous_enable=YES satırını NO olarak değiştirelim.

Localimizdeki kullanıcıların şifreleri ile giriş yapabilmeli ve izinlerde sorun yaşamamaları için aşağıdaki seçeneklerin önündeki # işareti kaldırılmalıdır. Böylece her kullanıcı kendi home dizinine erişebilecektir.
  • local_enable=YES
  • write_enable=YES

Kullanıcıların işlemler sırasında izin sorunları yaşamaması için aşağıdaki seçeneklerin önündeki # işareti kaldırılmalıdır.
  • chown_uploads=YES
  • chroot_local_user=YES
  • chroot_list_enable=YES

Yukarıdaki son seçenek olan chroot_list_enable bize belirlemiş olduğumuz kullanıcıların ftp server'ımıza erişme izni vermemizi mümkün kılıyor. Bizde bu seçeneği YES yaptığımız için vsftpd.chroot_list dosyasını oluşturup bunun içine de sunucumuza erişmesini istediğimiz kullanıcıları alt alta gelecek şekilde ekleyeceğiz ardından vsftpd.conf dosyasında bunun yolunu göstermemiz gerek. Şuan konfigüre dosyasını düzenlediğimiz için yorum satırı olarak gösterilmiş olan chroot_list_file=/etc/vsftpd.chroot_list satırını # işaretini kaldırarak düzeltelim.
  • chroot_list_file=/etc/vsftpd.chroot_list

Konfigürasyon ayarlamaları bitti dilerseniz ek olarak aşağıdaki gibi konfigürasyonlarda kullanılabilir.
  • ftpd_banner=Login sırasında kullanıcıya görünecek yazı
  • max_clients=Maksimum client bağlantı sayısı
  • max_per_ip=IP başına yapılabilecek bağlantı sayısını sınırlama

Şimdi vsftpd.conf dosyasını kaydedip çıkalım ve önceki adımda bahsettiğimiz sunucuya erişebilen kullanıcıların olduğu dosyayı oluşturmaya ve kullanıcıları alt alta eklemeye başlayalım.
  • vim /etc/vsftpd.chroot_list

Eğer sunucumuzda şuanda var olan kullanıcıların dışında birinin erişmesini istiyorsak yeni kullanıcı oluşturabiliriz. Oluşturulan kullanıcı mutlaka etc/vsftpd.chroot_list dosyasına eklenmelidir aksi takdirde ftp server'a erişemeyecektir.
  • adduser kullanıcı_adı

Buradaki önemli nokta şudur;
adduser değilde useradd komutu ile kullanıcı eklendiğinde /home dizini altında kullanıcı adıyla bir aynı klasör oluşturulmadığı için bazı izin sorunları yaşanabiliyor. Eğer useradd komutu ile kullanıcıyı oluşturduysak /home dizininin altına kullanıcı adıyla aynı bir klasör oluşturup "chown kullanıcı_adı:kullanıcı_grubu -R kullanıcı_klasörü" komutuyla sahiplikler verilip sorun ortadan kaldırılmış olur.
vsFTPd'nin yüklenirken oluşturduğu kullanıcıyı işimize yaramadığı için sistemden silelim.
  • userdel ftp

Şimdi servisi yeniden başlatıp FTP sunucumuza erişebiliriz.
  • service vsftpd restart

Sunucumuza Filezilla ile erişip klasör oluşturabiliriz.


Veya Windows istemcimizden FTP sunucumuza erişip dosya yükleyebiliriz.












vsFTPd'nin log dosyalarının bulunduğu konum;
  • /var/log/vsftpd.log

Hiç yorum yok:

Yorum Gönder