Score:0

ฉันจะทำให้เจ้าของโฟลเดอร์สามารถเขียนได้และทุกคนสามารถอ่านได้อย่างไร

ธง in

ฉันเพิ่งตั้งค่าผู้ใช้ในเครื่องสำเร็จด้วยการเข้าถึง FTP ด้วยโฮมโฟลเดอร์ของเขาเองและ chrooted ไปยังโฟลเดอร์นั้น แต่เขาถามว่ามีวิธีสำหรับโฟลเดอร์นั้น (/ home / ชื่อผู้ใช้) ที่สามารถเป็นเจ้าของที่เขียนได้และโลกที่อ่านได้สำหรับ apache หรือไม่ เพื่อให้ผู้อื่นในอาคารเดียวกันสามารถดาวน์โหลดไฟล์โดยใช้โปรโตคอล http มาตรฐาน แต่มีเพียงเจ้าของเท่านั้นที่สามารถอัปโหลดผ่าน FTP

เช่น ผู้ใช้ภายในเครื่องส่งไฟล์ zip ไปยังตำแหน่งบ้านของเขา (/home/user) และมีคนในอาคารเปิดตำแหน่งนั้นโดยใช้ http://domain จะเห็นไฟล์นั้นและคลิกเพื่อดาวน์โหลด แต่เจ้าของสามารถแทนที่ไฟล์ได้ที่ ได้ตลอดเวลาสำหรับสิ่งต่าง ๆ เช่น อัปเดต ฯลฯ เป็นต้น

ฉันได้ตั้งค่าคำสั่ง apache เพื่ออนุญาตการเข้าถึงทั้งหมดและติดตาม symlink และสร้างรายชื่อไดเรกทอรี แต่เมื่อป้อน url ลงในเบราว์เซอร์ทั้งหมดที่เกิดขึ้นคือ 'คุณไม่ได้รับอนุญาตให้เข้าถึงตำแหน่งนี้' ฉันได้ลองแล้ว ทุกอย่างเป็นไปได้ ฉันยังลองเพิ่มผู้ใช้ลงในกลุ่ม www-data ที่ apache ใช้ โดยพื้นฐานแล้วสิ่งที่จำเป็นคือผู้ใช้อัปโหลดผ่าน FTP และทุกคนสามารถดูรายชื่อและดาวน์โหลดได้จากตำแหน่งนั้น

ฉันคิดว่ามันเป็นไปได้ แต่ถ้าไม่ นักพัฒนาเว็บจะอัปเดตเว็บไซต์ของตนโดยใช้ FTP เพื่ออัปโหลดได้อย่างไร แต่ทุกคนก็ยังเห็นเว็บไซต์ได้

Score:1
ธง cn

แต่เขาถามว่ามีวิธีสำหรับโฟลเดอร์นั้น (/ home / username) ที่สามารถเขียนโดยเจ้าของและโลกที่อ่านได้สำหรับ apache หรือไม่

โปรดอย่ายุ่งกับสิทธิ์ของบ้าน หากคุณต้องการไปตามเส้นทางนั้นให้ใช้พาร์ติชันเฉพาะและเปลี่ยนการอนุญาตที่นั่น นั้นปลอดภัยกว่ามากฉันให้ผู้ใช้ Windows ลบไฟล์ที่ซ่อนอยู่ เช่น .profile และ .bash* เพราะพวกเขาไม่ได้วางไว้ที่นั่นเอง

นักพัฒนาเว็บอัปเดตเว็บไซต์ของตนโดยใช้ FTP เพื่ออัปโหลด แต่ทุกคนยังสามารถเห็นเว็บไซต์ได้หรือไม่

โดยทั่วไปฉันจะแนะนำให้ไม่ทำเช่นนี้ วิธีการที่ปลอดภัยยิ่งขึ้น:

  1. ให้นักพัฒนาอัปโหลดไฟล์ไปยังโฮมไดเร็กทอรี (นักพัฒนาแต่ละรายมีบ้านของตัวเองเพื่อให้คุณสามารถติดตามการเปลี่ยนแปลงได้)
  2. มีงาน (cron/systemd/directory watcher) ตรวจสอบไฟล์ใหม่
  3. เป็นคุณสมบัติพิเศษ: ทำการสำรองข้อมูลของไฟล์เว็บไซต์ที่คุณต้องการอัปเดตโดยใช้ชื่อผู้ใช้ของนักพัฒนาเป็นส่วนหนึ่งของการสำรองข้อมูล
  4. ให้คัดลอกงานนั้นหรือย้ายไฟล์จากบ้านนักพัฒนาไปยังเว็บเซิร์ฟเวอร์เพื่อเปลี่ยนผู้ใช้ กลุ่ม และสิทธิ์ในการตั้งค่าเว็บไซต์
  • คุณแน่ใจหรือว่าเป็น www-data? ปัจจุบันควรเป็น apache/apache
  • วิธีนี้ทำให้คุณสามารถกู้คืนสถานะก่อนหน้าได้ตลอดเวลาโดยที่นักพัฒนาทุกคนไม่ต้องสำรองข้อมูล (พวกเขาสามารถทำเพื่อวัตถุประสงค์ของตนเองได้)

หากคุณยังต้องการให้อัปเดตไฟล์โดยตรง

  • สร้างผู้ใช้ที่ทุกคนสามารถใช้เพื่อเข้าสู่เซิร์ฟเวอร์
  • ตั้งค่าผู้ใช้ apache และกลุ่มเป็นผู้ใช้เดียวกัน
  • ให้พวกเขาอัปโหลดไฟล์โดยใช้ผู้ใช้รายนั้น

... และใช้คีย์ส่วนตัวเสมอ :)

Micheal Saunders avatar
in flag
คุณกำลังพูดถึงผู้ใช้เสมือนหรือไม่? ในกรณีที่ไม่มีบัญชีในเครื่องและไม่มีโฮมไดเร็กทอรี มีเพียงตำแหน่งที่ตั้งของไฟล์ หากเป็นเช่นนั้น คุณจะตั้งค่าผู้ใช้เสมือนเพื่อเข้าถึงตำแหน่งนั้นโดยใช้ FTP ได้อย่างไร ในขณะที่ apache ให้บริการตำแหน่งนั้นเป็นรายการไดเร็กทอรี โดยที่ มีคนสามารถดาวน์โหลดจากไดเร็กทอรีนั้นได้หรือไม่

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา