CentOS เป็นหนึ่งในระบบปฎิบัติการที่นิยมใช้ในการทำเครื่อง Server หรือ Web Server สำหรับองค์กร สามารถรองรับผู้ใช้งานได้หลากหลาย จึงเป็น OS ที่อาจารย์มักจะพูดถึง หรือให้ผมใช้งานในรายวิชา
และโจทย์ของอาจารย์ในวันนี้คือ สร้าง Personal Website ครับ Personal Website ในที่นี้ก็คือ เว็บไซต์ที่เกี่ยวกับตัวเราครับ นอกจากเราแล้ว ผู้อื่นจะไม่สามารถเข้ามาได้ หรือมาดูได้ แต่ไม่มีสิทธิ์ในการจัดการไฟล์ต่างๆของเรา เช่นเดียวกัน เราก็ไม่มีสิทธิ์เข้าไปจัดการไฟล์ของผู้อื่นได้ เนื่องจาก Personal Website จะถูกแบ่งออกเป็นกลุ่มๆ เช่น กลุ่มของ Staff , Student , Teacher ครับ ไปดูวิธีสร้างกันเลย
Step 1 : สร้างกลุ่มเพื่อรองผู้ใช้งาน
- สร้างกลุ่มเพื่อรองรับผู้ใช้งานโดยใช้คำสั่ง groupadd โดยเข้าไปไดเรกทอรี่ /home/ ก่อนนะครับ
# groupadd student /* ( ชื่อกลุ่มที่เราต้องการในกรณีนี้ผมตั้งว่า student ) */
# mkdir student /* ( สร้างไดเรกทอรี่ชื่อว่า student ) */
Step 2 : เพิ่ม User เข้าไปยังกลุ่ม
- เพิ่ม User เข้าไปยังกลุ่มผู้ใช้งานที่เราได้สร้างเอาไว้โดยใช้คำสั่ง useradd
# useradd -g student -d /home/student/55442211 s55442211
* อธิบายเพิ่มเติม คำสั่งด้านบนคือ การสร้าง user ชื่อ "s55442211" เพิ่มเข้าไปในไดเรกทอรี่ /home/student/55442211 (ในกรณีที่เรามีผู้ใช้หลายคน จำเป็นต้องสร้างไดเรกทอรี่ขึ้นมาอีก คือ 55442211)
ศึกษาเกี่ยวกับคำสั่งในการจัดการผู้ใช้ได้ที่นี่ : คลิก !
Step 3 : สร้างไดเรกทอรี่ Public เพื่อเข้าถึงได้จากหน้าเว็บ
- เป็นการสร้างไดเรกทอรี่่เพื่อกำหนดให้สามารถเข้าถึงได้จากเว็บเพจเพียงไดเรกทอรี่เดียวเท่านั้น
# su - s55442211 /* ( su เพื่อเข้าใช้งานในสิทธิ์ของ User s5442211 ) */
# mkdir public_html /* ( สร้างไดเรกทอรี่เพื่อกำหนดเป็น public ให้เข้าถึงได้จากหน้าเว็บ ) */
# exit /* ( ใช้คำสั่ง exit เพื่อกลับมายัง root ) */
Step 4 : คอนฟิกเพื่อ UserDir (public_html)
- เป็นการ Enable apache เพื่อให้สามารถเข้ามาเรียกดูหน้า public_html ที่เราได้กำหนดไว้
# vi /etc/httpd/conf/httpd.conf /* ( ใช้ editor ที่คุณถนัดเพื่อเข้าไปแก้ไขไฟล์ ) */
# ค้นหาและแก้ไขโดยการลบเครื่องหมาย # (คอมเม้น) หน้าคำสั่ง UserDir public_html
# ค้นหาและแก้ไขโดยการลบเครื่องหมาย # (คอมเม้น) ตั้งแต่ <Directory /home/*/*/public_html> จนกระทั่งถึง </Directory> /* ( เพิ่ม path /*/ ในกรณีที่เราเพิ่มกลุ่มย่อยเข้าไป ) */
# ls -la /* ( ตรวจสอบดูว่า Dir 5442211 สามารถเข้าถึงได้หรือไม่หากไม่ให้ใช้คำสั่ง chmod ) */
# service httpd restart
Step 5 : ขึ้นตอนสุดท้าย
- ในกรณีที่เราทำตามขึ้นตอนที่ 4 แล้ว ทดลอง restart service และเปิดหน้าเว็บเพื่อเรียกเข้ามาใช้งานผ่านบราวเซอร์แล้ว แต่ยังไม่สามารถเข้าถึงได้โดยมีข้อความแจ้งเตือนถึง Permission ให้ใช้คำสั่ง setenforce 0 เพือเป็นการปิดการทำงานตรวจสอบของ SELinux ลงชั่วคราว
# setenforce 0 /* ( ปิดการตรวจสอบของ SELinux เพื่อให้เข้าถึง Public_html ของเรา ) */
# service httpd restart
- แค่นี้ก็สามารถเข้าถึงหน้า public_html ที่เราได้สร้างไว้ได้แล้วครับ สิ้นสุดวิธีการทำ Personal Website
- วิธีเบื้องตันเป็นเพียงตัวอย่างในการสร้าง Personal Website แบบเบื้องต้นนะครับ สำหรับในกรณีการใช้งานจริงอาจต้องมีการกำหนดกลุ่มผู้ใช้งาน หรือกำหนดสิทธิการใช้งานให้มีความ Secure มากกว่านี้ครับ
- ผิดพลาดประการใดขออภัยไว้ ณ ที่นี้ด้วย :D