Linux'ta FTP Komutu Nasıl Kullanılır

Dosya Aktarım Protokolü okuyucularımızın çoğundan daha eskidir, ancak hala güçlüdür. FTP, modern bir protokolün güvenliğine sahip değildir, ancak yine de kullanmanız gerekebilir. İşte nasıl yapılacağı.

Uyarı: İnternet Üzerinden FTP Kullanmayın

Bunu en başından itibaren açıklığa kavuşturalım: Dosya Aktarım Protokolü (FTP) 1970'lerin başlarına kadar uzanır ve güvenlik açısından herhangi bir şekilde yazılmıştır. Hiçbir şey için şifreleme kullanmaz. Kullanıcı adınız ve şifreniz gibi oturum açma kimlik bilgilerinin yanı sıra indirdiğiniz veya yüklediğiniz veriler açık metin olarak aktarılır. Yoldaki herkes sırlarınızı görebilir. Ancak, FTP'nin hala kullanımları vardır.

Ağınız içinde dosya aktarıyorsanız, siz aktarırken ağdaki hiç kimse hassas belgeleri paket koklamadığı ve gizli dinlemediği sürece güvende olmalısınız. Dosyalarınız hiçbir şekilde gizli veya hassas değilse, onları dahili ağınızda FTP ile taşımak iyi olacaktır. Linux, ftptam da bu senaryo ile başa çıkmak için standart komut satırı programına sahiptir.

Ancak  , İnternet üzerinden harici kaynaklara erişmek için kesinlikle bu ftpkomutu kullanmayın  . Bunun için sftp, güvenli SSH Dosya Aktarım Protokolünü kullanan komut satırı programını kullanın . Bu eğitimde bu programların her ikisini de tanıtacağız.

FTP'yi neden İnternet üzerinden hiç kullanmak istemediğinizi açıklığa kavuşturmak için aşağıdaki ekran görüntüsüne bakın. FTP şifresini düz metin olarak gösterir. Ağınızdaki veya sizinle İnternet'teki FTP sunucusu arasındaki herhangi biri, parolanın "MySecretPassword" olduğunu kolayca görebilir.

Şifreleme olmadan kötü niyetli bir aktör, indirdiğiniz veya aktarım sırasında yüklediğiniz dosyaları da değiştirebilir.

Ftp Komutu

Bir FTP sitesinde geçerli bir hesabınız olduğunu varsayarsak, aşağıdaki komutla ona bağlanabilirsiniz. Bu makale boyunca, komutlardaki IP adresini, bağlanmakta olduğunuz FTP sunucusunun IP adresiyle değiştirin.

ftp 192.168.4.25

Uyarı : ftpKomutu yalnızca güvenilen bir yerel ağdaki sunuculara bağlanmak için kullanmalısınız . sftpDosyaları internet üzerinden aktarmak için aşağıda anlatılan komutu kullanın .

FTP sunucusu bir hoş geldiniz mesajıyla yanıt verir. Karşılama ifadesinin ifadesi sunucudan sunucuya değişecektir. Ardından, oturum açtığınız hesabın kullanıcı adını sorar.

Bağlandığınız sitenin IP adresinin ardından Linux kullanıcı adınızın görüntülendiğine dikkat edin. FTP sunucusundaki hesap adınız Linux kullanıcı adınızla aynıysa, Enter tuşuna basmanız yeterlidir. Bu, Linux kullanıcı adınızı FTP sunucusundaki hesap adı olarak kullanacaktır. Linux kullanıcı adınız ve FTP hesap adınız farklıysa, FTP hesabı kullanıcı adını yazın ve ardından Enter tuşuna basın.

FTP Sunucusunda Oturum Açma

FTP sitesi için şifrenizi girmeniz istenecektir. Şifrenizi girin ve Enter tuşuna basın. Parolanız ekranda görüntülenmiyor. FTP kullanıcı hesap adı ve şifre kombinasyonunuz FTP sunucusu tarafından doğrulanırsa, FTP sunucusunda oturum açarsınız.

