ทุกสิ่งที่คุณจำเป็นต้องรู้เกี่ยวกับการอนุญาต Apache Basic การติดตั้งยูทิลิตี้ Apache ตรวจสอบการทำงานของไฟล์ .htaccess บนเซิร์ฟเวอร์

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

ในคู่มือนี้ เราจะสาธิตวิธีการป้องกันทรัพย์สินด้วยรหัสผ่านบน เว็บอาปาเช่เซิร์ฟเวอร์ที่ทำงานบน Ubuntu 14.04

ข้อกำหนดเบื้องต้น

ในการเริ่มต้น คุณจะต้องเข้าถึงสภาพแวดล้อมเซิร์ฟเวอร์ Ubuntu 14.04 คุณจะต้องมีผู้ใช้ที่ไม่ใช่รูทที่มีสิทธิ์ sudo เพื่อดำเนินงานด้านการดูแลระบบ หากต้องการเรียนรู้วิธีสร้างผู้ใช้ดังกล่าว โปรดปฏิบัติตาม

ติดตั้งแพ็คเกจยูทิลิตี้ Apache

ในการสร้างไฟล์ที่จะจัดเก็บรหัสผ่านที่จำเป็นในการเข้าถึงเนื้อหาที่ถูกจำกัดของเรา เราจะใช้โปรแกรมอรรถประโยชน์ที่เรียกว่า htpasswd พบได้ในแพ็คเกจ apache2-utils ภายในที่เก็บ Ubuntu

ปรับปรุงท้องถิ่น แคชแพ็คเกจและติดตั้งแพ็คเกจโดยพิมพ์คำสั่งนี้ เราจะใช้โอกาสนี้คว้าเซิร์ฟเวอร์ Apache2 ด้วยในกรณีที่ยังไม่ได้ติดตั้งบนเซิร์ฟเวอร์:

  • อัปเดต sudo apt-get
  • sudo apt-get ติดตั้ง apache2 apache2-utils

สร้างไฟล์รหัสผ่าน

ตอนนี้เราสามารถเข้าถึงคำสั่ง htpasswd แล้ว เราสามารถใช้สิ่งนี้เพื่อสร้างไฟล์รหัสผ่านที่ Apache สามารถใช้ในการตรวจสอบสิทธิ์ผู้ใช้ เราจะสร้างสิ่งที่ซ่อนเร้น ไฟล์สำหรับจุดประสงค์นี้เรียกว่า .htpasswd ภายในไดเร็กทอรีการกำหนดค่า /etc/apache2 ของเรา

ครั้งแรกที่เราใช้ยูทิลิตี้นี้ เราจำเป็นต้องเพิ่มตัวเลือก -c เพื่อสร้างไฟล์ที่ระบุ เราระบุชื่อผู้ใช้ (แซมมี่ในตัวอย่างนี้) ที่ท้ายคำสั่งเพื่อสร้างรายการใหม่ภายในไฟล์:

  • sudo htpasswd -c /etc/apache2/.htpasswd แซมมี่

คุณจะถูกขอให้ระบุและยืนยันรหัสผ่านสำหรับผู้ใช้

ไม่ต้องใส่อาร์กิวเมนต์ -c สำหรับผู้ใช้เพิ่มเติมที่คุณต้องการเพิ่ม:

  • sudo htpasswd /etc/apache2/.htpasswd another_user

หากเราดูเนื้อหาของไฟล์ เราจะเห็นชื่อผู้ใช้และรหัสผ่านที่เข้ารหัสสำหรับแต่ละบันทึก:

  • แมว /etc/apache2/.htpasswd
แซมมี่:$apr1$lzxsIfXG$tmCvCfb49vpPFwKGVsuYz. another_user:$apr1$p1E9MeAf$kiAhneUwr.MhAE2kKGYHK.

กำหนดค่าการรับรองความถูกต้องรหัสผ่าน Apache

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

ตัวเลือกแรกคือแก้ไขการกำหนดค่า Apache และเพิ่มการป้องกันด้วยรหัสผ่านของเราไปยังไฟล์โฮสต์เสมือน โดยทั่วไปจะให้ประสิทธิภาพที่ดีขึ้น เนื่องจากจะช่วยหลีกเลี่ยงค่าใช้จ่ายในการอ่านไฟล์การกำหนดค่าแบบกระจาย หากคุณมีตัวเลือกนี้ ขอแนะนำวิธีนี้

