vsftpd ile FTP Sunucu Kurulumu - Centos


vsftpd


FTP Nedir?


File Transfer Protocol’ün kısaltması olan FTP adından da anlaşılabileceği gibi internetin ilk standartları arasında yer alan dosya transfer protokolüdür. İstemci-sunucu mimarisinde çalışarak ağ üzerinden kolaylıkla dosya alma ve gönderme işlemlerinin yapılmasına olanak sağlar. FTP sunucularından dosya transferi işlemlerini gerçekleştirmek için Windows kullanıcıları WinSCP‘yi Mac OS kullanıcıları da FileZilla‘yı tercih edebilirler.

vsftpd Nedir?


Başta FTP üzerindeki veri trafiğinin şifrelenmemesi, bounce saldırıları ve packet capture gibi çeşitli açıklardan dolayı güvenlik amacıyla
SSL / TLS ile güçlendirilmiş FTPS veya SSH kullanarak transfere izin veren SFTP gibi daha güvenli dosya transfer protokollerinin kullanımı önerilmektedir. vsftpd (very secure FTP daemon) ise güvenlik, performans ve kararlılık açısından kabul görerek yaygın bir şekilde Unix tabanlı sistemlerde kullanılan bir FTP sunucusudur. Özellikle isminin de belirtmiş olduğu üzere güvenlik alanına odaklanarak diğer FTP sunucuları tarafından sunulmayan pek çok özelliği desteklemektedir.

vsftpd’nin Kurulumu ve Yapılandırılması


CentOS için hazırladığım bu rehberde kurulum için ilk olarak aşağıdaki komutu çalıştırıyoruz:
sudo yum install vsftpd

Oldukça basit olan kurulum işleminden sonra vsftpd’i yapılandırmak için “/etc/vsftpd/” konumu altında yer alan “vsftpd.conf” dosyasını açarak aşağıda yer alan parametreleri güvenlik amacıyla sırasıyla güncelliyoruz:
vi /etc/vsftpd/vsftpd.conf

 

FTP sunucunuz sadece belirli kullanıcılara hizmet vermesi için anonim opsiyonunu kapatıyoruz:
anonymous_enable=NO

 

Anonim yerine kullanıcı adıyla giriş yapılabilmesi için aşağıdaki parametreyi değiştiriyoruz:
local_enable=YES

 

Son olarak her kullanıcının kendi dizininde işlem yapması için aşağıdaki değişikliği yaparak dosyayı kaydediyoruz:
chroot_local_user=YES

 

vsftpd’yi sunucunun her yeniden başlatma işleminden sonra tekrar çalışması için yapılandırmayı unutmayalım:
sudo chkconfig vsftpd on

 

vsftpd’de Kullanıcı Ekleme ve Şifre İşlemleri


vsftpd’nin CentOS 6.4 ve üzeri sürümlerinde kullanıcı eklemek için aşağıdaki komutu kullanabilirsiniz:
sudo adduser kullaniciadi

 

Benzer şekilde eklediğimiz kullanıcı için şifre belirlemek için aşağıdaki komuttan yararlanabiliriz:
sudo passwd kullaniciadi

 

digitalocean-101-19

vsftpd’de önce kullanıcı adı oluşturduk ve sonrasında da bu kullanıcı için şifre belirledik.




SFTP ile İlk Bağlantının Gerçekleştirilmesi


vsftpd’nin kurulum sonrasında da kullanıcı ekleme işlemlerini gerçekleştirdikten sonra Windows kullanıcıları WinSCP‘yi Mac OS kullanıcıları da FileZilla‘yı kullanarak sunucularına erişebilir. Windows kullanıcıları için WinSCP üzerinden örnek verecek olursak uygulamayı açtıktan sonra sol taraftaki “New Site” seçeneğine gelerek “File protocol” altından SFTP seçimini yapıp sonrasında da IP adresi ve kullanıcı adı bilgilerini doldurarak SFTP üzerinden sunucularına bağlanabilirler. Buradaki “Save” opsiyonu ile bu yapılandırmayı kaydederek uygulamayı daha sonra açtığınızda da kolaylıkla bağlantı kurabilirsiniz. FileZilla kullanıcıları da benzer şekilde uygulama üzerinden ilk bağlantılarını gerçekleştirebilir.





digitalocean-101-20


WinSCP’yi açtıktan sonra bağlantı kurmak için gerekli bilgileri giriyoruz…




digitalocean-101-21



vsftpd ile bağlantı kuruluyor…


 

 

digitalocean-101-22


İşlem tamamdır! vsftpd sunucumuza SSH üzerinden başarıyla bağlandık…



vsftpd’de SSL/TSL Ayarları


SFTP yerine FTPS’yi tercih edecek olursanız vsftpd’deki SSL / TSL için gerekli olan yapılandırmayı aşağıdaki adımları izleyerek gerçekleştirebilirsiniz. İlk olarak sertifika dosyasını yaratacağımız alt klasörü oluşturalım:
sudo mkdir /etc/ssl/private

 

Sonrasında ise aşağıdaki komut ile sertifika ve anahtarı yaratabilirsiniz. Yalnız bu komutu çalıştırdıktan sonra istenen bilgileri doldurmanız gerekiyor burada en son çıkan “Common Name” bölümüne mutlaka sunucunuzun IP adresini yazmayı unutmayın aksi takdirde hata alacaksınız:
openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout /etc/ssl/private/vsftpd.pem -out /etc/ssl/private/vsftpd.pem

 

FTP sunucusunu SSL / TSL’i destekleyecek şekilde yapılandırmak için aşağıdaki dosyayı açalım:
vi /etc/vsftpd/vsftpd.conf

 

Dosyanın sonuna inerek sertifika ve anahtar bilgilerinin hangi dosyada bulunduğunu belirtmek için aşağıdaki satırları ekliyoruz:
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem

 

Sonrasında ise dosya içerisine aşağıdaki parametreleri ekliyoruz:
ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES

 

SSL yerine TLS’in kullanımı için aşağıdaki satırları dosyaya kopyalıyoruz:
ssl_tlsv1=YES
ssl_sslv2=YES
ssl_sslv3=YES

 

Son olarak aşağıdaki parametreleri de dosyaya ekleyerek kayıt ediyoruz:
require_ssl_reuse=NO
ssl_ciphers=HIGH

 

Yaptığımız değişikliklerin geçerli olması için vsftpd’yi yeniden başlatalım:
sudo /etc/init.d/vsftpd restart


Kaynak: http://naciyuksel.com

kolay gelsin.
caylakpenguen
caylakpenguen

Truva Linux takımıyla 2006'da tanışan "Çaylak Penguen" -BASH- betiklerine bayılır. Truva'nıñ çekirdek derleme işleri ile çalışan cd tasarımıyla uğraşmaktadır.

Hiç yorum yok:

Yorum Gönderme