Belirli bir kullanıcıya, kabuk ve SFTP'deki bir klasör sekansına okuma / yürütme izinlerini nasıl atayabilirim?


0

Bunun için interweb'i araştırıyordum ancak tüm cevaplar ya grupları, klasör sahiplerini ya da_all_users grubunu ifade ediyor.

Benim durumumda, kendi kullanıcı (" kai") ve makineyi kullanan başkaları da var.

"/Home/kai/projects.complete" adlı bir klasörüm var Dosyaları kabuk ve SFTP yoluyla düzenleyebilirim.

Ancak şimdi, ikinci / üçüncü bir kullanıcının içindeki tüm dosyalara salt okunur erişimine izin verme gereksinimim var /home/kai/projects.complete . Kullanıcılar şu anda makinede ayarlanmamış.

Bulduğum en iyi çözüm, rwxrwxrrrkendimin ve kendi kişisel grubumun öğeleri okuma / yazma / yürütme ve diğer tüm kullanıcıların salt okunur olmalarına izin vermek için klasör izinlerini ayarlamak . Ancak, diğer tüm kullanıcıların erişimine izin vermek istemiyorum.

Örnek kullanıcımın dediğini söyle jonny.

Kullanıcının jonnykendi şifresiyle oluşturmasını ve ona yalnızca /home/kai/projects.complete okuma erişimi sağlamasını istiyorum. Projelerdeki tüm dosyalara ve dizinlere salt okunur erişime ihtiyacı var. olduğu gibi, ideal olarak SFTP'deki varsayılan dizini ile /home/kai/projects.complete(olması güzel)

Aşağıdakileri yapacak bir bash komutuna veya komut dosyasına ihtiyacım var: a) Parola ile kullanıcı kullanıcısı ekle b) Kullanıcıya , tüm alt dizinleri ve dosyaları ile birlikteread-execute klasörde verin . Mümkünse, kabuğun yerine bu klasöre varsayılan olmasını istiyorum (ancak bu güzel olması güzel) c) SSH ve FTP erişiminin altındaki dosyaları indirmesine izin verin d) Diğer klasörlere veya dosyalara erişim izni vermeyin (yalnızca alt dizinlere ve dosyalara erişebilmelidir ) e) Kullanıcılar FTP'ye giriş yaptığında, kullanıcının otomatik olarak dizine alınmasını istiyorum (yine, bu güzel bir şey - onlar olabilir her zaman elle gidin veya FTP istemcisinde varsayılan yolu ayarlayın) ./home/kai/projects.complete/home/jonny/ /home/kai/projects.complete/home/kai/projects.complete/home/kai.projects.complete

Herhangi biri bana, grupların veya tüm kullanıcıların izinlerini tamamen değiştirmeyi içermeyen bir çözüm verebilir mi? Diğer kullanıcıların eklendiği, ancak bu dosyalara erişememesi gereken bir nokta ortaya çıkacaktır.

Teşekkürler


ACL'leri biliyor musunuz? Sorununuzu oldukça iyi ele almaları gerektiğini düşünüyorum, ancak onlarla çok fazla deneyimim yok, bu yüzden hızlı bir şekilde doğru cevap yazamıyorum. İnternette linux acl eğitimi için arama yapın, birçok sonuç var.
Adrien Beau

Yanıtlar:


0

Koruma / izin bölümü için, eğer dosya sisteminiz ACL’leri destekliyorsa,

setfacl -R -m u:jonny:r /home/kai/projects.complete
setfacl -R -m default:u:jonny:r /home/kai/projects.complete

hangi okur:

( -m) Erişim denetimi listesini (ACL) yinelenen ( -R) u:jonny:rdizinde kullanıcı jonny için ( ) kullanıcı için /home/kai/projects.completeayarlayın ve varsayılan ACL'yi aynı olarak ayarlayın; Ayrıca, 'başkalarının' dizinlerinize erişmediğinden emin olmalısınız:chmod -R o-rwx /home/kai

Jonny'ye salt okunur bir dizini ev dizini olarak vermek mümkün olmayacaktır, çünkü giriş / çıkış ile ana dizine yazılmış dosyalar vardır.

FTP yapılandırması için bu, kullandığınız FTP sunucusuna bağlıdır. Bunların çoğu chroot, ev dizinine (ya da eğer yapılandırılmışsa bazıları), yani FTP kullanıcısı, dışarıdaki bir dizine değiştirilemez. FTP sunucunuzun açıklamasına bakın.

chrootHapishanenin dışındaki bir klasöre erişmek için , bkz. Http://www.ducea.com/2006/07/27/allowing-ftp-access-to-files-outside-the-home-directory-chroot/

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.