ให้ความเป็นเจ้าของไดเรกทอรีแก่ผู้ใช้ apache? [ซ้ำ]


22

ฉันติดตั้ง wordpress บน LAMP แล้ว เพราะฉันใหม่สำหรับ Ubuntu ดังนั้นฉันใช้กวดวิชาออนไลน์นี้ วิธีการติดตั้ง WordPress บน Ubuntu ด้วยตนเอง

แต่เมื่อฉันพยายามให้ความเป็นเจ้าของไดเรกทอรีแก่ผู้ใช้ apache มันไม่ทำงานฉันกำลังให้คำสั่งต่อไปนี้

sudo chown admin:www-data /var/www -R 
sudo chmod g+w /var/www -R

"admin" เป็นชื่อที่ฉันเลือกสำหรับผู้ใช้ฐานข้อมูล WordPress ของฉัน ใครช่วยกรุณาแนะนำฉันผ่านสิ่งนี้?


1
สำหรับ OS X ฉันใช้คำสั่งนี้
Abduhafiz

คำตอบ:


29

ห้ามใช้ผู้ใช้ฐานข้อมูลเป็นผู้ใช้ UNIX www-dataใช้

sudo chown -R www-data:www-data /var/www

มีความแตกต่างระหว่างผู้ใช้ฐานข้อมูลและผู้ใช้ Apache ผู้ใช้ Apache เป็นคนเดียวที่สามารถอ่านไฟล์ได้ ผู้ใช้ฐานข้อมูลมีไว้สำหรับให้ / รับสิทธิ์ในการอ่าน / เขียนฐานข้อมูล

นอกจากนี้ให้สิทธิ์เริ่มต้นจากการติดตั้ง webapp อย่าเปลี่ยนแปลงสิ่งเหล่านั้นยกเว้นการเป็นเจ้าของผู้ใช้ / กลุ่ม หากคุณได้รับคำแนะนำจาก webapp ให้เปลี่ยนการอนุญาต


หากคุณกังวลเกี่ยวกับความปลอดภัยมากขึ้นคุณสามารถเรียกใช้คำสั่งต่อไปนี้แทน:

sudo chown -R $USER:www-data /var/www
sudo chmod -R 640 /var/www

สิ่งนี้ทำให้ไฟล์จริงที่ผู้ใช้ของคุณเป็นเจ้าของเพื่อให้มีเพียงคุณ (และรูท) เท่านั้นที่สามารถแก้ไขได้ เหตุผลที่www-dataมีการอ้างอิงคือเพื่อให้ Apache ยังคงสามารถอ่านไฟล์ แต่ไม่ได้เขียนถึงพวกเขา

การ640อนุญาตให้คุณ (เจ้าของไฟล์) อ่านและเขียนในขณะที่อนุญาตให้www-dataกลุ่มอ่านไฟล์ นอกจากนี้ยังบล็อกบุคคลอื่นไม่ให้อ่านเนื้อหาไฟล์

(ด้านบนเป็นวิธีเดียวเท่านั้นที่เป็นไปได้ ( ยังไม่ได้ทดสอบ ) มีวิธีที่ดีกว่านี้ที่นี่ )


3
เพิ่งทราบว่านั่นไม่ใช่ตัวเลือกที่ปลอดภัยที่สุด ดูลิงค์ที่ฉันให้ไว้ข้างต้นเพื่อดูรายละเอียด
Panther
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.