Merhaba, bugün sizlere CentOS 7 vsftpd kurulum ve kullanıcı tanımlama nasıl yapılıyor adım adım aktarmaya çalışacağım.
FTP Server vsftpd kurulum
Terminal ile sunucumuza bağlanalım ve ilk komutumuzu çalıştıralım.
yum install vsftpd
Kurulum tamamlandıktan sonra, servis varsayılan olarak devre dışı durumdadır. Servisin otomatik olarak aktif edilmesi ve başlatılması için izleyeceğimiz adımlar ise;
# systemctl start vsftpd # systemctl enable vsftpd
Bu işlemlerden sonra sistem üzerinde firewall hizmetlerinede ilgili portlarıda izin vermeniz gereklidir. Burada yapacağımız işlem ise şu şekilde olacaktır;
# firewall-cmd --zone=public --permanent --add-port=21/tcp # firewall-cmd --zone=public --permanent --add-port=20/tcp # firewall-cmd --zone=public --permanent --add-service=ftp # firewall-cmd --reload
Genel adımlarımız tamamdır. Bu işlemler ile vsftpd kurulumu yaptık ve firewall izinlerimizi tamamlamış olduk.
vsftpd ayarları.
vsftpd ayarlarını değişikliklerini yapmadan önce varsayılan ayarlarımızın bir kopyasını alalım.
# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.orig
Dosyamızı yedekledikten sonra gelelim ayarlarımızı düzenlemeye.
anonymous_enable=NO# anonymous girişi devre dışı bırakalım local_enable=YES # local ftp erişimi write_enable=YES # dosya değişikliklerine izin verelim local_umask=022 # yerel kullanıcıların dosya oluşturmaj için umask değerini aktif edelim dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES listen=NO listen_ipv6=YES pam_service_name=vsftpd userlist_enable=YES tcp_wrappers=YES
Şimdi ftp adresine kimin erişebileceğini belirleyelim.
Burada ben ayarlarımı şu şekilde yapılandırdım;
nano /etc/vsftpd/vsftpd.conf
dosyasını açalım ve dosya içinde arama yaparak chroot_list_file satırını bulalım ve hemen altına
user_config_dir=/etc/vsftpd/vsftpd_user_conf
ekleyelim. Burada yaptığım işlem şu, ekleyeceğim kullanıcıların hangi dizin üzerinde işlem yapacağını belirlemektir.
Hemen sonrasında yazacağımız komut ise;
mkdir -p /etc/vsftpd/vsftpd_user_conf
SELinux ile FTP Sunucusunun güvenliğini sağlama
Ekleyeceğimiz kullanıcıların ana dizindeki dosyaları okuma izni verelim. Bunun için ise kullanacağım komut;
setsebool -P /var/ftp on
burada /var/ftp kısmını kendi dizininize göre değiştirmelisiniz. Daha sonra servisleri restart edelim.
# systemctl restart vsftpd
Gelelim Kullanıcı Ekleme ve FTP izni verelim
# useradd -m -c "FTP Kullanıcı Testi" -s /bin/bash ftpuser # passwd ftpuser
Ekledikten sonra kullanıcımızı ftp izinli listesine ve ftp bağlandıktan sonra erişeceği dizini tanımlayalım.
# echo 'ftpuser' >> /etc/vsftpd/chroot_list # touch ftpuser /etc/vsftpd/chroot_list && echo 'local_root=/dizin' >> /etc/vsftpd/chroot_list/ftpuser
Buraya kadar sorun almadan gelmeniz gereklidir. Herhangi bir hata almanız halinde ilgili hata kodunu araştırmanızı veya patlaşmanızı rica edeceğim. Fikir sahibi olmak ve hataları beraber gidermekten memnun olurum.
Bir problemimiz yok ise servisi tekrar yeniden başlatalım;
# systemctl restart vsftpd
Herşey tamamdır. CentOS 7 vsftpd kurulum ve kullanıcı tanımlama sonrası Test edelim hemen;
