Hem sftp-serverve internal-sftpOpenSSH parçasıdır. sftp-serverbağımsız bir ikilidir. Başka bir işlem (tipik olarak ) yerine, dahili olarak SFTP sunucu kodunu kullanmayı internal-sftpsöyleyen bir yapılandırma anahtar sshdsözcüğüdür .sshdsftp-server
İşlevsel açıdan sftp-serverve internal-sftpneredeyse aynı. Aynı kaynak kodundan üretilirler.
Temel avantajı, direktifinternal-sftp ile birlikte kullanıldığında destek dosyaları gerektirmemesidir .ChrootDirectory
sshd_config(5)Man sayfasından alıntılar :
İçin Subsystemdirektifi :
Komut sftp-serverSFTP dosya transferi alt sistemini uygular.
Alternatif olarak, ad internal-sftpbir işlem içi SFTP sunucusu uygular. Bu ChrootDirectoryistemcilere farklı bir dosya sistemi kökü zorlamak için kullanarak yapılandırmaları kolaylaştırabilir .
İçin ForceCommanddirektifi :
Komutunun belirtilmesi internal-sftp, kullanıldığında destek dosyası gerektirmeyen işlem içi SFTP sunucusunun kullanımını zorlar ChrootDirectory.
İçin ChrootDirectorydirektifi :
ChrootDirectoryKullanıcının oturumunu desteklemek için gerekli dosyaları ve dizinleri içermelidir. Etkileşimli oturum için bu, en az bir, tipik olarak kabuk gerektirir shve temel /devgibi düğümleri null, zero, stdin, stdout, stderr, ve ttycihazlar. SFTP kullanan dosya aktarımı oturumları için, işlem içi sftp sunucusu kullanılıyorsa, ortamın ek bir yapılandırması gerekli değildir, ancak günlüğü kullanan oturumlar /dev/logbazı işletim sistemlerinde chroot dizininin içinde yer alabilir ( sftp-serverayrıntılar için).
Bunun bir başka avantajı, internal-sftpbunun için yeni bir alt işlem yürütmeye gerek olmadığından bir performanstır.
internal-sftpTek başına daha (? 2008 yılında OpenSSH 4.9p1) çok daha sonra eklendi sftp-serverikili, ama şimdi varsayılan olduğunu.
sftp-serverYeni kurulumlarda kullanmak için hiçbir neden olmadığına inanıyorum .
Gibi görünebilir sshdotomatik kullanabilirsiniz internal-sftpo karşılaştığında, sftp-serverişlevsellik aynıdır ve gibi internal-sftphatta yukarıdaki avantajları vardır. Ancak farklılıkların olduğu kenar vakaları vardır.
Birkaç örnek:
Yönetici, bazı kullanıcıların giriş yapmasını önlemek için bir giriş kabuğu yapılandırmasına güvenebilir. internal-sftpGiriş kabuğu artık dahil olmadığından, geçişi kısıtlamaya atlar.
Kullanılması sftp-serverikili sen gibi bazı kesmek kullanabilirsiniz (tek başına bir süreç olmak üzere) altında SFTP'yi çalışansudo .
SSH-1 için (eğer hala kimse kullanıyorsa), Subsystemdirektif hiç dahil değildir. SSH-1 kullanan bir SFTP istemcisi, sunucuya açıkça sunucunun hangi ikili dosyayı çalıştırması gerektiğini söyler. Yani eski SSH-1 SFTP istemcilerinin sftp-serveradı kodlanmış.
ForceCommand internal-sftpaynı elde etmeli