ftp>İstemi size sunulacak .

Etrafa Bakma ve Dosyaları Geri Alma

İlk olarak, muhtemelen FTP sunucusundaki dosyaların bir listesini almak isteyeceksiniz. lsKomut yok sadece. Kullanıcımız dosyanın gc.cFTP sunucusunda olduğunu görür ve kendi bilgisayarına indirmek ister. Onun bilgisayarı FTP tabiriyle "yerel bilgisayar" dır.

Bir dosyayı geri alma (veya "alma") komutu get. Kullanıcımız bu nedenle komutu verir get gc.c. Onlar yazın get, bir boşluk ve ardından da Almak istediğiniz dosyanın adını.

FTP sunucusu, dosyayı yerel bilgisayara aktararak ve aktarımın gerçekleştiğini onaylayarak yanıt verir. Dosyanın boyutu ve aktarılması için geçen süre de gösterilir.

ls
gc.c'yi al

Birden çok dosyayı aynı anda mgetalmak için  (multiple get) komutunu kullanın. mgetEğer sırayla her dosyayı indirmek isteyip komut onaylamanızı isteyecektir. Evet için “y” ye ve hayır için “n” ye basarak yanıtlayın.

Bu, çok sayıda dosya için sıkıcı olurdu. Bu nedenle, ilgili dosyaların koleksiyonları genellikle ftp sitelerinde tekli tar.gz veya tar.bz2 dosyaları olarak saklanır.

İLGİLİ: Linux'ta .tar.gz veya .tar.bz2 Dosyasından Dosyaları Çıkarma

mget * .c

Dosyaları FTP Sunucusuna Yükleme

FTP hesabınıza verilen izinlere bağlı olarak, dosyaları sunucuya yükleyebilirsiniz (veya "koyabilirsiniz"). Bir dosya yüklemek için putkomutu kullanın. Örneğimizde, kullanıcı Songs.tar.gzFTP sunucusuna çağrılan bir dosya yüklüyor .

Songs.tar.gz koy

Muhtemelen beklediğiniz gibi, birden çok dosyayı aynı anda FTP sunucusuna koymak için bir komut vardır. Buna mput(çoklu koyma) denir . mgetKomutun yaptığı gibi, mputher dosyanın tek tek yüklenmesi için "y" veya "n" onayı isteyecektir.

Tar arşivlerine dosya kümeleri koymak için aynı argüman, dosyaları almak için olduğu gibi dosyaları koymak için de geçerlidir. Kullanıcımız aşağıdaki komutla birden çok ".odt" dosyası yüklüyor:

mput * .odt

Dizin Oluşturma ve Değiştirme

Ftp sunucusundaki kullanıcı hesabınız izin veriyorsa, dizinler oluşturabilirsiniz. Bunu yapmak için komut şudur mkdir. Açık olmak gerekirse, mkdirkomutla oluşturduğunuz herhangi bir dizin yerel bilgisayarınızda değil ftp sunucusunda oluşturulacaktır.

Ftp sunucusundaki dizinleri değiştirmek için cdkomutu kullanın. cdKomutu kullandığınızda, komut ftp>istemi yeni mevcut dizininizi yansıtacak şekilde değişmeyecektir. pwd(Baskı çalışma dizini) komutu size geçerli dizin gösterecektir.

Ftp kullanıcımız müzik adında bir dizin oluşturur, bu yeni dizine geçer, pwdkomutu kullanarak nerede olduklarını onaylar ve ardından bu dizine bir dosya yükler.

mkdir müzik
cd müzik
pwd
songs.tar.gz koy

Geçerli dizinin üst dizinine hızlı bir şekilde gitmek için cdupkomutu kullanın.

cdup

Yerel Bilgisayara Erişim