หากคุณไม่มีความสามารถในการแก้ไขไฟล์โฮสต์เสมือน (หรือหากคุณใช้ไฟล์ .htaccess เพื่อวัตถุประสงค์อื่นอยู่แล้ว) คุณสามารถจำกัดการเข้าถึงโดยใช้ไฟล์ .htaccess ได้ Apache ใช้ไฟล์ .htaccess` เพื่ออนุญาตให้รายการการกำหนดค่าบางอย่างสามารถตั้งค่าภายในไฟล์ในไดเร็กทอรีเนื้อหาได้ ข้อเสียคือ Apache ต้องอ่านไฟล์เหล่านี้ซ้ำในทุกคำขอที่เกี่ยวข้องกับไดเร็กทอรี ซึ่งอาจส่งผลต่อประสิทธิภาพการทำงาน

เลือกตัวเลือกที่เหมาะสมกับความต้องการของคุณที่สุดด้านล่าง

การกำหนดค่าการควบคุมการเข้าถึงภายในข้อกำหนดโฮสต์เสมือน

เริ่มต้นด้วยการเปิดไฟล์โฮสต์เสมือนที่คุณต้องการเพิ่มข้อจำกัด สำหรับตัวอย่างของเรา เราจะใช้ไฟล์ 000-default.conf ที่เก็บโฮสต์เสมือนเริ่มต้นที่ติดตั้งผ่านแพ็คเกจ apache ของ Ubuntu:

  • ซูโด้นาโน

ข้างใน เมื่อถอดความคิดเห็นออกแล้ว ไฟล์ควรมีลักษณะดังนี้:

/etc/apache2/sites-enabled/000-default.conf

การรับรองความถูกต้องจะดำเนินการตามแต่ละไดเร็กทอรี ในการตั้งค่าการตรวจสอบสิทธิ์ คุณจะต้องกำหนดเป้าหมายไดเร็กทอรีที่คุณต้องการจำกัดด้วย ปิดกั้น. ในตัวอย่างของเรา เราจะจำกัดรากเอกสารทั้งหมด แต่คุณสามารถแก้ไขรายการนี้เพื่อกำหนดเป้าหมายเฉพาะไดเร็กทอรีเฉพาะภายในพื้นที่เว็บได้:

/etc/apache2/sites-enabled/000-default.conf

ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog $(APACHE_LOG_DIR)/error.log CustomLog $(APACHE_LOG_DIR)/access.log รวมกัน

ภายในบล็อกไดเร็กทอรีนี้ ระบุว่าเราต้องการตั้งค่าการรับรองความถูกต้องขั้นพื้นฐาน สำหรับ AuthName ให้เลือกชื่อขอบเขตที่จะแสดงต่อผู้ใช้เมื่อได้รับแจ้งให้ใส่ข้อมูลรับรอง ใช้คำสั่ง AuthUserFile เพื่อชี้ Apache ไปยังไฟล์รหัสผ่านที่เราสร้างขึ้น สุดท้ายนี้ เราจะกำหนดให้ผู้ใช้ที่ถูกต้องในการเข้าถึงทรัพยากรนี้ ซึ่งหมายความว่าใครก็ตามที่สามารถตรวจสอบตัวตนของตนด้วยรหัสผ่านจะได้รับอนุญาตให้อยู่ใน:

/etc/apache2/sites-enabled/000-default.conf

ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog $(APACHE_LOG_DIR)/error.log CustomLog $(APACHE_LOG_DIR)/access.log รวมกัน AuthType Basic AuthName "เนื้อหาที่ถูกจำกัด" AuthUserFile /etc/apache2/.htpasswdต้องการผู้ใช้ที่ถูกต้อง

บันทึกและปิดไฟล์เมื่อคุณดำเนินการเสร็จสิ้น รีสตาร์ท Apache เพื่อใช้นโยบายรหัสผ่านของคุณ:

  • sudo service apache2 รีสตาร์ท

ไดเร็กทอรีที่คุณระบุควรได้รับการป้องกันด้วยรหัสผ่านแล้ว

การกำหนดค่าการควบคุมการเข้าถึงด้วยไฟล์ .htaccess

หากคุณต้องการตั้งค่าการป้องกันด้วยรหัสผ่านโดยใช้ไฟล์ .htaccess แทน คุณควรเริ่มต้นด้วยการแก้ไขไฟล์การกำหนดค่า Apache หลักเพื่ออนุญาตไฟล์ .htaccess:

  • sudo นาโน /etc/apache2/apache2.conf

ค้นหา บล็อกสำหรับไดเร็กทอรี /var/www ที่เก็บรูทเอกสาร เปิดการประมวลผล .htaccess โดยเปลี่ยนคำสั่ง AllowOverride ภายในบล็อกนั้นจาก "ไม่มี" เป็น "ทั้งหมด":

/etc/apache2/apache2.conf

. . . ตัวเลือกดัชนี FollowSymLinks AllowOverride ทั้งหมด จำเป็นต้องได้รับทั้งหมด . . .

บันทึกและปิดไฟล์เมื่อคุณดำเนินการเสร็จสิ้น

ต่อไป เราต้องเพิ่มไฟล์ .htaccess ลงในไดเร็กทอรีที่เราต้องการจำกัด ในการสาธิตของเรา เราจะจำกัดรากเอกสารทั้งหมด (ทั้งเว็บไซต์) ซึ่งอยู่ที่ /var/www/html แต่คุณสามารถวางไฟล์นี้ในไดเร็กทอรีใดก็ได้ที่คุณต้องการจำกัดการเข้าถึง:

  • sudo นาโน /var/www/html/.htaccess

ภายในไฟล์นี้ ระบุว่าเราต้องการตั้งค่าการรับรองความถูกต้องขั้นพื้นฐาน สำหรับ AuthName ให้เลือกชื่อขอบเขตที่จะแสดงต่อผู้ใช้เมื่อได้รับแจ้งให้ใส่ข้อมูลรับรอง ใช้คำสั่ง AuthUserFile เพื่อชี้ Apache ไปยังไฟล์รหัสผ่านที่เราสร้างขึ้น สุดท้ายนี้ เราจะกำหนดให้ผู้ใช้ที่ถูกต้องในการเข้าถึงทรัพยากรนี้ ซึ่งหมายความว่าใครก็ตามที่สามารถตรวจสอบตัวตนของตนด้วยรหัสผ่านจะได้รับอนุญาตให้อยู่ใน:

/var/www/html/.htaccess

AuthType Basic AuthName "เนื้อหาที่ถูกจำกัด" AuthUserFile /etc/apache2/.htpasswd ต้องการผู้ใช้ที่ถูกต้อง

บันทึกและปิดไฟล์ รีสตาร์ทเว็บเซิร์ฟเวอร์เพื่อใช้รหัสผ่านป้องกันเนื้อหาทั้งหมดในหรือด้านล่างไดเร็กทอรีด้วยไฟล์ .htaccess:

  • sudo service apache2 รีสตาร์ท

ยืนยันการตรวจสอบรหัสผ่าน

เพื่อยืนยันว่าเนื้อหาของคุณได้รับการปกป้อง ให้ลองเข้าถึงเนื้อหาที่ถูกจำกัดของคุณในเว็บเบราว์เซอร์ คุณควรได้รับพร้อมท์ชื่อผู้ใช้และรหัสผ่านที่มีลักษณะดังนี้:

หากคุณป้อนข้อมูลรับรองที่ถูกต้อง คุณจะได้รับอนุญาตให้เข้าถึงเนื้อหาได้ หากคุณป้อนข้อมูลประจำตัวผิดหรือกด "ยกเลิก" คุณจะเห็นหน้าข้อผิดพลาด "ไม่ได้รับอนุญาต":

บทสรุป

ตอนนี้คุณควรมีทุกสิ่งที่จำเป็นในการตั้งค่าการตรวจสอบสิทธิ์ขั้นพื้นฐานสำหรับไซต์ของคุณ โปรดทราบว่าการป้องกันด้วยรหัสผ่านควรรวมกับการเข้ารหัส SSL เพื่อให้ข้อมูลประจำตัวของคุณ ไม่ได้ส่งไปยังเซิร์ฟเวอร์ในรูปแบบข้อความธรรมดา หากต้องการเรียนรู้วิธีสร้างใบรับรอง SSL ที่ลงนามด้วยตนเองเพื่อใช้กับ Apache ให้ทำตาม หากต้องการเรียนรู้วิธีติดตั้งใบรับรองเชิงพาณิชย์ ให้ทำตาม

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

ในบทความนี้ คุณจะได้เรียนรู้วิธีตั้งค่าการตรวจสอบสิทธิ์รหัสผ่านบนเว็บเซิร์ฟเวอร์ Apache ที่ทำงานบน Ubuntu 16.04

ความต้องการ

ก่อนที่คุณจะดำเนินการขั้นตอนถัดไป ตรวจสอบให้แน่ใจว่าคุณมีสิทธิ์เข้าถึง เซิร์ฟเวอร์อูบุนตู 16.04.

คุณจะต้องมีสิ่งต่อไปนี้เพื่อทำตามคำแนะนำ:

  • ผู้ใช้ที่สามารถเรียกใช้คำสั่ง sudo บนเซิร์ฟเวอร์ของคุณ
  • เว็บเซิร์ฟเวอร์อาปาเช่;
  • ไซต์ที่ติดตั้งใบรับรอง SSL (เช่น Let's Encrypt)

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

ขั้นตอนที่ 1: ติดตั้งแพ็คเกจด้วยยูทิลิตี้ Apache

คุณจะต้องมียูทิลิตี้ชื่อ htpasswd ซึ่งเป็นส่วนหนึ่งของแพ็คเกจ apache2-utils มันถูกใช้เพื่อสร้างไฟล์ เช่นเดียวกับชื่อผู้ใช้และรหัสผ่านที่จะใช้ในการเข้าถึงมุมมองที่ถูกจำกัด ผู้ใช้ทั่วไปเนื้อหา.

ป้อนคำสั่งต่อไปนี้:

$ sudo apt-get อัปเดต $ sudo apt-get ติดตั้ง apache2-utils

ขั้นตอนที่ 2: สร้างไฟล์ด้วยรหัสผ่าน

ตอนนี้คุณสามารถใช้คำสั่ง htpasswd ได้ คุณจะต้องสร้างไฟล์ที่มีรหัสผ่านที่ Apache จะใช้เพื่อตรวจสอบสิทธิ์ผู้ใช้ เพื่อวัตถุประสงค์เหล่านี้ คุณควรสร้างไฟล์ที่ซ่อนอยู่ชื่อ .htpasswd ภายในไดเร็กทอรีการตั้งค่า /etc/apache2

ครั้งแรกที่คุณใช้ยูทิลิตีนี้ คุณจะต้องเพิ่มสวิตช์ -c ให้กับคำสั่งเพื่อสร้างไฟล์ที่ระบุ ในตอนท้ายของคำสั่งคุณจะต้องระบุชื่อผู้ใช้ ( ซินาตร้าวี ในตัวอย่างนี้) - นี่เป็นสิ่งจำเป็นเพื่อสร้างรายการใหม่ภายในไฟล์:

$ sudo htpasswd -c /etc/apache2/.htpasswd ซินาตร้า

คุณจะถูกถามถึงรหัสผ่านและการยืนยันสำหรับผู้ใช้ที่สร้างขึ้น

หากคุณต้องการเพิ่มผู้ใช้อื่น (เช่น another_user) ให้ใช้คำสั่งเดียวกันแต่ไม่มีสวิตช์ -c:

$ sudo htpasswd /etc/apache2/.htpasswd another_user

ดูเนื้อหาของไฟล์นี้:

$ cat /etc/apache2/.htpasswd

คุณจะเห็นชื่อผู้ใช้และรหัสผ่านที่เข้ารหัสสำหรับแต่ละรายการ:

เอาต์พุตซินาตร้า:$apr1$.0CAabqX$rb8lueIORA/p8UzGPYtGs/ another_user:$apr1$fqH7UG8a$SrUxurp/Atfq6j7GL/VEC1

ขั้นตอนที่ 3: ตั้งค่าการตรวจสอบสิทธิ์รหัสผ่านบน Apache

ตอนนี้คุณมีไฟล์ที่มีชื่อผู้ใช้และรหัสผ่านในรูปแบบที่ Apache สามารถอ่านได้

ขั้นตอนต่อไปคือการกำหนดค่า Apache ให้ตรวจสอบไฟล์นี้ทุกครั้งที่กำลังจะให้การเข้าถึงเนื้อหาที่มีการป้องกัน คุณสามารถทำได้สองวิธี: โดยตรงในไฟล์โฮสต์เสมือนของไซต์ หรือโดยการเพิ่มไฟล์ .htaccess ลงในไดเร็กทอรีที่คุณต้องการจำกัดการเข้าถึง

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

นั่นคือเลือกเส้นทางตามความต้องการของคุณ

เส้นทาง 1 (ที่ต้องการ): กำหนดค่าการอนุญาตผ่าน โฮสต์เสมือน

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

ในการเริ่มต้น ให้เปิดไฟล์โฮสต์เสมือนที่คุณต้องการจำกัดการเข้าถึง เช่นใน คู่มือเล่มนี้ไฟล์ 000-default.conf จะถูกนำมาใช้ซึ่งมีโฮสต์เสมือนเริ่มต้นที่ติดตั้งโดยใช้แพ็คเกจ Apache บน Ubuntu

$ sudo nano /etc/apache2/sites-enabled/000-default.conf

ข้างในไฟล์ที่ไม่มีบรรทัดใส่เครื่องหมายข้อคิดเห็นจะมีลักษณะดังนี้:

การรับรองความถูกต้องเกิดขึ้นตามไดเรกทอรี ในการตั้งค่าการตรวจสอบสิทธิ์ คุณต้องวางไดเร็กทอรีที่คุณต้องการปฏิเสธการเข้าถึงในบล็อก - ในตัวอย่างด้านล่าง การเข้าถึงจะถูกปฏิเสธไปยังไดเร็กทอรีรากของเอกสาร แต่คุณสามารถเลือกไดเร็กทอรีเฉพาะได้:

ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog $(APACHE_LOG_DIR)/error.log CustomLog $(APACHE_LOG_DIR)/access.log รวมกัน

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

ServerAdmin webmaster@localhost DocumentRoot /var/www/html ErrorLog $(APACHE_LOG_DIR)/error.log CustomLog $(APACHE_LOG_DIR)/access.log รวมกัน AuthType Basic AuthName "เนื้อหาที่ถูกจำกัด" AuthUserFile /etc/apache2/.htpasswd ต้องการผู้ใช้ที่ถูกต้อง

หลังจากแก้ไข ให้บันทึกและปิดไฟล์

ก่อนที่จะรีบูตเซิร์ฟเวอร์ ให้ตรวจสอบการตั้งค่าด้วยคำสั่งต่อไปนี้:

$ sudo apache2ctl ตั้งค่าคอนฟิก

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

ตอนนี้ไดเร็กทอรีที่คุณกำหนดไว้ก่อนหน้านี้มีการป้องกันด้วยรหัสผ่าน

Apache สามารถใช้ไฟล์ .htaccess เพื่อให้สามารถเข้าถึงการตั้งค่าบางอย่างที่คุณสามารถตั้งค่าผ่านไดเร็กทอรีเนื้อหาได้ เนื่องจาก Apache จะเข้าถึงเนื้อหาของไฟล์เหล่านี้ในทุกคำขอที่มี แคตตาล็อกนี้ซึ่งอาจส่งผลเสียต่อประสิทธิภาพการทำงาน วิธีแรกจะดีกว่า แต่หากคุณใช้ไฟล์ .htaccess อยู่แล้ว หรือคุณต้องการให้ผู้ใช้ที่ไม่มีสิทธิ์สามารถจัดการข้อจำกัดการเข้าถึงได้อย่างอิสระ ในกรณีนี้ การใช้ไฟล์ .htaccess นั้นมีความชัดเจนและสมเหตุสมผล .

ในการเปิดใช้งานการป้องกันด้วยรหัสผ่านโดยใช้ไฟล์ .htaccess ให้เปิดการกำหนดค่าหลัก ไฟล์อาปาเช่:

$ sudo นาโน /etc/apache2/apache2.conf

จากนั้นค้นหาบล็อก สำหรับไดเร็กทอรี /var/www ซึ่งมีไดเร็กทอรี root ของเอกสาร เปิดใช้งานการรองรับไฟล์ .htaccess โดยเปลี่ยนค่าของคำสั่ง AllowOverride จาก "ไม่มี" เป็น "ทั้งหมด" - ในกรณีนี้ เซิร์ฟเวอร์จะอนุญาตคำสั่งทั้งหมดของไฟล์ .htaccess:

. . . ตัวเลือกดัชนี FollowSymLinks AllowOverride ทั้งหมด จำเป็นต้องได้รับทั้งหมด . . .

หลังจากนั้นให้บันทึกและปิดไฟล์

ตอนนี้คุณต้องเพิ่มไฟล์ .htaccess ลงในไดเร็กทอรีที่คุณต้องการจำกัดการเข้าถึง ในบทช่วยสอนนี้ เป็นตัวอย่าง การเข้าถึงจะถูกปฏิเสธไปยังไดเร็กทอรีรากของเอกสารทั้งหมด (นั่นคือ ทั้งไซต์) ซึ่งอยู่ที่ /var/www/html แต่คุณสามารถวางไฟล์นี้ในไดเร็กทอรีใดก็ได้ที่คุณต้องการ เพื่อจำกัดการเข้าถึง:

$ sudo นาโน /var/www/html/.htaccess

ภายในไฟล์นี้ ให้ระบุว่าคุณต้องการตั้งค่าการรับรองความถูกต้องขั้นพื้นฐาน สำหรับคอลัมน์ AuthName คุณต้องเลือกชื่อที่จะแสดงต่อผู้ใช้เมื่อร้องขอข้อมูลการตรวจสอบสิทธิ์ ในคอลัมน์ AuthUserFile คุณต้องระบุไฟล์ด้วยรหัสผ่านที่สร้างขึ้นก่อนหน้านี้เพื่อให้ Apache สามารถค้นหาได้ คุณจะต้องมีผู้ใช้ที่ถูกต้องซึ่งสามารถเข้าถึงข้อมูลได้ กล่าวอีกนัยหนึ่ง ใครก็ตามที่สามารถยืนยันตัวตนโดยใช้รหัสผ่านจะได้รับอนุญาตให้เข้าไปในไดเร็กทอรี:

AuthType Basic AuthName "เนื้อหาที่ถูกจำกัด" AuthUserFile /etc/apache2/.htpasswd ต้องการผู้ใช้ที่ถูกต้อง

บันทึกและปิดไฟล์ รีบูตเซิร์ฟเวอร์เพื่อให้การเปลี่ยนแปลงทั้งหมดเกี่ยวกับการป้องกันด้วยรหัสผ่านของไดเร็กทอรีที่เลือกมีผล จากนั้นใช้คำสั่งสถานะ systemctl เพื่อให้แน่ใจว่าการรีบูตสำเร็จ:

$ sudo systemctl รีสตาร์ท apache2 $ sudo systemctl สถานะ apache2

ขั้นตอนที่ 4: ตรวจสอบการป้องกันการรับรองความถูกต้อง

เพื่อให้แน่ใจว่าข้อมูลของคุณได้รับการปกป้อง ให้ลองเข้าถึงข้อมูลดังกล่าวในเบราว์เซอร์ คุณจะเห็นหน้าต่างถามชื่อผู้ใช้และรหัสผ่าน ซึ่งจะมีลักษณะดังนี้:

หากคุณป้อนข้อมูลที่ถูกต้อง คุณจะสามารถดูข้อมูลที่ร้องขอได้ หากคุณป้อนข้อมูลไม่ถูกต้องหรือคลิกยกเลิก คุณจะเห็นหน้าข้อผิดพลาด (ไม่ได้รับอนุญาต) ซึ่งระบุว่าการเข้าถึงถูกปฏิเสธสำหรับผู้ใช้ที่ไม่ได้รับอนุญาต:


บทสรุป

หากคุณทำตามขั้นตอนทั้งหมดที่ระบุไว้ในคู่มือนี้แล้ว เว็บไซต์ของคุณจะมีการตรวจสอบสิทธิ์ขั้นพื้นฐานแล้ว อย่างไรก็ตาม อย่าลืมเกี่ยวกับวิธีการอื่นๆ ในการป้องกันการเข้าถึงข้อมูลของคุณโดยไม่ได้รับอนุญาต เช่น ใบรับรอง SSL และการใช้ SSH

หากคุณต้องการให้คนเข้ามามากกว่าหนึ่งคน คุณจะต้องสร้างไฟล์กลุ่มที่เชื่อมโยงชื่อกลุ่มกับรายชื่อผู้ใช้ในกลุ่มนั้น รูปแบบของไฟล์นี้ค่อนข้างเรียบง่าย และคุณสามารถสร้างด้วยไฟล์ที่คุณชื่นชอบได้ เนื้อหาของไฟล์จะมีลักษณะดังนี้:

ชื่อกลุ่ม: rbowen dpitts sungo rshersey

นั่นเป็นเพียงรายชื่อสมาชิกของกลุ่มเป็นแถวยาวคั่นด้วยช่องว่าง

หากต้องการเพิ่มผู้ใช้ในไฟล์รหัสผ่านที่มีอยู่แล้ว ให้พิมพ์:

htpasswd /usr/local/apache/passwd/รหัสผ่าน dpitts

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

Mod_auth_basic และ mod_authz_host ซึ่งมีข้อมูลเพิ่มเติมเกี่ยวกับวิธีการทำงานทั้งหมดนี้ คำสั่งนี้ยังช่วยลดความซับซ้อนของการกำหนดค่าการตรวจสอบสิทธิ์บางอย่างได้อีกด้วย

เลขศูนย์ต่างๆ ที่ Apache รองรับสำหรับข้อมูลการตรวจสอบสิทธิ์นั้นมีอธิบายไว้ในนี้ การเข้ารหัสรหัสผ่าน

และคุณอาจต้องการดูวิธีการควบคุมการเข้าถึง ซึ่งจะกล่าวถึงหัวข้อที่เกี่ยวข้องหลายหัวข้อ

การปกป้องเว็บไซต์โดยใช้เซิร์ฟเวอร์ Apache เป็นหนึ่งในวิธีที่ง่ายที่สุดและในขณะเดียวกันก็ค่อนข้างเชื่อถือได้ ในกรณีนี้ คุณไม่จำเป็นต้องคิดอย่างรอบคอบเกี่ยวกับกลยุทธ์การรักษาความปลอดภัย ออกแบบ และนำไปใช้ในโค้ด นอกจากนี้เพื่อสร้าง ระบบที่ดีฝ่ายจำเลยต้องมีคุณสมบัติเพียงพอในเรื่องนี้ การใช้การป้องกันในตัวของเซิร์ฟเวอร์ Apache WEB ช่วยให้งานของคุณง่ายขึ้นอย่างมาก สิ่งที่คุณต้องทำคือดำเนินการตามลำดับง่ายๆ และเว็บไซต์ของคุณก็จะได้รับการปกป้องอย่างเพียงพอ บทความนี้จะอธิบายรายละเอียดขั้นตอนและการดำเนินการที่คุณต้องดำเนินการ และในตอนท้ายของบทความจะมีตัวอย่างไฟล์ .htaccess

การรับรองความถูกต้องขั้นพื้นฐาน

บทความนี้จะกล่าวถึงวิธีที่ง่ายที่สุดและ วิธีที่เหมาะสมความปลอดภัย - การรับรองความถูกต้องขั้นพื้นฐาน

ความคิดเห็น

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

มาดูกันว่าการรับรองความถูกต้องขั้นพื้นฐานทำงานอย่างไร
เมื่อผู้เยี่ยมชมเข้าถึงไดเร็กทอรีที่ได้รับการป้องกัน เซิร์ฟเวอร์ Apache จะตอบสนองต่อคำขอด้วยส่วนหัวที่มีรหัส 401 (ส่วนหัวต้องมีการตรวจสอบสิทธิ์ 401) เบราว์เซอร์ของผู้เข้าชมยอมรับส่วนหัว 401 และแสดงหน้าต่างพร้อมช่องสำหรับป้อนชื่อผู้ใช้และรหัสผ่าน หลังจากป้อนชื่อผู้ใช้และรหัสผ่าน ข้อมูลนี้จะถูกส่งกลับไปยังเซิร์ฟเวอร์ ซึ่งจะตรวจสอบชื่อผู้ใช้เพื่อดูว่ามีอยู่หรือไม่ รายการพิเศษและรหัสผ่านถูกต้อง หากทุกอย่างถูกต้อง ผู้เยี่ยมชมจะสามารถเข้าถึงทรัพยากรได้ นอกจากส่วนหัวแล้ว ชื่อพิเศษที่เรียกว่าขอบเขตจะถูกส่งไปยังเบราว์เซอร์ด้วย เบราว์เซอร์ไม่เพียงแคชชื่อผู้ใช้และรหัสผ่านเพื่อให้ส่งไปพร้อมกับคำขอแต่ละรายการ แต่ยังรวมถึงขอบเขตด้วย ด้วยเหตุนี้การป้อนชื่อและรหัสผ่านในไดเร็กทอรีที่ได้รับการป้องกันจึงทำได้เพียงครั้งเดียว มิฉะนั้น จะต้องป้อนคำขอทั้งหมดไปยังไดเร็กทอรีที่ได้รับการป้องกัน การแคชพารามิเตอร์การรับรองความถูกต้อง (ชื่อ รหัสผ่าน ขอบเขต) มักจะเกิดขึ้นภายในเซสชันเดียวเท่านั้น

ความคิดเห็น

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

ความคิดเห็น

เซิร์ฟเวอร์ Apache WEB รองรับการรักษาความปลอดภัยประเภทอื่น - การรับรองความถูกต้องแบบแยกส่วน ในระหว่างการตรวจสอบสิทธิ์แบบแยกย่อย รหัสผ่านจะไม่ถูกส่งในรูปแบบข้อความธรรมดา แต่เป็นรหัสแฮชที่คำนวณโดยใช้อัลกอริทึม MD5 ดังนั้นจึงไม่สามารถดักจับรหัสผ่านได้เมื่อสแกนการรับส่งข้อมูล แต่น่าเสียดายที่ในการใช้การรับรองความถูกต้องแบบแยกย่อยคุณต้องติดตั้งโมดูลพิเศษบนเซิร์ฟเวอร์ - mod_auth_digest และนี่เป็นเพียงความสามารถของการดูแลเซิร์ฟเวอร์เท่านั้น นอกจากนี้ จนกระทั่งเมื่อไม่นานมานี้ เบราว์เซอร์ทุกประเภทยังไม่รองรับการรับรองความถูกต้องแบบแยกย่อย

การป้องกันเว็บไซต์ทำได้ง่าย

เพื่อปกป้องไซต์ คุณต้องดำเนินการตามลำดับต่อไปนี้: สร้างไฟล์ด้วยรหัสผ่าน คัดลอกไฟล์ไปยังเซิร์ฟเวอร์ สร้างไฟล์ .htaccess และคัดลอกไปยังเซิร์ฟเวอร์ด้วย
เพื่อจัดระเบียบการป้องกันคุณจะต้องมี

  1. เว็บไซต์และการเข้าถึง FTP
  2. สิทธิ์ในการสร้างไฟล์ .htpaccess และจัดการการป้องกันโดยใช้ไฟล์เหล่านั้น
  3. โปรแกรมสร้างรหัสผ่าน htpasswd.exe

ตรวจสอบการทำงานของไฟล์ .htaccess บนเซิร์ฟเวอร์

เพื่อตรวจสอบว่าคุณมีสิทธิ์ในการจัดการการป้องกันโดยใช้ไฟล์ .htaccess หรือไม่ ให้สร้างไฟล์ข้อความชื่อ .htaccess (อักขระตัวแรกคือจุด ไม่มีนามสกุล)

ความคิดเห็น

สะดวกในการสร้างไฟล์ .htaccess โดยใช้โปรแกรมแก้ไขในตัวในเชลล์ Far, WindowsCommander, TotalCommander ฯลฯ รวมถึงในตัวแก้ไข Notepad

ความคิดเห็น

เพื่อไม่ให้แผ่นจดบันทึกถูกแทนที่โดยอัตโนมัติ ส่วนขยาย .txtในกล่องโต้ตอบบันทึก ในรายการแบบเลื่อนลง "ประเภทไฟล์" ให้เลือกตัวเลือก "ไฟล์ทั้งหมด"


ข้าว.บันทึกไฟล์ .htaccess ในแผ่นจดบันทึก

ตรวจสอบการทำงานของ .htaccess

AuthType พื้นฐาน
ผู้ดูแลระบบ AuthName
ต้องการผู้ใช้ที่ถูกต้อง

จากนั้น ด้วยการเข้าถึง FTP ให้เขียนไฟล์ .htaccess บนไซต์ใหม่ในไดเร็กทอรีที่คุณต้องการปกป้อง

ความคิดเห็น

ผลกระทบของไฟล์ .htaccess ไม่เพียงขยายไปยังไดเร็กทอรีที่ไฟล์นั้นตั้งอยู่ แต่ยังรวมถึงไดเร็กทอรีย่อยทั้งหมดที่อยู่ในระดับที่ต่ำกว่าด้วย

จากนั้น เข้าถึงไดเร็กทอรีนี้ผ่านเบราว์เซอร์ของคุณ หากคุณกำลังปกป้องไดเร็กทอรีผู้ดูแลระบบและได้เขียนไฟล์ .htaccess ใหม่ที่นั่น คุณควรป้อนเพื่อตรวจสอบ แถบที่อยู่เบราว์เซอร์ URL ต่อไปนี้: http://www.mysite.ru/admin/

หากหลังจากนี้ คุณได้รับแจ้งให้ป้อนข้อมูลเข้าสู่ระบบและรหัสผ่านตามภาพด้านล่าง แสดงว่าการทดสอบสำเร็จและคุณสามารถปกป้องไดเร็กทอรีต่อไปได้

ข้าว. หน้าต่างเข้าสู่ระบบและรหัสผ่าน


หากคุณทำทุกอย่างถูกต้อง แต่หน้าต่างป้อนรหัสผ่านไม่ปรากฏขึ้น แสดงว่าการตั้งค่าเซิร์ฟเวอร์ห้ามไม่ให้คุณใช้ไฟล์ .htaccess เพื่อปกป้องไดเรกทอรี เมื่อต้องการแก้ไขปัญหานี้ คุณควรติดต่อฝ่ายดูแลเซิร์ฟเวอร์ หรือใช้การป้องกันประเภทอื่น
เมื่อพิจารณาแล้วว่าไฟล์ .htaccess ทำงานได้ คุณควรลบไฟล์ทดสอบที่คุณเพิ่งเขียนออกจากไซต์

ความคิดเห็น

หากคุณไม่สามารถลบไฟล์ .htaccess ได้ด้วยเหตุผลบางประการ ให้สร้างไฟล์ .htaccess เปล่าและแทนที่ด้วยไฟล์บนเซิร์ฟเวอร์

การสร้างไฟล์ด้วยpasswords.htpasswd

ไฟล์รหัสผ่านถูกสร้างขึ้นโดยยูทิลิตี้ htpasswd.exe หากคุณมีเซิร์ฟเวอร์ Apache WEB ติดตั้งอยู่ในเครื่องของคุณแล้ว ยูทิลิตี้นี้ตั้งอยู่ในไดเร็กทอรีที่ติดตั้งไว้ อาปาเช่-กินในไดเรกทอรีย่อย ถังขยะ.

ความคิดเห็น

หากคุณไม่ได้ติดตั้ง Apache คุณสามารถดาวน์โหลดยูทิลิตี้ htpasswd.exe ได้จากลิงค์:

ในการทำงานกับยูทิลิตี้ htpasswd.exe คุณต้องมีอินเทอร์เฟซบรรทัดคำสั่ง โปรแกรมเช่น Far, WindowsCommander ฯลฯ มีอินเทอร์เฟซบรรทัดคำสั่ง ที่นี่เราจะดูการทำงานกับบรรทัดคำสั่งโดยใช้ยูทิลิตี้ cmd ที่มาพร้อมกับ Windows 2000/XP เป็นต้น
คลิก "เริ่ม" -> "วิ่ง"ให้ป้อนในบรรทัดอินพุต คำสั่งและกด ตกลง- หน้าต่างยูทิลิตี้ CMD จะเปิดขึ้น

ข้าว. หน้าต่างยูทิลิตี้ CMD


ถัดไปคุณต้องไปที่ไดเร็กทอรีซึ่งมียูทิลิตี้ htpasswd.exe อยู่ สมมติว่าเซิร์ฟเวอร์ Apache ได้รับการติดตั้งในไดเร็กทอรี c:/Apache2 จากนั้นป้อนคำสั่งในบรรทัดคำสั่ง: cd../../apache2/bin แล้วกด Enter


คุณได้ย้ายไปยังไดเร็กทอรีด้วย: Apache2in ตอนนี้คุณต้องให้คำสั่งเพื่อสร้างไฟล์ด้วยรหัสผ่าน พิมพ์ข้อมูลต่อไปนี้ลงในบรรทัดคำสั่ง:

Htpasswd -cm .htpasswd ผู้ดูแลระบบ

  • -cm เป็นสวิตช์สำหรับยูทิลิตี้ คีย์ c - ระบุว่าจำเป็นต้องสร้างไฟล์ใหม่ด้วยรหัสผ่าน หากมีไฟล์ชื่อเดียวกันนี้อยู่แล้ว ไฟล์นั้นจะถูกเขียนทับ คีย์ m - กำหนดการเข้ารหัสโดยใช้อัลกอริทึม MD5
    .htpasswd - ชื่อของไฟล์รหัสผ่าน (คุณสามารถใช้ชื่อใดก็ได้)
    ผู้ดูแลระบบ - ชื่อของผู้เข้าชมที่จะได้รับอนุญาตให้เข้าถึงพื้นที่หวงห้ามของไซต์

เพื่อเป็นการตอบสนอง คุณควรถูกขอให้ป้อนรหัสผ่านและทำซ้ำ หากทุกอย่างถูกต้องข้อความต่อไปนี้จะปรากฏขึ้นที่ท้าย: การเพิ่มรหัสผ่านสำหรับผู้ดูแลระบบผู้ใช้ และในไดเร็กทอรี c: Apache2in จะมีไฟล์ .htpasswd ซึ่งจะมีบรรทัดพร้อมชื่อผู้ใช้และรหัสแฮชของรหัสผ่านของเขา ในการเพิ่มผู้ใช้รายอื่นในไฟล์ .htpasswd เดียวกัน ให้ลบสวิตช์ -c ออกจากคำสั่งเรียกใช้ยูทิลิตี้ htpasswd.exe

Htpasswd -m .htpasswd ผู้ดูแลระบบ


ความคิดเห็น

หากไม่ได้สร้างไฟล์ที่มีรหัสผ่าน อาจเป็นไปได้ว่าคีย์ยูทิลิตี้บางตัวไม่รองรับในไฟล์ของคุณ ระบบปฏิบัติการ- ตัวอย่างเช่น บางครั้งระบบไม่รองรับปุ่ม m ในกรณีนี้ คุณต้องป้อน htpasswd -c .htpasswd admin
หากต้องการดูคีย์และพารามิเตอร์ของยูทิลิตี้ ให้ป้อน htpasswd.exe /? คุณจะได้รับคำอธิบายของอินเทอร์เฟซ

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

การป้องกันไฟล์.htpasswd


ปฏิเสธจากทั้งหมด

และวางไว้ในไดเร็กทอรีที่มีไฟล์รหัสผ่านของคุณอยู่ ขณะนี้ผู้เยี่ยมชมเว็บไซต์จะไม่สามารถเข้าถึงได้
ไฟล์รหัสผ่านถูกสร้างขึ้นและได้รับการป้องกันจากการเข้าถึงโดยไม่ได้รับอนุญาต ตอนนี้คุณต้องสร้างไฟล์ .htaccess ที่จะใช้ในไดเร็กทอรีที่ได้รับการป้องกัน

การสร้างไฟล์ .htaccess

คำสั่งต่อไปนี้สามารถใช้เพื่อปกป้องไดเร็กทอรี:

  • AuthType - ประเภทของการรับรองความถูกต้องที่จะใช้ สำหรับการรับรองความถูกต้องขั้นพื้นฐาน คำสั่งนี้จะต้องตั้งค่าเป็น: พื้นฐาน
    AuthName - ชื่อของขอบเขตการรับรองความถูกต้อง ข้อความที่ช่วยให้ผู้เข้าชมเข้าใจว่าพวกเขากำลังพยายามเข้าถึงที่ใด ตัวอย่างเช่น มันอาจจะเขียนว่า: "โซนส่วนตัว สำหรับผู้ดูแลระบบเท่านั้น!"
    AuthUserFile - พาธไปยังไฟล์รหัสผ่าน (.htpasswd)
    AuthGroupFile - พาธไปยังไฟล์กลุ่ม หากมีอยู่
    จำเป็น - ข้อกำหนดหนึ่งข้อขึ้นไปที่ต้องปฏิบัติตามเพื่อเข้าถึงพื้นที่หวงห้าม

ตัวอย่างไฟล์ .htaccess

AuthType พื้นฐาน



ต้องการผู้ดูแลกลุ่ม

คำสั่ง AuthUserFile และ AuthGroupFile ควรอธิบายโดยละเอียดเพิ่มเติม ประกอบด้วยเส้นทางที่แน่นอนไปยังไฟล์ที่เกี่ยวข้องจากรูทเซิร์ฟเวอร์

ความสนใจ!

เส้นทางสัมพัทธ์จะไม่ทำงาน!

คุณสามารถค้นหาเส้นทางจากรูทเซิร์ฟเวอร์ได้โดยสอบถามจากผู้ดูแลระบบเซิร์ฟเวอร์ หรือคุณสามารถลองค้นหาด้วยตัวเอง เมื่อต้องการทำเช่นนี้ ให้เรียกใช้ฟังก์ชัน phpinfo() ตารางสีม่วงจะแสดงบนหน้าจอ สามารถดูค่าของเส้นทางสัมบูรณ์จากรูทเซิร์ฟเวอร์ได้ในตัวแปร: doc_root, open_basedir, DOCUMENT_ROOT
คำสั่ง Require กำหนดว่าใครได้รับอนุญาตให้เข้าถึงพื้นที่หวงห้าม ตัวอย่างเช่น,

  • ต้องการผู้ใช้ที่ถูกต้อง - อนุญาตให้ผู้ใช้ที่ตรวจสอบแล้วทั้งหมดเข้าถึงได้
  • ต้องการผู้ใช้ ผู้ดูแลระบบ alex mango - อนุญาตให้เข้าถึงได้เฉพาะผู้เยี่ยมชมที่มีชื่อ ผู้ดูแลระบบ, alex, mango โดยธรรมชาติแล้วจะต้องได้รับการรับรองความถูกต้อง
    AuthName "โซนส่วนตัว สำหรับผู้ดูแลระบบเท่านั้น!"
    AuthUserFile /usr/host/mysite/.htpasswd
    ต้องการผู้ใช้ที่ถูกต้อง

    เข้าถึงได้เฉพาะผู้ดูแลระบบและผู้ใช้รูทเท่านั้น

    AuthType พื้นฐาน
    AuthName "โซนส่วนตัว สำหรับผู้ดูแลระบบเท่านั้น!"
    AuthUserFile /usr/host/mysite/.htpasswd
    ต้องการรูทผู้ดูแลระบบของผู้ใช้

    เข้าถึงได้เฉพาะผู้ใช้จากกลุ่มผู้ดูแลระบบเท่านั้น

    AuthType พื้นฐาน
    AuthName "โซนส่วนตัว สำหรับผู้ดูแลระบบเท่านั้น!"
    AuthUserFile /usr/host/mysite/.htpasswd
    AuthGroupFile /usr/host/mysite/group
    ต้องการผู้ดูแลกลุ่ม

    ปฏิเสธการเข้าถึงเฉพาะไฟล์ private.zip


    AuthType พื้นฐาน
    AuthName "โซนส่วนตัว สำหรับผู้ดูแลระบบเท่านั้น!"
    AuthUserFile /usr/host/mysite/.htpasswd
    ต้องการผู้ใช้ที่ถูกต้อง