คำถามติดแท็ก shared-hosting

8
จำกัด ผู้ใช้ Linux ในไฟล์ที่เขาเป็นเจ้าของ
ลองนึกภาพการตั้งค่าเซิร์ฟเวอร์ของ บริษัท เว็บโฮสติ้งที่ใช้ร่วมกันซึ่งลูกค้าหลายคน (~ 100) มีการเข้าถึงเชลล์ไปยังเซิร์ฟเวอร์เดียว จำนวนมากเว็บ "ซอฟต์แวร์" แนะนำให้ไฟล์ chmod 0777 ฉันกังวลเกี่ยวกับลูกค้าของเราติดตามบทเรียนเหล่านี้อย่างไม่เต็มใจเปิดไฟล์ให้ลูกค้ารายอื่นของเรา (แน่นอนว่าฉันไม่ได้ใช้โดยไม่cmod 0777จำเป็นต้องใช้ตัวเอง!) มีวิธีการเพื่อให้แน่ใจว่าลูกค้าสามารถเข้าถึงไฟล์ของตนเองและป้องกันไม่ให้พวกเขาเข้าถึงไฟล์ที่ผู้อ่านคนอื่น ๆ ฉันมองเข้าไปในAppArmorแต่นั่นเป็นกระบวนการที่แน่นมากซึ่งดูเหมือนว่าจะล้มเหลวในสภาพแวดล้อมนั้น

1
การปรับแต่ง Apache2 prefork MaxClients ServerLimit
ฉันมีเครื่องที่มี 128 GB Ram ที่ใช้ Apache2 เป็นเว็บเซิร์ฟเวอร์ (ในเครื่องนี้ไม่มีเซิร์ฟเวอร์ฐานข้อมูลเครื่องฐานข้อมูลเป็นเครื่อง 64 GB Ram ที่สามารถรองรับการเชื่อมต่อสูงสุด 2000 ครั้ง) ฉันเห็นด้วยเครื่องมือตรวจสอบที่มีอยู่ในขณะนี้ประมาณ 44 คนทำงานไม่ว่างและ 12 คนไม่ได้ใช้งาน 12 สิ่งที่เป็นค่าทางทฤษฎีที่ดีที่สุดสำหรับโมดูล prefork ของฉัน? ฉันมีหน้าว่างบางครั้งโหลดเว็บไซต์ในชั่วโมงการโหลดสูงและมีข้อผิดพลาดนี้ในบันทึกข้อผิดพลาด apache ของฉัน: [แจ้งให้ทราบล่วงหน้า] เด็ก pid 13595 สัญญาณทางออกแบ่งส่วนผิดพลาด (11) จะแก้ไขปัญหานี้ได้อย่างไร? การกำหนดค่าโมดูล Apache Prefork ของฉัน: StartServers 3 MinSpareServers 3 MaxSpareServers 5 ServerLimit 3200 MaxClients 3100 MaxRequestsPerChild 0 ฟรี …