Yerel bilgisayardaki dizini değiştirmek için, lcdkomut ftp>istemindeki komutu kullanabilirsiniz . Bununla birlikte, yerel dosya sisteminde nerede olduğunuzu unutmak kolaydır. Yerel dosya sistemine erişmenin daha uygun bir yöntemi !komutu kullanmaktır .

!Komut yerel bilgisayara bir kabuk pencere açar. Bu kabukta standart bir terminal penceresinde yapabileceğiniz her şeyi yapabilirsiniz. Yazdığınızda komut istemine exitgeri ftp>dönersiniz.

Kullanıcımız !komutu kullandı ve yerel bilgisayarda bir kabuk penceresine girdi. Bu lsdizinde hangi dosyaların bulunduğunu görmek için bir komut verdiler ve ardından komut istemine exitgeri dönmek için ftp>yazdılar.

!
ls
çıkış

Dosyaları Yeniden Adlandırma

FTP sunucusundaki dosyaları yeniden adlandırmak için renamekomutu kullanın. Burada FTP kullanıcımız bir dosyayı ile yeniden adlandırır renameve ardından lsdizindeki dosyaları listelemek için komutu kullanır .

Songs.tar.gz adını rock_songs.tar.gz olarak değiştir
ls

Dosyaları Silme

FTP sunucusundaki dosyaları silmek için deletekomutu kullanın. Aynı anda birkaç dosyayı silmek için mdeletekomutu kullanın. Her dosyanın silinmesi için "y" veya "n" onayı sağlamanız istenecektir.

Burada FTP kullanıcımız, adlarını görmek için dosyaları listelemiş ve ardından silmek için birini seçmiştir. Daha sonra hepsini silmeye karar verirler.

ls
gc.o'yu sil
mdelete * .o

Sftp Komutunu Kullanma

IP adresleme sistemine aşina okuyucular, yukarıdaki örneklerde kullanılan FTP sunucusunun 192.168 adresinin, özel IP adresi olarak da adlandırılan dahili bir IP adresi olduğunu fark edeceklerdir. Bu makalenin başında da uyardığımız gibi, ftpkomut yalnızca dahili ağlarda kullanılmalıdır.

Uzak veya genel bir FTP sunucusuna bağlanmak istiyorsanız, sftpkomutu kullanın. Kullanıcımız, demoadresinde bulunan genel erişime açık FTP sunucusunda adı verilen bir SFTP hesabına bağlanacak test.trebex.net.

Bağlandıklarında, bağlantının kurulduğu konusunda bilgilendirilirler. Ayrıca ev sahibinin gerçekliğinin doğrulanamadığı konusunda bilgilendirilirler. Bu, yeni bir ana bilgisayar için ilk bağlantı için normaldir. Bağlantıyı kabul etmek için "y" ye basarlar.

Kullanıcı hesabı adı ( demo) komut satırında aktarıldığı için kullanıcı hesabı adı istenmez. Yalnızca parola istenir. Bu girilir, doğrulanır ve kabul edilir ve sftp>istemi sunulur .

sftp [email protected]

Yukarıda tarif ettiğimiz FTP komutları, aşağıdaki istisnalar dışında bir SFTP oturumunda aynı şekilde çalışacaktır.

  • Bir dosyayı silmek için rm(FTP kullanır delete)
  • Birden fazla dosyayı silmek için şunu kullanın rm(FTP kullanır mdelete)
  • Üst dizine gitmek için şunu kullanın cd ..(FTP kullanır cdup)

Kullanıcımız kendi SFTP oturumunda birkaç komut kullandı. lsDosyaları listelemek cdve pub dizinine geçmek için kullanımları vardır . pwdÇalışma dizinini yazdırmak için kullandılar .

Linux dünyasında dosya aktarmak için başka seçenekler de vardır, özellikle scp(güvenli kopya), ancak burada FTP ve SFTP'ye odaklandık. Uygulanabilir senaryolarda kullanılan bu iki komut, size ve dosya depolama ve erişim ihtiyaçlarınıza iyi hizmet edecektir.