SFTP



SFTP 
Secure FTP (Güvenli Dosya Taşıma Protokolü), yani SFTP, SSH kullanarak dosya transferi yapan bir dosya aktarım protokolüdür. SSH'ın sağladığı güvenlik özellikleri, FTP'den farklı olarak SFTP'yi güvenli hale getirir.FTP'nin RSA ile güçlendirilmiş halidir. TCP üzerinden çalışır.

SSH ile SFTP Kullanımı 
SFTP ile dosya transferi yapabilmek için bir SFTP istemcisine sahip olmak gereklidir. Neredeyse bütün Linux dağıtımlarında bir SFTP istemcisi ön tanımlı olarak bulunur. Windows işletim sistemlerinde bir SFTP istemcisi edinerek kurmak gerekir.

SFTP Yazılımları

SFTP İstemcisi 
OpenSSH ile birlikte gelen SFTP (Secure file transfer program), bu protokolün istemci kısmını gerçekleştiren bir konsol (uçbirim) uygulamasıdır.

scp'nin de bazı uygulamaları gerçekte dosya transferi yapmak için SFTP kullanırlar. Zaten bu uygulamalar da eğer sunucu SFTP servisi sağlamıyorsa, en son çare olarak scp kullanırlar.

SFTP Sunucusu 
Unix ve Windows işletim sistemleri için çok sayıda SFTP sunucu uygulaması mevcuttur. Özel SFTP sunucu uygulamaları da vardır, ancak en yaygın olarak bilinen OpenSSH'tır. Ön tanımlı olarak 22. portu kullanırlar.

SFTP Vekil Sunucusu 
İnternet dünyasında güvenli araçlarla SFTP transferi yapmak zor bir iştir. FTP işlemlerini loglamak için kullanılan standart araçlar mevcuttur. Bunlardan bazıları; TIS fwtk ya da SUSE FTP vekil sunucularıdır. Ancak SFTP şifrelidir, geleneksel vekil sunucularla SFTP trafiğini kontrol etmek pek başarılı bir yöntem değildir.

SFTP kontrol özellikleri barındıran SSH için, man-in-the middle attack (ortadaki kişi saldırısı) yapmaya yarayan bazı araçlar mevcuttur. Bu araçlar kablodan geçen gerçek verileri ya da SFTP ile yapılan işlemleri loglayabilen fonskiyonlar içerirler.

SFTP Komutları 
Host ile bağlantı kurma: $sftp host_adi
Oturum açma: $sftp kullanici_adi@host_adi
help: Yardım komutudur. sftp ile kullanılabilecek komutların ve bu komutların işlevlerinin listesini verir.
put: Host bilgisayara dosya kopyalar.

sftp> put kaynak_dosya_konumu (hedef_konum)

get: Host bilgisayardan istemci bilgisayara dosya kopyalar.

sftp> get kaynak_dosya_konumu (hedef_konum)

cd: Host bilgisayarda dizin değiştirme komutu. (Linux işletim sistemindeki cd komutunun aynısı.)
lcd: İstemci bilgisayarda dizin değiştirme komutu.
rm: Host bilgisayarda dosya silme.
rmdir: Host bilgisayarda dizin silme.
chmod: Dosyalara ait kullanıcı izinlerini değiştirmenizi sağlar.

sftp> chmod izin_kodu dosya_konumu

ls: Host bilgisayarda dizin içeriğini listeleme.
lls: İstemci bilgisayarda dizin içeriğini listeleme.
rename: Host bilgisayarda dosya adı değiştirme.
sftp> rename eski_isim yeni_isim

mkdir: Host bilgisayarda dizin oluşturma.
lmkdir: İstemci bilgisayada dizin oluşturma.
Oturum kapatma ve SFTP'den çıkma:sftp> exit sftp> quit sftp>

Uygulama katmanı protokolleri