3
การแยก Apache virtualhosts ออกจากส่วนที่เหลือของระบบ
ฉันกำลังตั้งค่าเว็บเซิร์ฟเวอร์ที่จะโฮสต์เว็บไซต์ที่แตกต่างกันจำนวนหนึ่งเป็น Apache VirtualHosts แต่ละแห่งจะมีความเป็นไปได้ในการเรียกใช้สคริปต์ (โดยหลักคือ PHP และอื่น ๆ ) คำถามของฉันคือฉันแยกแต่ละ VirtualHosts เหล่านี้ออกจากแต่ละคนและจากส่วนที่เหลือของระบบได้อย่างไร ฉันไม่ต้องการให้เว็บไซต์ X อ่านการกำหนดค่าเว็บไซต์ Y หรือไฟล์ "ส่วนตัว" ของเซิร์ฟเวอร์ ในขณะนี้ฉันได้ติดตั้ง VirtualHosts ด้วย FastCGI, PHP และ SUExec ตามที่อธิบายไว้ที่นี่ ( http://x10hosting.com/forums/vps-tutorials/148894-debian-apache-2-2-fastcgi-php-5-suexec -easy-way.html ) แต่ SUExec ป้องกันผู้ใช้จากการแก้ไข / เรียกใช้ไฟล์อื่นที่ไม่ใช่ของตนเองเท่านั้น - ผู้ใช้ยังสามารถอ่านข้อมูลที่ละเอียดอ่อนเช่นไฟล์กำหนดค่า ฉันคิดว่าจะลบสิทธิ์การอ่านแบบโกลบอลของ UNIX สำหรับไฟล์ทั้งหมดบนเซิร์ฟเวอร์เพราะจะช่วยแก้ไขปัญหาข้างต้นได้ แต่ฉันไม่แน่ใจว่าฉันสามารถทำได้อย่างปลอดภัยหรือไม่โดยไม่รบกวนการทำงานของเซิร์ฟเวอร์ ฉันดูที่การใช้ chroot ด้วย แต่ดูเหมือนว่าสิ่งนี้สามารถทำได้แบบต่อเซิร์ฟเวอร์เท่านั้นไม่ใช่แบบต่อโฮสต์เสมือน ฉันกำลังมองหาคำแนะนำใด ๆ ที่จะแยก VirtualHosts …

8
การโฮสต์หลายไซต์ - ช่องโหว่ที่สำคัญที่พลาดไม่ได้ที่จะทำให้ไซต์ปลอดภัยจากกันคืออะไร?
แก้ไข # 2 23 กรกฎาคม 2558: ค้นหาคำตอบใหม่ที่ระบุรายการความปลอดภัยที่สำคัญที่ไม่ได้รับในการตั้งค่าด้านล่างหรืออาจให้เหตุผลที่จะเชื่อว่าทุกอย่างครอบคลุม แก้ไข # 3 29 กรกฎาคม 2015: ฉันกำลังมองหาการกำหนดค่าผิดพลาดโดยเฉพาะอย่างยิ่งโดยไม่ได้ตั้งใจอนุญาตให้บางสิ่งบางอย่างที่สามารถใช้ประโยชน์เพื่อหลีกเลี่ยงข้อ จำกัด ด้านความปลอดภัยหรือแย่ลง แต่ยังเปิดกว้าง นี่คือการตั้งค่าโฮสติ้งแบบหลายไซต์ / แชร์และเราต้องการใช้อินสแตนซ์ Apache ที่ใช้ร่วมกัน (เช่นทำงานภายใต้บัญชีผู้ใช้หนึ่งบัญชี) แต่ด้วย PHP / CGI ที่ทำงานในฐานะผู้ใช้ของแต่ละเว็บไซต์เพื่อให้แน่ใจว่าไม่มีไซต์ใด ๆ ตรวจสอบให้แน่ใจว่าไม่มีอะไรพลาด (เช่นถ้าเราไม่รู้เกี่ยวกับการป้องกันการโจมตี symlink) นี่คือสิ่งที่ฉันมี: ตรวจสอบให้แน่ใจว่าสคริปต์ PHP ทำงานเป็นบัญชีผู้ใช้และกลุ่ม Linux ของเว็บไซต์และถูกจำคุก (เช่นใช้ CageFS) หรืออย่างน้อยก็ถูก จำกัด อย่างถูกต้องโดยใช้สิทธิ์ระบบไฟล์ Linux ใช้ suexec เพื่อให้แน่ใจว่าสคริปต์ CGI ไม่สามารถทำงานได้ในฐานะผู้ใช้ Apache …

2
โฮสต์โดเมนหลักจากโฟลเดอร์ย่อย [ปิด]
ฉันมีปัญหาในการทำให้ไดเรกทอรีย่อยทำหน้าที่เป็น public_html สำหรับโดเมนหลักของฉันและรับวิธีแก้ปัญหาที่ทำงานกับไดเรกทอรีย่อยของโดเมนนั้นด้วย การโฮสต์ของฉันทำให้ฉันสามารถโฮสต์ไซต์ได้หลายไซต์ซึ่งทั้งหมดนั้นใช้งานได้ดี ฉันได้ตั้งค่าโฟลเดอร์ย่อยภายใต้ไดเรกทอรี~ / public_html /ชื่อ/ domains / ของฉันที่ฉันสร้างโฟลเดอร์สำหรับแต่ละเว็บไซต์แยกกัน เช่น public_html โดเมน websiteone websitetwo websitethree ... สิ่งนี้ทำให้เว็บไซต์ของฉันเป็นระเบียบเรียบร้อย ปัญหาเดียวก็คือการได้รับ "โดเมนหลัก" ของฉันเพื่อให้พอดีกับระบบนี้ ดูเหมือนว่าโดเมนหลักของฉันจะผูกติดอยู่กับบัญชีของฉัน (หรือ Apache หรืออะไรบางอย่าง) ดังนั้นฉันจึงไม่สามารถเปลี่ยน "รากเอกสาร" ของโดเมนนี้ได้ ฉันสามารถกำหนดรากของเอกสารสำหรับโดเมนอื่น ๆ ("Addon Domains") ที่ฉันเพิ่มใน cPanel ได้โดยไม่มีปัญหา แต่โดเมนหลักนั้นแตกต่างกัน ฉันได้รับคำสั่งให้แก้ไขไฟล์. htaccess เพื่อเปลี่ยนเส้นทางโดเมนหลักไปยังไดเรกทอรีย่อย สิ่งนี้ดูเหมือนจะใช้งานได้ดีและเว็บไซต์ของฉันทำงานได้ดีบนหน้าแรก / หน้าดัชนี ปัญหาที่ฉันมีคือถ้าฉันพยายามนำทางเบราว์เซอร์ของฉันเพื่อพูดโฟลเดอร์รูปภาพ (เพียงแค่ตัวอย่าง) ของเว็บไซต์หลักของฉันเช่นนี้: www.yourmaindomain.com/images/ ดูเหมือนว่าจะไม่สนใจการเปลี่ยนเส้นทางและแสดงไดเรกทอรีเซิร์ฟเวอร์ทั้งหมดใน URL เช่นนี้ …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.