Dropbox tarafından güncellenen HTML dosyaları için SELinux bağlamı nasıl ayarlanır?


1

HTML dosyalarını birkaç kişi tarafından kolayca düzenlenebilir hale getirmek için paylaşılan bir Dropbox klasörü kullanmaya çalışıyorum ve Dropbox klasörünü bir yere yerleştiriyorum ( /var/www/ ile --bind seçeneği. Dropbox klasörü için SELinux bağlamı ayarlanmış durumda. httpd_sys_content_t türü olan httpd (RHEL6'da) okuyabilir. Bu tüm çalışır ve dosyalar web sitesinde mevcuttur. Web sunucusundaki Dropbox klasöründeki bir dosyayı düzenlemek de işe yarar (SELinux içeriği korunur).

Ancak, dosya Dropbox aracılığıyla güncellendiğinde (diğeri başka bir dosyayı düzenlerse), alıcı taraftaki sonuç dosyası (Dropbox güncellendikten sonra) her zaman bir içerik elde eder. user_home_tve böylece Apache dosyayı okuyamıyor ve bu yüzden 403 Yasaklı bir hata çıkıyor (ben gidip içeriği el ile geri yükleyene kadar).

İçeriğini ayarlamayı denedim ~/.dropbox/ için httpd_sys_content_t, hangisi de çalışır: içindeki önbellek (?) dosyaları ~/.dropbox/l/ o bağlamı alın ancak daha sonra güncellenen dosyayı ~/Dropbox/ hala alır user_home_t. Bu, Dropbox'ın dosyayı güncellediğini gösterir başka bir yer (muhtemelen delta yöntemi ile) ve sonra bir eşdeğerde yapar mv Dropbox klasörüne taşımak için (SELinux altında mv Menşei bağlamını korur ve cp hedefe göre sıfırlar).

Notlar:

  1. SELinux'u devre dışı bırakmak istemiyorum (ancak bunu yapmak sorunu çözüyor)
  2. Kullanımı ile ilgili olarak httpd_sys_content_t: Sonunda, kullanmaktan daha mantıklı olabilecek bu dosyalarla başa çıkmak için özel bir politika oluşturabilirim httpd_sys_content_t ama sonra endişeleneceğim
  3. Küçük bir senaryo yazabilirim. restorecon -R uygun Dropbox alt klasöründe her 5 veya 10 saniyede bir, ancak bunu daha erken yakalamak isterdi

Öyleyse: Dropbox, yeni kaydedilen dosyayı Dropbox klasörüne taşımadan önce nerede oluşturur? Denenecek başka bir şey hakkında başka düşüncen var mı?

Teşekkürler!

David

Yanıtlar:


2

Geçici dosya ~/Dropbox/.dropbox.cache/daha sonra atomik güncellemeleri sağlamak için gerçek yerine taşındı.

Geçici Çözüm # 3 çalışmalı - kullanabilirsiniz incron, bir dosya değiştirildiğinde en kısa sürede komutu yerine getirecektir.


Teşekkürler, v. Aptal benden doğru önbellek yerini bulamıyorum, ancak aramaya karar verildi ~/.dropbox/!
manyon
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.