Ubuntu 20.04 Focal Fossa Üzerine FTP Server Kurulumu
Bu kılavuzda, Ubuntu 20.04 Focal Fossa üzerinde VSFTPD kullanarak bir FTP sunucusunun nasıl kurulacağını göreceğiz.
VSFTPD, FTP sunucularını kurmak için popüler bir seçimdir ve birkaç Linux dağıtımında varsayılan FTP aracıdır. Uygulamayı nasıl yükleyeceğinizi ve FTP sunucunuzu nasıl kurup çalıştıracağınızı öğrenmek için aşağıda adımları takip edebilirsiniz:
Bu kılavuzda
- VSFTPD nasıl kurulur ve yapılandırılır?
- FTP kullanıcı hesabı nasıl kurulur?
- FTP sunucusuna komut satırı üzerinden nasıl bağlanılır?
VSFTPD Kurulumu
Bir şeyler ters giderse diye, orijinal yapılandırma dosyasının yedeğini saklamak tavsiye edilen uygulamadır. Varsayılan yapılandırma dosyasını yeniden adlandıralım:
sudo mv /etc/vsftpd.conf /etc/vsftpd.conf_orig
Nano veya tercih ettiğiniz metin düzenleyiciyi kullanarak yeni bir VSFTPD yapılandırma dosyası oluşturun:
sudo nano /etc/vsftpd.conf
Aşağıdaki temel yapılandırmayı dosyanıza kopyalayın. Bu yapılandırma, temel bir FTP sunucusu için yeterli olacaktır ve daha sonra, bunun düzgün çalıştığını doğruladıktan sonra ortamınızın özel gereksinimleri için ince ayar yapılabilir:
listen=NO listen_ipv6=YES anonymous_enable=NO local_enable=YES write_enable=YES local_umask=022 dirmessage_enable=YES use_localtime=YES xferlog_enable=YES connect_from_port_20=YES chroot_local_user=YES secure_chroot_dir=/var/run/vsftpd/empty pam_service_name=vsftpd rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key ssl_enable=NO pasv_enable=Yes pasv_min_port=10000 pasv_max_port=10100 allow_writeable_chroot=YES
Yukarıdaki satırları yeni oluşturduğunuz /etc/vsftpd.conf dosyanıza yapıştırın ve ardından değişiklikleri kaydedip dosyayı kapatın.
Ubuntu’nun yerleşik güvenlik duvarı varsayılan olarak FTP trafiğini engelleyecektir, ancak aşağıdaki komut trafiğe izin vermek için UFW’de bir istisna oluşturacaktır:
sudo ufw allow from any to any port 20,21,10000:10100 proto tcp
Firewall kuralları güncellendikten sonra, yeni değişiklikleri uygulamak için VSFTPD’yi yeniden başlatın:
sudo systemctl restart vsftpd
FTP Kullanıcısının Oluşturulması
FTP sunucumuz gelen bağlantıları almaya hazır, bu yüzden şimdi FTP hizmetine bağlanmak için kullanacağımız yeni bir kullanıcı hesabı oluşturmanın zamanı geldi.
ftpuser adında yeni bir hesap oluşturmak için bu ilk komutu ve hesap için bir parola belirlemek için ikinci komutu kullanın:
sudo useradd -m ftpuser sudo passwd ftpuser New password: Retype new password: passwd: password updated successfully
Her şeyin düzgün çalıştığını doğrulamak için, ftp kullanıcısının ev dizininde en az bir dosya depolamalısınız. Sonraki adımlarda FTP’ye giriş yaptığımızda bu dosya görünmelidir.
sudo bash -c "echo FTP TESTING > /home/ftpuser/FTP-TEST"
CLI Üzerinden FTP Sunucusuna Bağlantı
Artık FTP sunucumuza IP adresi veya hostname ile bağlanabilmeliyiz. Komut satırından bağlanmak ve her şeyin çalıştığını doğrulamak için bir terminal açın ve loopback adresinize (127.0.0.1) bağlanmak için Ubuntu’nun ftp komutunu kullanın. Eğer lokalden test yapılmayacaksa sunucunun loopback adresi yerine private IP’si girilmelidir.
ftp 127.0.0.1 Connected to 127.0.0.1. 220 (vsFTPd 3.0.3) Name (127.0.0.1:user1): ftpuser 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> ls 200 PORT command successful. Consider using PASV. 150 Here comes the directory listing. -rw-r--r-- 1 0 0 12 Mar 04 22:41 FTP-TEST 226 Directory send OK. ftp>
Yukarıdakine benzer bir çıktı ile karşılaşırsanız ftp sunucusunda oturum açmış olduğumuz anlamına gelmektedir. “ls” komutu ile daha önceden oluşturmuş olduğumuz test dosyasını görüntülebiliyor olmalıyız.
Ayrıca arayüzü (GUI) olan bir tool ile (WinSCP, FileZilla vb) ftp sunucusuna bağlanmak da mümkündür.