Güvenli kopyalama protokolü - Secure copy protocol

scp
Geliştirici(ler) OpenSSH Projesi
depo github .com /openssh /openssh-taşınabilir /
Yazılmış C
İşletim sistemi Çapraz platform
Tip Emretmek
İnternet sitesi www .openssh .com

Güvenli kopyalama protokolü ( SCP ), bilgisayar dosyalarının yerel bir ana bilgisayar ile uzak bir ana bilgisayar veya iki uzak ana bilgisayar arasında güvenli bir şekilde aktarılmasının bir yoludur . Bu dayanmaktadır Secure Shell (SSH) protokolü. "SCP" genellikle hem Güvenli Kopyalama Protokolünü hem de programın kendisini ifade eder. Nisan 2019'daki OpenSSH geliştiricilerine göre , SCP eskidir, esnek değildir ve kolayca düzeltilemez; dosya aktarımı için sftp ve rsync gibi daha modern protokollerin kullanılmasını önerirler .

Güvenli Kopya Protokolü

SCP bir olan ağ protokolü dayalı BSD BİP destekleyen protokolü, dosya aktarımlarını ağ üzerindeki konaklar arasında. SCP, veri aktarımı için Güvenli Kabuk (SSH) kullanır ve kimlik doğrulama için aynı mekanizmaları kullanır, böylece aktarım sırasında verilerin gerçekliğini ve gizliliğini sağlar . İstemci, isteğe bağlı olarak temel nitelikleri (izinler, zaman damgaları) dahil olmak üzere dosyaları bir sunucuya gönderebilir (yükleyebilir). İstemciler ayrıca bir sunucudan dosya veya dizin talep edebilir (indirme). SCP, varsayılan olarak 22 numaralı TCP bağlantı noktası üzerinden çalışır . RCP gibi, protokolün özelliklerini tanımlayan bir RFC yoktur .

İşlev

Normalde, bir istemci uzak ana bilgisayara bir SSH bağlantısı başlatır ve uzak sunucuda bir SCP işleminin başlatılmasını ister. Uzak SCP işlemi iki moddan birinde çalışabilir:

  • dosyaları (genellikle diskten) okuyan ve bunları istemciye geri gönderen kaynak modu veya
  • istemci tarafından gönderilen dosyaları kabul eden ve bunları uzak ana bilgisayara (genellikle diske) yazan havuz modu.

Çoğu SCP istemcisi için, kaynak modu genellikle -f(from) bayrağıyla tetiklenirken , havuz modu -t(to) ile tetiklenir . Bu bayraklar dahili olarak kullanılır ve SCP kaynak kodunun dışında belgelenmez.

Uzaktan kumanda moduna

Geçmişte, uzaktan-uzak güvenli kopyalamada, SCP istemcisi kaynak ana bilgisayara bir SSH bağlantısı açar ve bunun karşılığında hedefe bir SCP bağlantısı açmasını ister. (Uzaktan-uzak modu, iki SCP bağlantısının açılmasını ve kaynak istemcinin aracı olarak kullanılmasını desteklemiyordu). Parola veya klavye etkileşimli kimlik doğrulama modunda çalışırken, SCP'nin kaynaktan hedefe uzaktan kopyalamak için kullanılamayacağını unutmamak önemlidir, çünkü bu, hedef sunucunun kaynağa kimlik doğrulama kimlik bilgilerini ortaya çıkaracaktır. Ancak, kullanıcı girişi gerektirmeyen anahtar tabanlı veya GSSAPI yöntemleriyle mümkündür .

Son zamanlarda, uzaktan-uzak modu, aktarımın 3. tarafı olmasına rağmen, aktarımı başlatan istemci üzerinden trafiği yönlendirmeyi destekler. Bu şekilde, yetkilendirme kimlik bilgileri yalnızca kaynak istemcide, 3. şahısta bulunmalıdır.

Konuşkan kabuk profillerini kullanma sorunları

SCP, ssh oturum açma kabuğuyla iletişim kuran metin beklemez. ssh profili nedeniyle iletilen metin (örneğin, .bashrc dosyasındaki yankı "Hoş Geldiniz") bir hata mesajı olarak yorumlanır ve boş bir satır (echo ""), hata mesajının tamamlanmasını beklerken scp'nin kilitlenmesine neden olur.

Güvenli Kopyalama (uzaktan dosya kopyalama programı)

SCP programı bir hizmet cini veya istemci olarak SCP protokolü uygulayan bir yazılım aracıdır. Güvenli kopyalama yapmak için bir programdır.

Belki de en yaygın kullanılan SCP programı, çoğu SSH uygulamasında sağlanan OpenSSH komut satırı scp programıdır. scpProgram güvenli analog rcpkomutu. scpProgram olarak, SCP hizmet sunmak isteyen tüm SSH sunucularının parçası olmalıdır scpçok SCP sunucusu olarak fonksiyonlar.

Bazı SSH uygulamaları sağlamak scp2kullanan programı, SFTP yerine SCP protokolü, ama aynı içerir komut satırı olarak arabirimi scp. scptipik ardından ise sembolik bağlantı için scp2.

Sözdizimi

Tipik olarak, bir scpprogramın sözdizimi cp(kopyala) sözdizimine benzer :

Yerel dosyanın uzak bir ana bilgisayara kopyalanması:

scp LocalSourceFile user@remotehost:directory/TargetFile

Uzak ana bilgisayardan dosya kopyalama ve uzak ana bilgisayardan klasör kopyalama (-r anahtarıyla):

scp user@remotehost:directory/SourceFile LocalTargetFile
scp -r user@host:directory/SourceFolder LocalTargetFolder

Uzak ana bilgisayar varsayılan 22'den farklı bir bağlantı noktası kullanıyorsa, bunun komutta belirtilebileceğini unutmayın. Örneğin, bir dosyayı ana bilgisayardan kopyalamak:

scp -P 2222 user@host:directory/SourceFile TargetFile

Diğer müşteriler

As Güvenli Kopyalama Protokolü sadece uygular dosya transferleri, GUI uygulamadan ek işlevler (gereğine göre SCP istemcileri, nadir dizin en azından listeleme). Örneğin, WinSCP varsayılan olarak SFTP protokolünü kullanır. SCP modunda çalışırken bile, WinSCP gibi istemciler, ek işlevleri uygulamak için başka araçlar kullanmaları gerektiğinden ( lskomut gibi ) genellikle saf SCP istemcileri değildir . Bu da platform bağımlılığı sorunlarını beraberinde getiriyor.

Dosyaları SSH üzerinden yönetmek için daha kapsamlı araçlar, SFTP istemcileridir.

Güvenlik

2019'da , kullanıcıların SCP istemci hedef dizinindeki rastgele dosyaların üzerine yazmasına izin veren openssh SCP aracı ve protokolüyle ilgili olarak CVE - 2019-6111 güvenlik açığı duyuruldu .

Ayrıca bakınız

Referanslar