Soru Neden chfts_local_user vsftpd güvensiz?


VPS'yi vsftpd'ye ayarlıyorum ve kullanıcıların ftp home dizininden ayrılmalarına izin verilmesini istemiyorum. Anonim değil, local_user ftp kullanıyorum, bu yüzden ekledim:

chroot_local_user = EVET

Bir sürü forum gönderisinde okudum, bu güvenli değil.

  1. Bu neden güvensiz?
  2. Bu da benim VPS'ye katılmak için ssh kullanması nedeniyle güvensizse, bu kullanıcıları sshd'den kilitleyebilirim, değil mi?
  3. Vsftpd'nin bu davranışını elde etmek için başka bir seçenek var mı? (Sistemimde "dünya" için tüm klasör / dosyalardaki okuma izinlerini kaldırmak istemiyorum)

18
2018-02-22 12:35


Menşei




Cevaplar:


İçin kontrol edin VSFTPD'nin SSS'si aradığınız cevap için. Aşağıda, sorunuzu cevaplayacağına inandığım önemli alıntıdır.

S) Yardım! İçinde atıfta bulunulan güvenlik etkileri nelerdir?   "chroot_local_user" seçeneği?

A) Öncelikle, diğer ftp dosyalarının aynı sonuçları olduğuna dikkat edin. Bu bir   genel problem.   Sorun çok şiddetli değil, ama bu: Bazı kullanıcıların FTP kullanıcısı var   Tam kabuk erişimine sahip olmayan güvenilir hesaplar. Eğer bunlar   hesaplar da dosya yükleyebilir, küçük bir risk vardır. Şimdi kötü bir kullanıcı var   kendi ana dizini olan dosya sistemi kökü kontrolü. Ftp   daemon bazı yapılandırma dosyalarının okunmasına neden olabilir - ör. / Etc / some_file. İle   chroot (), bu dosya şimdi kullanıcının kontrolü altında. vsftpd is   Bu alanda dikkatli olun. Ancak, sistemin libc'i yerel ayarları açmak isteyebilir   dosyaları veya diğer ayarları yapılandırın ...


20
2018-02-22 19:00



Bunun için teşekkürler, hepsini ben bilmiyordum. Bir şey öğrendim! +1 - Yanick Girouard
Aslında ben SSS okuduktan sonra buraya geldim çünkü bu endişe ifadesini anlamıyorum: "ftp sunucusu bazı yapılandırma dosyalarının okunmasına neden olabilir - örneğin / etc / some_file. Chroot () ile, bu dosya şu anda Kullanıcı.". Muhtemelen bu sadece böyle olur vsftpdbir güvenlik kusuru vardı (à la buffer taşması) ??? Nasıl çalışıyor vsftpd Kullanıcıların evlerine yönlendirdikleri kullanıcılar bu senaryoyu daha muhtemel hale getiriyorlar mı? Lütfen açıkla... - sxc731


Sorun, hem yerel hesapları kullanamayacağınız hem de bu hesapları kabuk girişinden devre dışı bırakamayacağınızdır. Giriş kabuğunu / bin / nologin olarak ayarlarsanız, vsftpd ile oturum açmanıza izin vermez.

Daha iyi ve daha güvenli bir FTP sunucusu Pure-ftpd olurdu. Bakın, EPEL deposundan alınabilir ve sanal kullanıcılar oluşturmaya izin verir. Sunucu, kullanıcıların ev klasörleri için tüm izinleri ayarlamak için ortak bir kullanıcı / grup kullanır ve izinlerle başa çıkmak için oturum açtığında sanal kullanıcıları söz konusu kullanıcıya "eşler". Bu daha güvenli ve openssh giriş güvenliği ile uğraşmak zorunda değilsiniz.

Pure-ftpd ayrıca kotalar, oranlar ve benzeri gibi birçok özelliği destekler. Vsftpd'den çok daha iyi.

İşte, nasıl yükleneceği ve temel bir sanal kullanıcıyı nasıl yapılandıracağı ile ilgili basit bir öğretici: http://blog.namran.net/2011/05/04/how-to-setup-virtual-ftp-server-using-pure-ftpd-in-centos/

Tam dokümanı okursanız (ki bunu yapmanız gerekir), sanal kullanıcıyı oluştururken -d anahtarının o kullanıcı için bu dizinin otomatik chroot olduğunu bileceksiniz.


4
2018-02-22 13:37



ben kullanıyorum AllowUsers user1 user2 sshd_config dosyasında, ftp_user1'in ssh ile oturum açmasına izin vermediğim yönerge, hala ftp_user1 kullanıcısı ftp ile oturum açabiliyor. Yani niyetle çalışıyor, ama hala benim asıl sorum açık, neden güvensiz? - p1100i
Evet olacak! Sadece "kabuk olmayan" ı / etc / shells'a eklemeniz yeterlidir. Birçok sistemde / bin / false veya / bin / nologin / etc / shells içinde bulunur. Kabuk varsa, vsftpd gerçekten chroot_local_user etkinken giriş yapmanıza izin verecektir. - Frands Hansen
O zaman düzeltiliyorum. İşaret ettiğin için teşekkürler! - Yanick Girouard