FTP, dosya ve veri transferi konusunda bilgisayarlar arasında klasik bir yöntem olarak kabul edilir. Ancak, günümüzün güvenlik hassasiyeti göz önüne alındığında, bu metod eskimekte ve yerini daha güvenli teknolojilere bırakmaktadır. Bu noktada devreye SFTP giriyor, özellikle VPS hosting kullanıcıları için oldukça kullanışlı bir alternatif haline geliyor.
Bu yazıda, güvenli dosya transferi için SFTP’nin nasıl kullanılacağını ve bunun yanı sıra diğer kullanışlı komutların nasıl işlediğini ele alacağız.
SFTP İle Nasıl Bağlantı Kurulur?
İçerik Tablosu
SFTP, SSH’nin alt bir sistemidir. Bu sebeple, tüm SSH doğrulama yöntemlerini destekler. SFTP kurulumu ve şifre doğrulaması oldukça kolay olmakla birlikte, şifresiz SFTP erişimi için SSH anahtarları oluşturmanın daha pratik ve güvenli olduğunu belirtmek gerekir.
SSH anahtarlarınızı nasıl oluşturacağınız konusunda rehberimize göz atabilirsiniz. Daha sonra, SFTP ile bağlantı kurmak için aşağıdaki adımları izlemeniz yeterlidir:
SSH erişiminizi kontrol etmek için aşağıdaki komutlardan birini kullanabilirsiniz:
ssh kullanici@sunucu_ip
ssh kullanici@uzakhost_domain
İşlem tamamlandıktan ve herhangi bir hata ile karşılaşılmadıktan sonra oturumu kapatın.
Aşağıdaki komutlarla bir SFTP bağlantısı kurabilirsiniz:
sftp kullanici@sunucu_ip
sftp kullanici@uzakhost_domain
Eğer özel bir SSH portu kullanıyorsanız, SFTP portunu değiştirmek için aşağıdaki komutlardan birini kullanabilirsiniz:
sftp -oPort=özelport kullanici@sunucu_ip
sftp -oPort=özelport kullanici@uzakhost_domain
Komutun örnek kullanımı aşağıdaki gibidir:
sftp -oPort=49166 [email protected]
Bağlantı kurulduktan sonra bir SFTP istemi görüntülenir.
SFTP İle Dosya Transferi Nasıl Gerçekleştirilir?
Şimdi, SFTP kullanarak uzak sunucudan yerel makineye dosya transferinin nasıl yapıldığını anlatalım.
Başlamadan önce hangi yerel ve uzak dizinleri kullandığımızı belirlemeliyiz. Bunun için aşağıdaki SFTP komutlarını kullanabiliriz:
sftp> lpwd
Yerel dizin: /LocalDirectory
sftp> pwd
Uzak dizin: /RemoteDirectory
Şimdi, get komutunu kullanarak uzak sunucudan yerel makinenize nasıl dosya transferi yapıldığını anlatalım. get komutunun temel sözdizimi aşağıdaki gibidir:
get /uzak-dizin/dosya.txt
Örneğin, /etc/xinetd.conf dosyasını uzak sunucudan (31.220.57.32) yerel makinenize kopyalamak için aşağıdaki komutu kullanabilirsiniz:
get /etc/xinetd.conf
İndirme işlemi tamamlandıktan sonra tüm *.conf dosyalarını yerel makinenizin /kullanici/home dizininde bulabilirsiniz.
Birden fazla dosya indirmek için mget komutunu kullanabilirsiniz. Örneğin, /etc dizinindeki tüm .conf uzantılı dosyaları indirelim:
mget /etc/*.conf
İndirme işlemi tamamlandıktan sonra tüm *.conf dosyalarını yerel makinenizin /kullanici/home dizininde bulabilirsiniz.
SFTP İle Yerel Makineden Uzak Sunucuya Dosya Transferi
Yerel makineden uzak sunucuya dosya kopyalamak için put komutunu kullanabilirsiniz. put komutunun sözdizimiyse aşağıdaki gibidir:
put dosya.txt /UzakDizin
Aşağıdaki komut, yerel makineden uzak sunucuya ornek.txt adlı dosyayı transfer etmek için kullanılabilir:
put /home/kullaniciadi/ornek.txt /root
Dosyayı, hedef makinenin (uzak sunucunun) kök dizininde bulabilirsiniz. Ayrıca mput komutunu kullanarak birden fazla dosya transferi yapmayı deneyebilirsiniz. Bu komut mget ile aynı şekilde çalışmaktadır:
mput /home/kullaniciadi/*.txt /root
Bu komut, /home/kullaniciadi dizinindeki .txt uzantılı tüm dosyaları yerel makineden uzak makinenin /root dizinine taşır.
SFTP’de Gezinmek İçin Kullanılacak Komutlar
SFTP ile uzak ve yerel sunucularda daha rahat bir şekilde gezinmek için bazı komutlar kullanabilirsiniz. Bu komutlar, Linux kabuk isteminde kullandıklarınıza oldukça benzerdir.
Örneğin, pwd komutunu hangi dizinde çalıştığınızı öğrenmek için kullanabilirsiniz:
sftp> pwd
Uzak dizin: /UzakDizin
veya
sftp> lpwd
Yerel dizin: /YerelDizin
Kullandığınız dosyaların ve dizinlerin listesini görüntülemek için aşağıdaki komutları kullanabilirsiniz:
ls (uzak dizin)
lls (yerel dizin)
Sonuç aşağıdaki gibi olacaktır:
Pictures Templates Media Text.txt Documents
Bir uzak dizinden başka bir yerel çalışma dizinine geçmek için aşağıdaki komutları kullanabilirsiniz:
cd dizin_adı
lcd dizin_adı
Son olarak, ! ve exit komutlarını kullanarak yerel kabuğa geri dönebilir ve SFTP’den çıkabilirsiniz.