PHP / Apache ile bir yükleme klasörü için uygun izinler nelerdir?

5 Cevap php

Temel soru için özür dilerim -. Ben NET Geliştirici yaşıyorum ve LAMBA kurulumları ile çok fazla deneyimi yok.

Ben belirli bir klasöre yüklenenler sağlayacak bir PHP sitesi var. Ben bu klasör çalışmak için yükleme işlemi için webserver kullanıcı tarafından sahip olunan gerektiğini söylendi, bu yüzden klasör oluşturulur ve sonra gibi izinleri ayarlayın:

chown apache:apache -R uploads/
chmod 755 -R uploads/

Tek sorun şimdi FTP kullanıcı hiç yüklenen dosyaları değiştirmek değil ki.

Bana hala dosya yükleyebilir ve daha sonra web sunucusu kullanıcı dışındaki bir kullanıcı olarak bunları daha sonra değiştirmek için izin verecek bir izin ayarı var mı?

5 Cevap

Sen üyeleri olarak apache kullanıcı ve FTP kullanıcı hem de yeni bir grup oluşturmak ve daha sonra yükleme klasöründe 775 üzerinde izni yapabilirsiniz. Bu apache ve FTP kullanıcıların hem klasördeki dosyalara yazmak için yetenek verir ama herkes tutmalı onları değiştirmekten.

Eğer gerçekten bunu istiyorsanız Ryan'ın cevap giderdim.

Unix ortamında genel olarak, her zaman mümkün olduğunca az izinleri veriyor gitme istiyorum.

10 üzerinden 9 kez, 755 bunun için ideal bir izindir - dosyaları web sunucusu olacak değiştirme yeteneği ile sadece kullanıcı olarak. Eğer gerçekten bu değiştirmeniz gerekiyorsa bir grup içinde ftp kullanıcı ile 775 için değiştirin.

Since you're new to php by your own admission, here's a helpful link for improving the security of your upload service: move_uploaded_file

Ya da en azından 766.

  • okuma = 4
  • yazmak = 2
  • yürütmek = 1

7 = + yazma + yürütmek

6 = + yazmak, okumak

  • İlk sayı: sahibi
  • ikinci sayı: grup
  • Üçüncü sayı: Diğer kullanıcıların

Ben size tip bağlam Sizin tmp_t olduğundan emin olmak gerektiğini SELinux'u kullanıyorsanız chcon yardımcı programını kullanarak bu yapabileceğiniz katacak

chcon-t tmp_t yüklemeler

Önemli olan apache, kullanıcı ve grup minimum read erişim ve bazı durumlarda execute erişim sahip olmasıdır. Geri kalanı için 0 erişimi verebilirsiniz.

Bu en güvenli ayardır.