You are on page 1of 169

บทนํา

การพิสูจนตัวตน (Authentication)
การปกปองความมั่นคงปลอดภัยของระบบและขอมูลภายในองคกรถือเปนเรื่องสําคัญใน
ปจจุบัน ทั้งนี้เนื่องจากการถูกคุกคามโดยผูไมประสงคดีหรือจากโปรแกรมบางประเภทไดเพิ่ม มากขึ้นและอาจนํามา
ซึ่งความเสียหายอยางมากตอองคกร ดังนั้นถาภายในระบบมีการควบคุม ความปลอดภัยที่ดีจะชวยลดโอกาสเสี่ยง
ตอการถูกคุกคามได
เอกสารฉบับนี้จัดทําขึ้นเพื่อใหความรูเบื้องตนเกี่ยวกับการพิสูจนตัวตนซึ่งเปนขั้นตอน พื้นฐานที่สําคัญของ
การควบคุมความปลอดภัย ในกระบวนการการพิสูจนตัวตนจะนําหลักฐาน ที่ผูใชกลาวอางมาตรวจสอบวาบุคคลที่
กลาวอางนั้นเปนใครและไดรับอนุญาตใหสามารถเขามา ภายในระบบไดหรือไม การพิสูจนตัวตนมีหลายประเภทที่
ใชอยูในปจจุบัน เชน การพิสูจน ตัวตนโดยใชรหัสผาน หรือโดยใชรหัสผานที่ใชเพียงครั้งเดียว เปนตน แตละชนิดนั้น
จะมีขอดี ขอเสียแตกตางกันไปขึ้นอยูกับความจําเปนในการใชงาน ในระบบเครือขายแบบเปดหรือ
อินเตอรเน็ตนั้นกาพิสูจนตัวตนถือไดวาเปนกระบวนการเริม่ ตนและมีความสําคัญที่สุดในการ ปกปองเครือขาย
ใหปลอดภัย และกลาวถึงโพรโตคอลการสื่อสารที่มีการพิสูจนตัวตนที่นิยมใช ในปจจุบัน เชน Secure Socket Layer
(SSL) Internet Security (IPsec)

การกระทําความผิดเกีย่ วกับคอมพิวเตอร พ.ศ.๒๕๕๐
ดวยในปจจุบันการติดตอสื่อสารผานระบบคอมพิวเตอรหรือระบบอิเล็กทรอนิกสเริ่มเขา ไปมีบทบาท
และทวีความสําคัญเพิ่มขึ้นตามลําดับตอระบบเศรษฐกิจและคุณภาพชีวิตของ ประชาชน แตในขณะเดียวกันการกระทํา
ความผิดเกี่ยวกับคอมพิวเตอรมีแนวโนมขยายวงกวาง และทวีความรุนแรงเพิ่มมากขึ้น ขอมูลจราจรทางคอมพิวเตอร
นับเปนพยานหลักฐานสําคัญใน การดําเนินคดี อันเปนประโยชนอยางยิ่งตอการสืบสวน สอบสวน
เพื่อนําตัวผูกระทําความผิดมา ลงโทษ จึงสมควรกําหนดใหผูใหบริการมีหนาที่ในการเก็บรักษาขอมูลจราจรทาง
คอมพิวเตอร ดังกลาว อาศัยอํานาจตามความในมาตรา ๒๖ วรรค ๓ แหงพระราชบัญญัติวาดวยการกระทํา ความผิด
เกี่ยวกับคอมพิวเตอร พ.ศ. ๒๕๕๐ ดังนั้น รัฐมนตรีวาการกระทรวงเทคโนโลยี สารสนเทศและการสื่อสาร จึงไดกําหนด
หลักเกณฑไวดังตอไปนี้
ขอ ๑ ประกาศนี้ เรียกวา "หลักเกณฑการเก็บรักษาขอมูลจราจรทางคอมพิวเตอรของผู ใหบริการ พ.ศ. ๒๕๕๐"
ขอ ๒ ประกาศนี้ใหใชบังคับตั้งแตวันถัดจากวันประกาศในราชกิจจานุเบกษาเปนตนไป
ขอ ๓ ใหรัฐมนตรีวาการกระทรวงเทคโนโลยีสารสนเทศและการสื่อสารรักษาการตาม
ประกาศนี้
ขอ ๔ ในประกาศนี้
"ผูใหบริการ" หมายความวา
(๑) ผูใหบริการแกบุคคลอื่นในการเขาสูอินเทอรเน็ต หรือใหสามารถติดตอถึงกันโดย ประการอื่น โดยผานทางระบบ
คอมพิวเตอร ทั้งนี้ไมวาจะเปนการใหบริการในนามของตนเอง หรือเพื่อประโยชนของบุคคลอื่น
(๒) ผูใหบริการเก็บรักษาขอมูลคอมพิวเตอรเพื่อประโยชนของบุคคลอื่น
"ขอมูลจราจรทางคอมพิวเตอร" หมายความวา ขอมูลเกี่ยวกับการติดตอสื่อสารของ ระบบคอมพิวเตอร ซึ่งแสดงถึง
แหลงกําเนิด ตนทาง ปลายทาง เสนทาง เวลา วันที่ ปริมาณ ระยะเวลา ชนิดของบริการ หรืออื่น ๆ ที่เกี่ยวของกับการ
ติดตอสื่อสารของระบบคอมพิวเตอร นั้น บริการใชอินเทอรเน็ตและเครือขายทั่วไปในหนวยงานของตนเองอีกดวย.

"ระบบคอมพิวเตอร " หมายความวา อุปกรณหรือชุดอุปกรณที่เชื่อมการทํางานเขา
ดวยกัน โดยไดมีการกําหนด คําสั่ง ชุดคําสั่ง หรือสิ่งอื่นใด และแนวทางปฏิบัติงานใหอุปกรณ
หรือชุดอุปกรณทําหนาที่ประมวลผลขอมูลโดยอัตโนมัติ
"ผูใชบริการ" หมายความวา ผูใชบริการของผูใหบริการไมวาตองเสียคาใชบริการหรือไมก็ตาม
ขอ ๕ ภายใตบังคับของมาตรา ๒๖ แหงพระราชบัญญัตวิ าดวยการกระทําความผิด เกี่ยวกับคอมพิวเตอร พ.ศ. ๒๕๕๐
ประเภทของผูใหบริการซึ่งมีหนาที่ตองเก็บรักษาขอมูล จราจรทางคอมพิวเตอรแบงไดดังนี้
(๑) ผูใหบริการแกบุคคลทั่วไปในการเขาสูอินเทอรเน็ต หรือใหสามารถติดตอถึงกันโดย ประการอื่น ทั้งนี้
โดยผานทางระบบคอมพิวเตอร ไมวาจะเปนการใหบริการในนามของตนเอง หรือเพื่อประโยชนของบุคคลอื่น สามารถ
จําแนกได ๔ ประเภท ดังนี้
ก . ผู ป ร ะ ก อ บ กิ จ ก า ร โ ท ร ค ม น า ค ม แ ล ะ ก า ร ก ร ะ จ า ย ภ า พ แ ล ะ เ สี ย ง (Telecommunication and
Broadcast Carrier) ประกอบดวยผูใหบริการดังปรากฏตาม ภาคผนวก ก. แนบทายประกาศนี้
ข. ผูใหบริการการเขาถึงระบบเครือขายคอมพิวเตอร (Access Service Provider) ประกอบดวยผูใหบริการดังปรากฏตาม
ภาคผนวก ก. แนบทายประกาศนี้
ค. ผูใหบริการเชาระบบคอมพิวเตอร หรือใหเชาบริการโปรแกรมประยุกตตาง ๆ (Host Service Provider) ประกอบ
ดวยผูใหบริการดังปรากฏตามภาคผนวก ก. แนบทาย ประกาศนี้
ง. ผูใหบริการรานอินเทอรเน็ต ดังปรากฏตามภาคผนวก ก. แนบทายประกาศนี้
(๒) ผูใหบริการในการเก็บรักษาขอมูลคอมพิวเตอรเพื่อประโยชนของบุคคลตาม (๑) (Content Service Provider)
เชน ผูใหบริการขอมูลคอมพิวเตอรผานแอพพลิเคชั่นตาง ๆ (Application Service Provider) ประกอบดวยผูใหบริการ
ดังภาคผนวก ก. แนบทายประกาศนี้
ขอ ๖ ขอมูลจราจรทางคอมพิวเตอร ที่ผูใหบริการตองเก็บรักษา ปรากฏดังภาคผนวก ข. แนบทายประกาศนี้
ขอ ๗ ผูใหบริการมีหนาที่เก็บรักษาขอมูลจราจรทางคอมพิวเตอร ดังนี้

ศ. ๓ (๕) ผูใหบริการตามขอ ๕ (๒) มีหนาที่เก็บขอมูลจราจรทางคอมพิวเตอรตาม ภาคผนวก ข. ๒ ตามประเภท ชนิดและหนาที่การใหบริการ (๓) ผูใหบริการตามขอ ๕ (๑) ค. ๑ (๒) ผูใหบริการตามขอ ๕ (๑) ข. มีหนาที่เก็บขอมูลจราจรทางคอมพิวเตอรตาม ภาคผนวก ข. มีหนาที่เก็บขอมูลจราจรทางคอมพิวเตอรตาม ภาคผนวก ข. มีหนาที่เก็บขอมูลจราจรทางคอมพิวเตอรตาม ภาคผนวก ข. ๒๕๕๐ เพื่อใหการสงมอบขอมูลนั้น เปนไปดวยความรวดเร็ว .(๑) ผูใหบริการตามขอ ๕ (๑) ก. มีหนาที่เก็บขอมูลจราจรทางคอมพิวเตอรตาม ภาคผนวก ข. ๒ ตามประเภท ชนิดและหนาที่การใหบริการ (๔) ผูใหบริการตามขอ ๕ (๑) ง. ๔ ทั้งนี้ ในการเก็บรักษาขอมูลจราจรตามภาคผนวกตาง ๆ ที่กลาวไปขางตนนั้น ใหผูใหบริการเก็บเพียงเฉพาะในสวนที่เปนขอมูลจราจรที่เกิดจากสวนที่เกี่ยวของกับบริการของตนเทานั้น ขอ ๘ การเก็บรักษาขอมูลจราจรทางคอมพิวเตอร ผูใหบริการตองใชวิธีการที่มั่นคง ปลอดภัย ดังตอไปนี้ (๑) เก็บในสื่อ (Media) ที่สามารถรักษาความครบถวนถูกตองแทจริง (Integrity) และระบุตัวบุคคล (Identification) (๒) ที่เขาถึงสื่อดังกลาวได (๒) มีระบบการเก็บรักษาความลับของขอมูลที่จัดเก็บ และกําหนดชั้นความลับ ในการเขาถึงขอมูล ดังกลาว เพื่อรักษาความนาเชื่อถือของขอมูล และไมใหผูดูแลระบบ สามารถแกไขขอมูลที่เก็บรักษาไว เชน การเก็บไวใน Centralized Log Server หรือการ ทํา Data Archiving หรือทํา Data Hashing เปนตน เวนแตผูมีหนาที่เกี่ยวของที่เจาของ หรือผูบริหารองคกร กําหนดใหสามารถเขาถึงขอมูลดังกลาวได เชน ผูตรวจสอบระบบ สารสนเทศขององคกร (IT Auditor) หรือบุคคลที่องคกรมอบหมาย เปนตน รวมทั้ง พนักงานเจาหนาที่ตามพระราชบัญญัตินี้ (๓) จัดใหมีผูมีหนาที่ประสานงานและใหขอมูลกับพนักงานเจาหนาที่ ซึ่งไดรับ การแตงตั้งตามพระราชบัญญัติ วาดวยการกระทําความผิดเกี่ยวกับคอมพิวเตอร พ.

เริ่มเก็บขอมูลจราจรทางคอมพิวเตอรเมื่อพน สามสิบวัน นับจากวันประกาศใน ราชกิจจานุเบกษา (๒) ใหผูใหบริการตามขอ ๕ (๑) ข.(๔) ในการเก็บขอมูลจราจรนั้น ตองสามารถระบุรายละเอียดผูใชบริการเปน รายบุคคลได (Identification and Authentication) เชน ลักษณะการใชบริการ Proxy Server. Network Address Translation (NAT) หรือ Proxy Cache หรือ Cache Engine หรือบริการ Free Internet หรือบริการ 1222 หรือ Wi-Fi Amnat-EDv2 ตองสามารถระบุ ตัวตนของผูใช บริการเปนรายบุคคลไดจริง (๕) ในกรณีที่ผใู หบริการประเภทหนึ่งประเภทใด ในขอ ๑ ถึงขอ ๔ ขางตน ได ใหบริการในนามตนเอง แตบริการ ดังกลาวเปนบริการทีใ่ ชระบบของผูใหบริการซึ่งเปน บุคคลที่สาม เปนเหตุใหผูใหบริการในขอ ๑ ถึงขอ ๔ ไมสามารถรูได วา ผูใชบริการที่เขา มาในระบบนั้นเปนใคร ผูใหบริการเชนวานั้นตองดําเนินการใหมีวิธีการระบุและยืนยัน ตัวบุคคล (Identification and Authentication) ของผูใชบริการผานบริการของตนเองดวย ขอ ๙ เพื่อใหขอมูลจราจรมีความถูกตองและนํามาใชประโยชนไดจริง ผูใหบริการตอง ตั้งนาฬิกาของอุปกรณบริการทุกชนิดใหตรงกับเวลาอางอิงสากล (Stratum 0) โดยผิดพลาดไม เกิน ๑๐ มิลลิวนิ าที ขอ ๑๐ ผูใหบริการซึ่งมีหนาที่เก็บขอมูลจราจรทางคอมพิวเตอรตามขอ ๗ เริ่มเก็บขอมูล ดังกลาวตามลําดับ ดังนี้ (๑) ผูใหบริการตามขอ ๕ (๑) ก. ๒๕๕๐ สิทธิชัย โภไคยอุดม รัฐมนตรีวาการกระทรวงเทคโนโลยีสารสนเทศและการสื่อสาร .ศ. เฉพาะผูใหบริการเครือขายสาธารณะหรือผู ใหบริการอินเทอรเน็ต (ISP) เริ่มเก็บขอมูลจราจรทางคอมพิวเตอรเมื่อพนหนึ่งรอยแปด สิบวันนับจากวันประกาศในราชกิจจานุเบกษา ผูใหบริการอืน่ นอกจากทีก่ ลาวมาในขอ ๑๐ (๑) และขอ ๑๐ (๒) ขางตน ใหเริ่มเก็บขอมูล จราจรทางคอมพิวเตอรเมื่อ พนหนึ่งปนับจากวันประกาศในราชกิจจานุเบกษา ประกาศ ณ วันที่ ๒๑ สิงหาคม พ.

SuSE. Windows Server 2008). OpenNA. Debian. OpenSolaris) เปนตน การที่จะเลือกระบบปฏิบัติการตัวใดมาทําเซิรฟเวอรใชงาน ในองคกรนัน้ สําหรับ Admin มือเกาไมนาเปนปญหามากนักเพราะไดทดสอบลองผิดลองถูกมา พอสมควร จะวาไปแลวในอดีตใครที่ตดิ ตั้ง Linux และทําการคอนฟกใหระบบใชงานผานไดก็ ถือวาเกงพอสมควร รวมทั้งหลังการติดตั้งเสร็จก็สามารถเปดใชงานไดตามปกติ นอยครั้งนักที่ ระบบจะโดนแฮกซ แตหากเปน Admin นองใหมในปจจุบนั การลองผิดลองถูกคงเปนการยาก แลว เนื่องจากปจจุบันมีแฮกเกอรทั่วบานทั่วเมืองใครๆ ก็สามารถเรียนรูวิธีการแฮกซระบบ เซิรฟเวอรผานเว็บ Google สําหรับ Admin นองใหมกวาจะทดลองสําเร็จบางครั้งระบบโดนเจาะ ไปเรียบรอยแลว ระบบปฏิบัติการเครือขายลีนุกซที่ชื่อวา CentOS ยอมาจาก Community ENTerprise Operating System เปนลีนุกซที่ พัฒนามาจากตนฉบับ RedHat Enterprise Linux (RHEL) โดยที่ CentOS ไดนําเอาซอรสโคดตนฉบับของ RedHat มาทํา การคอมไพลใหมโดยการพัฒนายังเนน พัฒนาเปนซอฟตแวร Open Source ที่ถือลิขสิทธิ์แบบ GNU General Public License ในปจจุบัน CentOS Linux ถูกนํามาใชในการทํา Web Hosting กันอยางกวางขวางเนื่องจากเปน ระบบปฏิบัติการที่มีตนแบบจาก RedHat ที่มีความแข็งแกรงสูง (ปจจุบันเนนพัฒนาในเชิง การคา) การติดตั้งแพ็กเกจยอย ภายในสามารถใชไดทั้ง RPM.5 หากทานใดจะนําไปใชหรือพัฒนาตอเปน Linux Distribution ไหนก็ได ในปจจุบันซอฟตแวรสําหรับใชทําเปนระบบ Intranet หรือ Internet Server ขององคกรมี ใหเลือกใชงานหลายตัวดวยกัน อาทิ เชน Windows Server (Windows Server 2003. BSD Server (FreeBSD.ศ. TAR.ความเปนมาของ Linux CentOS เมื่อเราไดทําการศึกษาขอมูลเกี่ยวกับ พระราชบัญญัติวาดวยการกระทําความผิดเกีย่ วกับ คอมพิวเตอร พ. CentOS. Linux-SIS). APT หรือใชคําสั่ง YUM ใน การอัปเดทซอฟตแวรแบบอัตโนมัติ สามารถอานราย ละเอียดเพิ่มเติมไดที่เว็บไซต . OpenBSD.๒๕๕๐ แลว ขั้นตอนตอไปจะเปนวิธีการติดตั้งระบบ OS ที่ใชในการจัดเก็บ และบริหารระบบงาน ในที่นี้เราจะใช CentOS 5. Fedora. NetBSD). Ubuntu. IPCop. Solaris (Sun Solaris. Mandriva. Linux Server (RedHat. Slackware.

เหตุผลหลักที่องคกรจะเลือกใชระบบ CentOS
สําหรับองคกรธุรกิจเหมาะสมอยางมากที่จะนําระบบตัวลีนุกซตัวนี้มาทําเปน เซิรฟเวอร ใชงานภายในองคกร
โดยพอสรุปเหตุผลหลักในการนําระบบนี้มาใชงานไดดังนี้
1. เพื่อประหยัดงบประมาณขององคกร เนื่องจาก CentOS เปนซอฟตแวรโอเพนซอส องคกรไมจําเปนตองจายคา ลิขสิทธ
ซอฟตแวร (เพียงแตผูดูแลระบบตองลงทุนเรียนรูระบบกอน การใชงาน ในปจจุบันสามารถเรียนรูไดงายดายผานทาง
หนาเว็บ Google.com)
2. เพื่อนํามาทําเซิรฟเวอรบริการงานตางๆ ในองคกร ซึ่งภายใน CentOS มีแพ็กเกจยอยที่ นํามาใชทําเซิรฟเวอรสําหรับใช
งานในองคกรจํานวนมาก อาทิ เชน Web Server(Apache), FTP
Server(ProFTPd/VSFTPd),MailServer(Sendmail/Postfix/Dovecot),Database Server(MySQL/P ostgreSQL), File and
Printer Server(Samba), Proxy Server(Squid), DNS Server(BIND), DHCP Server(DHCPd), Antivirus
Server(ClamAV), Streaming Server, RADIUS Server(FreeRADIUS), Control Panel(ISPConfig) เปนตน
3. เพื่อนํามาทําเปนระบบเซิรฟเวอรสําหรับจายไอพีปลอม (Private IP Address) ไปเลี้ยง เครื่องลูกขายในองคกร รวมทั้งตั้ง
เปนระบบเก็บ Log Files ผูใชงาน เพื่อใหสอดคลองกับพระ ราชบัญญัตวิ าดวยการกระทําความผิดเกี่ยวกับ คอมพิวเตอร
ป 2550

แพ็กเกจยอดนิยมสําหรับใชงานบนระบบ CentOS
สําหรับในแผน CD ของ CentOS มีแพ็กเกจที่สามารถนํามาติดตั้งใชงานไดทันทีจํานวน
มาก โดยสามารถนํามาติดตั้งใชงานไดทันที สําหรับแพ็กเกจที่ไมมีอยูในแผน CD สามารถเขา
ไปดาวนโหลดไดที่เว็บไซต รวมเปน CD 6 แผน
http://mirror.unl.edu/centos/5.2/isos/i386/CentOS-5.2-i386-bin-1of6.iso
http://mirror.unl.edu/centos/5.2/isos/i386/CentOS-5.2-i386-bin-2of6.iso
http://mirror.unl.edu/centos/5.2/isos/i386/CentOS-5.2-i386-bin-3of6.iso
http://mirror.unl.edu/centos/5.2/isos/i386/CentOS-5.2-i386-bin-4of6.iso
http://mirror.unl.edu/centos/5.2/isos/i386/CentOS-5.2-i386-bin-5of6.iso
http://mirror.unl.edu/centos/5.2/isos/i386/CentOS-5.2-i386-bin-6of6.iso
อันนี้ link ที่อยูมันเลย http://mirror.unl.edu/centos/5.2/isos/i386/
Mirror : http://mirror1.ku.ac.th/centos-dvd/
คิดวาคงเพียงพอตอการใชงาน เพื่อที่จะเปนการยกระดับหรือพัฒนาความรู
ความสามารถในวงการ Admin ไทย

ติดตามความเคลือ่ นไหวใหมๆ ไดทนี่ ี่
http://www.linuxthai.org/forum/index.php?topic=197
39.0

เตรียมความพรอมกอนการติดตัง้
การทําระบบ Authentication + LOG นั้นจะตองมีอุปกรณในการทํางาน ดังตอไปนี้
1. SPEC COMPUTER
CPU ขั้นต่ําประมาณ 1.5 GHz
HDD ประมาณ 160 GB
RAM ประมาณ 512 MB
DVD-ROM (เพราะ CentOS 5.5 เปนแบบ DVD)
VGA ONBOARD
(เพราะเราใชเปน TextMode)
อื่น ๆ SOUND USB ไมจําเปนในการติดตั้ง
2. NETWORK
LAN CARD 2 ใบ แนะนําใหเปน CARD ไมแนะนําใหเปน ONBOARD เพราะบางรุน CentOS 5.5 ไม สนับสนุน
ตัวอยางยี่หอที่แนะนําใหใชงาน Real Tek SMC Zyxel 3COM D-Link
3. สายแลน UTP 2 เสน
เสนที่ 1 เพื่อเชื่อมตอ Computer ไปยัง Switch HUB ที่สามารถเชื่อมตอ Internet ได เสนที่ 2 เพื่อเชื่อมตอ Computer ไปยัง
Computer Client ที่จะใชในการ Config
4. OS Linux CentOS 5.5 DVD - I386
5. Computer Client ใชในการ Config คาตาง ๆ และใชในการทดสอบระบบ (แนะนํา ใหเปนNoteBook
เพื่องายตอการเคลื่อนยาย)
6. พื้นฐานในการใชงานระบบปฏิบัติการ DOS และ Network (เบื้องตน)

ใหทําการตั้งคา BIOS Computer เพื่อบูท จาก DVD-ROM 2.5 ทันที พิมพคําวา linux text แลวก็ ENTER เราจะทําการติดตั้งระบบ CentOS 5. ใสแผน CentOS 5.5 1.เริ่มการติดตัง้ (Install) ขั้นตอนตอไปจะเปนการติดตั้ง Linux CentOS 5. เมื่อทําการ Boot จะเขาสูการติดตั้ง CentOS 5.5 I386 DVD (ที่ไดรับในการอบรม) 3.5 แบบ Text MODE ไมใชแบบ Graphic MODE .

ระบบจะทําการประมวลผลการทํางาน และเช็คอุปกรณตาง ๆ ในระบบ ระบบทําการตรวจสอบแผน DVD วาไฟลขอมูลในแผนสมบูรณหรือไม ถาเรามั่นใจใน แผนที่จะใชในการติดตั้ง ใหเลือก Skip (จะขามการตรวจสอบแผน DVD .

ยินดีตอนรับเขาสู CentOS Installation เลือก OK ทําการเลือกภาษาที่ใชในการติดตั้ง เลือก English แลว OK .

เลือกรูปแบบของ Keyboard ที่ใชในการติดตั้งในที่นี้เลือก us แลวเลือก OK ระบบทําการเตือนวา Partition ที่ทําการสรางขึ้นใหมนี้อาจจะลบขอมูลเกาทั้งหมดออกก็ ได คุณมั่นใจในการ กระทําครั้งนี้หรือไม ในที่นใี้ หเลือก Yes แลว Enter .

ระบบจะทําการติดตั้ง Partition ที่จะใชงานในระบบ CentOS คุณตองการที่จะลบขอมูล Partition เกาออกหมดหรือไม ใน ที่นี้เลือก Remove all partition on selected drives and create default layout แลว OK คุณตองการที่จะลบ Partition และขอมูลทั้งหมดเลยหรือไม ในที่นี้เลือก Yes แลว Enter .

ระบบตรวจสอบวาคุณตองการที่จะสรางหรือดูโครงสรางของ Partition ที่ถูกสรางขึ้นมา ใหมหรือไม ในที่นี้เลือก Yes เพื่อที่จะดูรูปแบบโครงสรางของ Partition รูปแบบโครงสรางของ Harddisk ที่ไดทําการสราง Partition เรียบรอยแลว ในที่นใี้ ห TAB มาที่ OK แลว Enter .

ระบบตรวจสอบ Memory เตือนวา RAM ของเรานอยกวาที่ Spec กําหนด (บางเครื่องอาจจะไมแสดงในสวนนี้) ใหเลือก Yes แลว Enter ระบบจะทําการติดตั้ง Boot Loader เราตองการที่จะติดตั้งหรือไม ในที่นใี้ หเลือก Use GRUB Boot Loader แลว TAB มาที่ OK Enter .

ระบบจะใหกําหนดคา Boot Loader Configuration ในสวนนี้ไมตองกําหนดคาใด ๆ ให เลือกที่ OK แลว Enter ระบบใหกําหนดรหัสผานของ GRUB Boot Loader ในที่นไี้ มตองกําหนด ให TAB มาที่ OK แลว Enter .

ระบบจะทําการแจงวา Boot Loader ใหทําการติดตั้งไวที่ Partition สวนใด ในทีน่ ี้ใหเรา TAB มาที่ OK แลว Enter ระบบใหทําการติดตั้ง Boot Loader ไวในสวนของ Sector สวนใด ใหเลือกที่ Master Boot Record (MBR) แลว TAB มาที่ OK และ Enter .

ระบบจะใหทําการ Network Configuration ใหเราเลือกที่ eth0 : UNCONFIGURED คือ การดแลน ที่ใชในการเชื่อมตอ Internet เขาสู Server ให TAB มาที่ Edit และ Enter ระบบจะใหตั้งคา eth0 ในทีน่ ี้ใหเลือก ที่ Activate on boot เพื่อเปดการใชงานเมื่อ Boot และเลือก Enable IPv4 support เพื่อรองรับ Protocal ที่ใชงานคือ TCP/IP หรือ TCP/IPv4 แลว TAB มาที่ OK และ Enter .

255.1.100 ==> IP ที่ไดรับจาก Router หรือ อุปกรณ Internet ตาง ๆ Prefix (Netmask) : 255.ระบบใหกําหนด IP Address ใหกับ eth0 ใหเลือก Manual address configuration พรอม ทั้งใส IP Address และ Prefix (Netmask) ที่ใชในการเชื่อมตอ ตัวอยาง IP Address : 192.255.168.0 ==> แลว TAB มาที่ OK และ Enter ระบบไดทําการ Config eth0 แลว ให TAB มาที่ OK และ Enter .

168.168.1.ระบบใหทําการกําหนดคา GateWay และ DNS ที่ใชในการชี้เพื่อเชื่อมตออินเตอร ตัวอยาง Gateway : 192.1 ==> DNS ที่ไดรับจาก Router เพื่ออางอิงกอนออกเน็ต เมื่อปอนคาเรียบรอยแลวให TAB มาที่ OK และ Enter ระบบใหทําปอน HostName ของระบบที่ใชงาน ในทีน่ ี้จะปอน localhost แลว TAB มาที่ OK และ Enter .1 ==> Gateway ที่ไดรับจาก Router Primary DNS : 192.1.

ระบบใหกําหนด โซน เวลาทีใ่ ชงานของ Server ในทีน่ ี้ใหเลือก Asia/Bangkok แลว TAB มาที่ OK และ Enter ระบบใหทําการปอนรหัสผานของ Root ที่ใชในการ Login ในที่นใี้ หใส rootadmin แลว TAB มาที่ OK และ Enter .

ระบบใหทําการติดตั้ง Package ที่ตองการ ใหทําการเลือกตามรูปภาพ (ขอสําคัญตองอยา ลืมเลือก Customize Software Selection)โดยใช Spacebar ในการเลือก แลว TAB มาที่ OK และ Enter .

ไมตองติดตั้งก็ได เพราะเปนสวน X-Window ชั่วคราว [*] Base [*] DNS Name Server โดยใช Spacebar ในการเลือก แลว TAB มาที่ OK และ Enter [*] DNS Name Server [*] Dialup Networking Support [*] Editor โดยใช Spacebar ในการเลือก แลว TAB มาที่ OK และ Enter .[*] Administration Tools <.

[*] FTP Server เลือก แลว TAB มาที่ OK และ Enter [*] Java [*] Java Development เลือก แลว TAB มาที่ OK และ Enter .

[*] Legacy Network Server เลือก แลว TAB มาที่ OK และ Enter [*] Mail Server [*] MySQL Database [*] Network Servers [*] New Servers เลือก แลว TAB มาที่ OK และ Enter .

[*] Printing Support เลือก แลว TAB มาที่ OK และ Enter [*] Text-based Internet [*] Web Server เลือก แลว TAB มาที่ OK และ Enter .

ไมตองติดตั้งก็ได เพราะเปนสวน X-Window ชั่วคราว [*] Base [*] DNS Name Server [*] Dialup Networking Support [*] Editor [*] FTP Server [*] Graphicel Internet <.เลือกคลิกเครื่องหมาย [*]ในสวนของ [*] Customize software selection ตามขางลางเลย [*] Administration Tools <.ไมตอ งติดตั้งก็ได เพราะเปนสวน X-Window ชั่วคราว [*] Java [*] Java Development [*] Legacy Network Server [*] Mail Server [*] MySQL Database [*] Network Servers [*] New Servers [*] Printing Support [*] Text-based Internet [*] Web Server .ไมตองติดตั้งก็ได เพราะเปนสวน X-Window ชั่วคราว [*] Graphice <.

ทําการเลือกหัวขอตามรูปภาพขางบน โดยใช Spacebar และ Arrow ไปเรื่อย ๆ เมื่อทํา การเลือก Package เพิ่มเติมที่ตอง การ เสร็จแลว ให TAB มาที่ OK และ Enter ระบบจะทําการ Check Packages ที่คุณไดทําการเลือก ระบบจะทําการเริ่มตนการติดตั้ง ขอมูลระบบและ Package ที่คุณไดทําการเลือก ในที่นี้ ใหทําการเลือก OK และ Enter ระบบทําการ Format เพื่อเตรียม Harddisk ที่ใชในการติดตัง้ .

ระบบเริ่มทําการ Copy ไฟลขอมูล กรุณารอซักครู ระบบเริ่มทําการ Copy ไฟลขอมูล กรุณารอซักครู ระบบเริ่มทําการ Copy ไฟลขอมูล กรุณารอซักครู .

.ระบบไดทําการติดตั้งเรียบรอยแลว Enter เพื่อเริ่มการทํางานใหม (Reboot) ระบบกําลังเริ่มทํางานใหมและทําการ Check อุปกรณและขอมูลที่ไดติดตั้งไป.

.ทําการปด firewall กอน เพราะไมตอ งการให firewall ไปมีผลกระทบกับการ config file server ในชวงที่กาลังติด package ตางๆ ใหกับระบบ server (บังคับ.ตองปด) ที่โปรแกรมประเภท terminal ใหใชคาสั่ง setup # setup เลือกหมวด Firewall configuration à Disable ใหหมด กด TAB เลื่อยๆมาจนถึง OK à enter จะกลับมายังหนาแรกเริม่ กด TAB มาจนถึง Quite à enter เพื่อออกจากหมวด setup เลือกหมวด Firewall configuration ==> Disable ใหหมด กด TAB เลื่อยๆมาจนถึง OK ==> enter จะกลับมายังหนาแรกเริม่ กด TAB มาจนถึง Quite ==> enter เพื่อออกจากหมวด setup ..

255..1 KiB) .0.1.0 KiB) TX bytes:8346 (8.168..255.8 KiB) TX bytes:227945 (222.0.0.255.1 Mask:255.0..168.0.0.0.0 b) TX bytes:560 (560.1.0 inet6 addr: fe80::206:29ff:fe89:e59c/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:19 errors:0 dropped:0 overruns:0 frame:0 TX packets:48 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:3120 (3.255.6 KiB) Interrupt:177 Base address:0x4000 lo Link encap:Local Loopback inet addr:127.255 Mask:255.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:8 errors:0 dropped:0 overruns:0 frame:0 TX packets:8 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:560 (560.0.0 b) ใบที่ 2 Eth1 Link encap:Ethernet HWaddr 00:06:29:89:E5:9C inet addr:10.ในตัวอยางนีเ้ ปนการใช Lan Card 2 ใบ โดยที่ ใบที่ 1 เปนเน็ตที่รบั มาจาก ADSL สวนในใบที่ 2 เปนขาออก เอาไวปลอยเน็ต ใหเครื่องลูกๆหลานๆ .1 Bcast:10. ใบที่ 1 Eth0 Link encap:Ethernet HWaddr E0:CB:4E:C3:0C:6D inet addr:192.100 Bcast:192..0 inet6 addr: fe80::e2cb:4eff:fec3:c6d/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:412 errors:0 dropped:917188827 overruns:0 frame:0 TX packets:460 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:35686 (34.255 Mask:255.

1..0 #NETWORK=10.168.168.การ config network card แบบ terminal /etc/sysconfig/network-scripts/ifcfg-eth ตามดวยตัวเลขของการดแลน ตัวอยาง แลนการดใบที่ 1 eth0 ==>ใชเลนเน็ตที่รับมา จาก ADSL Modem # nano /etc/sysconfig/network-scripts/ifcfg-eth0 # Realtek Semiconductor Co.0.1.168.168.255 HWADDR=E0:CB:4E:C3:0C:6D IPADDR=192.1.1 TYPE=Ethernet DNS=192..1 แลนการดใบที่2 eth1 ==> ใชสาหรับออกเน็ตใหเครื่องลูกๆ . Ltd.0.255 HWADDR=00:06:29:89:E5:9C #IPADDR=10.0 ONBOOT=yes GATEWAY=192. # nano /etc/sysconfig/network-scripts/ifcfg-eth1 # Intel Corporation 82557/8/9/0/1 Ethernet Pro 100 DEVICE=eth1 BOOTPROTO=none #BROADCAST=10.0.168.255. RTL8111/8168B PCI Express Gigabit Ethernet controller DEVICE=eth0 HOSTNAME=localhost BOOTPROTO=static BROADCAST=192.0.255.0.255.100 NETMASK=255..255.1.0.1.0 NETWORK=192.0 ONBOOT=yes .1 #NETMASK=255.

1 เปน DNS Server ที่เรารับมาจาก ADSL modem ของเราเอง หรือ ผูใ หบริการ ISP หลักๆนะคับ อยาลืมเรื่องถาน นาฬิกา ใน bios นะคับ ถาไม update วันเวลา ใหตรงปจจุบัน ระบบจะ delete ยูสเซอรนะคับ ล็อกอินไมผานนะคับไมงนั้ เพราะตัวโคด จะจับ ป-เดือน-วัน ใน ปจจุบนั และเช็ค ป-เดือน-วัน ที่ login ครัง้ แรก จาก server อยาลืมลง package ให server update วันเวลาใหตัวมันเองจาก Internet นะครับ .1.168.เกี่ยวกับ ChilliSpot เนื่องจาก chillispot จะเปน dhcp server เอง ดังนั้นจะตองเช็ควาในเครื่องไมมี dhcp server รันอยู ถามีอยูก็หยุดดังนี้ # service dhcpd stop หรือ ไมปดก็ได แต Class ของ IP ที่จะใชกบั ChilliSpot ตองไมเปน Class เดียวกัน กับ DHCP Server แต Class ของ DHCP จะไมติด Authen แคนั้น # nano /etc/sysconfig/network-scripts/ifcfg-eth1 # Intel Corporation 82557/8/9/0/1 Ethernet Pro 100 DEVICE=eth1 HWADDR=00:06:29:89:E5:9C ONBOOT=yes BOOTPROTO=none แตในชวงแรกเราก็ให server ทางานในหมวด dhcp ไปกอน พอไดใหเครื่องลูกขายไดออกเน็ตเลน ชักเล็กๆนอยๆ ออนเอ็มเลน ประมาณนั้น! ถึงขั้นตอน chillispot คอยปด dhcp และปดแลนการดใบที2่ ทีใ่ ชแจกเน็ตใหเครื่องลูกขาย # cat /etc/resolv.conf search localhost nameserver 192.

เริ่มตนการติดตัง้ package .

18-92.0) kernel /vmlinuz-2.img *รายการที่ทําการ list ออกมาที่ผมนํามาแสดงดวยก็เพื่อในอนาคตไฟล download . This means that # all kernel and initrd paths are relative to /boot/.el5 ro root=/dev/VolGroup01/LogVol00 rhgb quiet initrd /initrd-2.img #boot=/dev/hda default=0 timeout=1 #splashimage=(hd0.18-92.gz #hiddenmenu title CentOS 5.conf # grub.0) # kernel /vmlinuz-version ro root=/dev/VolGroup01/LogVol00 # initrd /initrd-version.xpm.SSH Server ที่ server ทาการเปด port ssh ที่ port 22 กอน เพื่อทีจ่ ะทาการ remote จากเครื่องลูกเขามา # nano /etc/ssh/ssh_config แก # Port 22 # Protocol 2.6.el5.d/sshd start Starting sshd: [ OK ] ขั้นตอนนี้ไมตองทําตามก็ไดครับ มันเปนเพียงแคการปรับแตงหนา บูต Grub เฉยๆ เพื่อให บูต ไดเร็วขึ้นเฉยๆ # nano /boot/grub/grub.6. eg. # root (hd0.el5) root (hd0.6.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition.1 เปน Port 22 Protocol 2.2 Server (2.18-92.0)/grub/splash.1 # chkconfig sshd on เปนการตัง้ คาให sshd สตารตเซอรวิส (start auto) ตอน boot เครื่องทุกครัง้ # /etc/init.

เหลานี้อาจจะไมมีอยูใน server ของผูใหบริการ เพื่อใหเราไดทราบวา package นี้ตองการ package อะไรเพิ่มเขาในการติดตัง้ เราจะไดนํา package เหลานี้ download จากแหลง download ที่อื่น เขามาเสริมเพื่อติดตั้งแทน การ Download Package ที่ตองใชบอย ถาโหลดมาเก็บไวบนเครื่องของเราจะดีที่สุด แลวคอย Upload ไฟล จากเครื่องของเรา ขึ้นไปบน Server ดังตัวอยาง ทําการ FTP หรือ SSH จากคอมของเราที่เก็บไฟล ลงไปไวใน server .

Package นี้สําคัญมากกับระบบ Server เพราะตอง update (ป-เดือน-วัน) ใหตรงกับปจุบัน
# yum -y install ntp
Dependencies Resolved
Package Arch Version Repository Size
Updating:
ntp i386 4.2.2p1-9.el5.centos.2.1 base 1.3 M
Transaction Summary
Install 0 Package(s)
Update 1 Package(s)
Remove 0 Package(s)
Total download size: 1.3 M
Is this ok [y/N]: y
Downloading Packages:
(1/1): ntp-4.2.2p1-9.el5. 100% |=========================| 1.3 MB 00:02
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : ntp ######################### [1/2]
Cleanup : ntp ######################### [2/2]
Updated: ntp.i386 0:4.2.2p1-9.el5.centos.2.1
Complete!
# nano /etc/rc.local
/usr/sbin/ntpdate -u pool.ntp.org
# /usr/sbin/ntpdate -u pool.ntp.org
30 Sep 05:02:55 ntpdate[3778]: adjust time server 158.108.212.149 offset 0.017045 sec

ทําการสราง สคริป ไฟลให Update (ป-เดือน-วัน) ทุกๆ 10 นาที
ทดสอบดูวา มี package ชื่อ crontab หรือไม พรอมแสดง version ออกมา
# rpm -aq | grep cron
crontabs-1.10-8
anacron-2.3-45.el5.centos
vixie-cron-4.1-72.el5
# nano /etc/crontab
เพิ่มเขาไปทายไฟลเลยคับ
*/10 * * * * /usr/sbin/ntpdate -u pool.ntp.org

และใสตรง crontab run-time เพิ่มเขาไปอีก
# crontab -e

เพิ่มเขาไปในไฟลเลยครับ
*/10 * * * * /usr/sbin/ntpdate -u pool.ntp.org

ในสวนนี้จะอธิบาย พรอมการใชงานและน าขอมูลเขาไป ตัวนี้จะเปน Editor ของ vi

กด ปุม Insert หรือ ตัว I เพื่อใสคําสั่งลงไป

ใสโคดคําสั่งลงไป หรือ copy มาวางใสก็ได แลวแตวาใครขยันพิมพ
จากนัน้ กดปุม Esc บนแปนคียบอรด เพื่อพิมพคําสั่งบันทึกไฟล
กดปุม Shift ปุม : ปุม w ปุม q ปุม !
==> อันนี้เหมาะกับมือใหม เลยตองละเอียด
หรืองายๆ ก็พิมพตามนี้เลย :wq! ==> อันนี้เหมาะกับมือเกา

กดปุม Enter เปนอันเรียบรอย!

*หมายเหตุ ทีต่ องใส crontab ทั้งสองก็เพราะ 1 สํารอง และ 1 ทํางาน run-time
# nano /etc/crontab
==> สํารอง
# crontab -e ==> Run-time
ทําการ restart service เพื่อ reload คา เขาไปใหม
# /etc/rc.d/init.d/crond restart
Stopping crond: [ OK ]
Starting crond: [ OK ]
# /sbin/chkconfig crond on

el5.9.el5.3-43. using 127.3-43.el5_4.6 base 1.6 M Is this ok [y/N]: y Downloading Packages: (1/5): mod_ssl-2.8e-12.3 updates 814 k mod_perl i386 2.0 M mod_ssl i386 1:2.2.4 M Transaction Summary Install 0 Package(s) Update 5 Package(s) Remove 0 Package(s) Total download size: 7. 100% |=========================| 1.3 httpd-manual.1 for ServerName [ OK ] # /sbin/chkconfig httpd on .3-43.2.4 MB 00:02 (3/5): httpd-2.3-43.d/init.6 Complete! # /etc/rc.3-43.3 100% |=========================| 814 kB 00:02 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Updating : openssl ####################### [ 1/10] Updating : httpd ####################### [ 2/10] Updating : mod_perl ####################### [ 3/10] Updating : httpd-manual ####################### [ 4/10] Updating : mod_ssl ####################### [ 5/10] Cleanup : httpd-manual ####################### [ 6/10] Cleanup : mod_perl ####################### [ 7/10] Cleanup : httpd ####################### [ 8/10] Cleanup : openssl ####################### [ 9/10] Cleanup : mod_ssl ####################### [10/10] Updated: httpd.centos.3 updates 1.8e-12.el5_4.d/httpd start Starting httpd: httpd: Could not reliably determine the server's fully qualified domain name.0.el5.4-6.i386 0:2.centos.2.el5.3 updates 91 k openssl i686 0.el5 mod_ssl.3-43.2.0.2.2 MB 00:02 (4/5): mod_perl-2.el5 100% |=========================| 1.0.e 100% |=========================| 91 kB 00:00 (2/5): openssl-0.i386 0:2.el5.0.el5.3-43.8e-12.d/httpd restart OR # /etc/init.Installing Apache2 # yum -y install httpd httpd-manual mod_ssl mod_perl Dependencies Resolved Package Arch Version Repository Size Updating: httpd i386 2.9.centos.9.i386 1:2.2.2 M httpd-manual i386 2.centos.centos.el5 base 4.3-43.3 openssl.e 100% |=========================| 4.i686 0:0.i386 0:2.0 MB 00:07 (5/5): httpd-manual-2.2.centos.0.4-6.2.2.3 mod_perl.4-6.

1.168.1. http https .100/ https://ip-server/ ==> https://192.100/ Apache's default document root is /var/www/html And the configuration file is /etc/httpd/conf/httpd.conf Additional configurations are stored in the /etc/httpd/conf.Open web browser ทดสอบ 2 แบบ -> http และ https http://ip-server/ ==> http://192.d/ directory.168.

cgi # nano +231 /etc/httpd/conf/httpd.conf User apache Group apache สวนนี้เปนการกําหนดสิทธิ์ของกลุม apache และผูใ ชงานเปนของ apache สวนใหญกจ็ ะ default อยูแลว คือ ไมตองมี เครื่องหมาย # อยูดานหนา .allow Deny from all </LimitExcept> </Directory> # nano +778 /etc/httpd/conf/httpd.conf แก UserDir disable # UserDir public_html เปน #UserDir disable UserDir public_html # nano +370 /etc/httpd/conf/httpd.conf แก #AddHandler cgi-script .cgi เปน AddHandler cgi-script .conf แก เอาเครื่องหมาย # ออกใหหมด เปน <Directory /home/*/public_html> AllowOverride FileInfo AuthConfig Limit Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec <Limit GET POST OPTIONS> Order allow.# nano +355 /etc/httpd/conf/httpd.deny Allow from all </Limit> <LimitExcept GET POST OPTIONS> Order deny.

com:80 เปน # ServerName www.100 .html index.conf แก DirectoryIndex index.html.php # /etc/rc.d/httpd restart Stopping httpd: [ OK ] Starting httpd: [ OK ] ทดลองทําหนาโฮมเพจ index.jpg index.rockyou.var index.example.jpg # nano index.1.var เปน DirectoryIndex index.htm index.168.d/init.html <html> <head><title>My test hompage html</title></head> <body bgcolor="FFDEAD"> <center> <b>My test hompage html</b><br><br> <img src="index.html # cd /var/www/html/ #wget http://img376.# nano +265 /etc/httpd/conf/httpd.example.conf แก # ServerName www.jpg # mv 15522555_1fded04d1243655781.html.com/imagehost/15/15522/15522555/15522555_1fded04d1243655781.jpg"/> </body> </html> Open web browser http://ip-server/ ==> http://192.com:80 ServerName localhost:80 # nano +391 /etc/httpd/conf/httpd.html index.

ผลลัพธ ดังรูป .

d/mysqld start http://www. or \g.0.0.77-4.mysql.7 100% |=========================| 9. mysql> show databases.77-4.el5_5. Commands end with .com Support MySQL by buying support/licenses at http://shop.' or '\h' for help.0 100% |=========================| 148 kB 00:00 (2/3): mysql-server-5.3 Dependency Installed: perl-DBD-MySQL. mysql> exit Bye .0.0.el5 Updated: mysql.el5_5.3 updates 4.0007-2.i386 0:5.77-4.77 Source distribution Type 'help.el5_5.8 M Updating: mysql i386 5. Type '\c' to clear the buffer.d/init.el5_5.0.3 Complete! # /etc/rc.Installing MySQL 5.3 updates 9.8 M Installing for dependencies: perl-DBD-MySQL i386 3.8 MB 00:17 (3/3): mysql-5.0007-2.0. Your MySQL connection id is 3 Server version: 5.i386 0:3.8 MB 00:08 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Updating : mysql ######################### [1/4] Installing: perl-DBD-MySQL ######################### [2/4] Installing: mysql-server ######################### [3/4] Cleanup : mysql ######################### [4/4] Installed: mysql-server.com [ OK ] Starting MySQL: [ OK ] # /sbin/chkconfig mysqld on # mysqladmin -u root password rootadmin (กําหนดรหัสผานใหกับ MySQL เปน rootadmin ) OR # mysqladmin -h localhost -u root password rootadmin # /usr/bin/mysql -u root –prootadmin Welcome to the MySQL monitor.77-4.i386 0:5.77-4.el5 base 148 k Transaction Summary Install 2 Package(s) Update 1 Package(s) Remove 0 Package(s) Total download size: 15 M Is this ok [y/N]: y Downloading Packages: (1/3): perl-DBD-MySQL-3.0.el5 100% |=========================| 4.0 # yum -y install mysql mysql-server Dependencies Resolved Package Arch Version Repository Size Installing: mysql-server i386 5.mysql.

0.el5.1 Updated: php.6-2 100% |=========================| 476 kB 00:27 (15/21): php-cli-5.3 MB 01:26 (10/21): libmcrypt-2.i386 0:1.el5 php-cli.1.59-12 automake.6-27 100% |=========================| 65 kB 00:04 (21/21): autoconf-2.2.11-7.el5 unixODBC.6-27.100% |=========================| 116 kB 00:00 (11/21): php-devel-5.59-12 100% |=========================| 647 kB 00:29 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Updating : php-common #######################[1/25] Installing: php-pdo ###################### [2/25] Updating : php-cli ####################### [ 3/25] Updating : php ####################### [ 4/25] Installing: libc-client ####################### [ 5/25] Installing: unixODBC ####################### [ 6/25] Installing: libmcrypt ####################### [ 7/25] Installing: imake ####################### [ 8/25] Installing: autoconf ####################### [ 9/25] Installing: automake ####################### [10/25] Installing: php-devel ####################### [11/25] Installing: php-mcrypt ####################### [12/25] Installing: php-odbc ####################### [13/25] Installing: php-imap ####################### [14/25] Installing: php-mbstring ####################### [15/25] Installing: php-gd ####################### [16/25] Installing: php-xml ####################### [17/25] Updating : php-ldap ####################### [18/25] Installing: php-xmlrpc ####################### [19/25] Installing: php-mysql ####################### [20/25] Installing: php-pear ####################### [21/25] Cleanup : php-common ####################### [22/25] Cleanup : php-cli ####################### [23/25] Cleanup : php ####################### [24/25] Cleanup : php-ldap ####################### [25/25] Installed: php-gd.noarch 0:2.1.1.1.el5 php-xmlrpc.i386 0:5.6-27.el5 php-common.7 M Is this ok [y/N]: y Downloading Packages: (1/21): php-pear-1.6-27.6-27.el5 Complete! .1.i386 0:5.6-27.6-2 100% |=========================| 53 kB 00:06 (17/21): php-mcrypt-5.6-27.4.i386 0:5.centos php-devel.e 100% |=========================| 117 kB 00:09 (9/21): php-5.2-3.centos.1 php-mysql.1.6-27.1.100% |=========================| 503 kB 00:53 (12/21): php-mbstring-5.el5 imake.11-7 100% |=========================| 832 kB 00:43 (8/21): php-gd-5.1.8-4.el5 php-pear.6.el5 Dependency Installed: autoconf.i386 0:5.6-27 100% |=========================| 37 kB 00:04 (5/21): php-xml-5.9.1.el5 php-mcrypt.el5 php-imap.6-27.noarch 1:1.i386 0:2004g-2.9-6.i386 0:2.6-2 100% |=========================| 86 kB 00:07 (3/21): php-xmlrpc-5.1.i386 0:5.1.2-3 libcclient.6-27.el5 php-ldap.i386 0:5.9-6.i386 0:5.6-27.1.1.el5 php-pdo.6-2 100% |=========================| 54 kB 00:06 (14/21): automake-1.**Installing PHP5 And Getting MySQL Support In PHP5 All Extended # yum -y install php php-mysql php-gd php-imap php-ldap php-mcrypt php-mbstring php-odbc php-pear php-xml php-xmlrpc Total download size: 9.6-15.1.i386 0:5.i386 0:5. 100% |=========================| 96 kB 00:07 (6/21): libc-client-2004g 100% |=========================| 516 kB 00:28 (7/21): unixODBC-2.6-27.6-27 100% |=========================| 2.1.4.6-27.i386 0:5. 100% |=========================| 2.el5 php-odbc.6-27.1.1.6-2.1.i386 0:5.3.1.i386 0:5.9.1 100% |=========================| 995 kB 01:07 (13/21): php-imap-5.1.1.el5 php-xml.6-27.i386 0:5.6.2.i386 0:5.el5 php-mbstring.0.6 100% |=========================| 16 kB 00:00 (18/21): imake-1.1 MB 02:26 (16/21): php-odbc-5.i386 0:2.el5.6 100% |=========================| 152 kB 00:07 (20/21): php-pdo-5.noarch 0:1.8. 100% |=========================| 344 kB 00:29 (2/21): php-mysql-5.5.el5.1.1 libmcrypt.1.5.1.100% |=========================| 57 kB 00:06 (4/21): php-ldap-5.6-27.6-27.1.1.2.1.i3 100% |=========================| 319 kB 00:21 (19/21): php-common-5.

php ==> http://192.php .d/init.php เพิ่มคําสั่งนี้ <? phpinfo().d/httpd restart # nano /var/www/html/phpinfo. ?> Open web browser http://ip-server/phpinfo.168.# /etc/rc.1.100/phpinfo.

sh .6-linux-glibc21-i386.6-linux-glibc21-i386 # chmod +x install./install.mediafire.tar.2.gz # tar -zxvf ZendOptimizer-3.2.6-linux-glibc21-i386.gz # cd ZendOptimizer-3.ตัวเสริมการ compile ให PHP เขารหัส compile ไดเร็วขึ้น *ตัวเสริมนี้มีประโยชนหลายอยาง รวมถึงการถอดรหัส # mkdir /tmp/temp # cd /tmp/temp/ # wget http://download916.tar.com/av0r0auls8zg/2l5577ow3p1hq7q/ZendOptimizer -3.sh # .2.

ภาพขางลางนี้ แกจาก /usr/local/Zend/ แกเปน ---.> /usr/local/lib/Zend/ .

.

Open web browser
http://ip-server/phpinfo.php ==> http://192.168.1.100/phpinfo.php

สวนที่ถูกเพิ่มเขาไปอัตโนมัติตอนติดตั้งในทายไฟลของ /etc/php.ini [Zend]
zend_extension_manager.optimizer=/usr/local/lib/Zend/lib/Optimizer-3.2.6
zend_extension_manager.optimizer_ts=/usr/local/lib/Zend/lib/Optimizer_TS-3.2.6 zend_optimizer.version=3.2.6
zend_extension=/usr/local/lib/Zend/lib/ZendExtensionManager.so
zend_extension_ts=/usr/local/lib/Zend/lib/ZendExtensionManager_TS.so

phpMyAdmin
# cd /tmp/temp/

# wget http://download1082.mediafire.com/dolv36ud144g/ws20473ro89bmvd/phpMyAdmin-2.11.11-all-languages.tar.gz
# tar -zxvf phpMyAdmin-2.11.11-all-languages.tar.gz
# mv phpMyAdmin-2.11.11-all-languages /var/www/html/phpmyadmin/
# cp /var/www/html/phpmyadmin/config.sample.inc.php /var/www/html/phpmyadmin/config.inc.php
# nano +17 /var/www/html/phpmyadmin/config.inc.php
แก
$cfg['blowfish_secret'] = ''; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
….
$cfg['Servers'][$i]['auth_type'] = 'cookie';
….
// $cfg['Servers'][$i]['controluser'] = 'pma';
// $cfg['Servers'][$i]['controlpass'] = 'pmapass';
….
// $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin';

เปน พรอมกับเอาเครื่องหมาย // คั่นหนาออก
$cfg['blowfish_secret'] = 'cookie'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
….
$cfg['Servers'][$i]['auth_type'] = 'http';
….
$cfg['Servers'][$i]['controluser'] = 'root';
$cfg['Servers'][$i]['controlpass'] = 'rootadmin';
….
$cfg['Servers'][$i]['pmadb'] = ' ';

User = root
Password = ที่ตั้งไวตอนติดตั้ง mysql

Open web browser
http://ip-server/phpmyadmin/ ==> http://192.168.1.100/phpmyadmin/

User = root
Password = ที่ตั้งไวตอนติดตั้ง mysql

php Open web browser http://ip-server/phpsysinfo/ ==> http://192.168.mediafire.5.4.new /var/www/html/phpsysinfo/config.4.gz # tar -zxvf phpsysinfo-2.tar.5.1.tar.gz # mv phpsysinfo /var/www/html/ # cp /var/www/html/phpsysinfo/config.100/phpsysinfo/ .tar.4.phpsysinfo-2.gz # cd /tmp/temp/ # wget http://download505.5.com/md19toevco4g/3jqwzvbtq2c63fj/phpsysinfo-2.php.

forward port rounter package ทําการ forward port ใหมีผลทันที เพื่อให forward packet ทาตัวเปนเราเตอรได # nano +7 /etc/sysctl.conf แก net.ipv4.ip_forward = 0 เปน net.ip_forward = 1 รันคําสัง่ # echo "1" > /proc/sys/net/ipv4/ip_forward เพื่อใหมีผลทันที ให forward packet ทาตัวเปนเราเตอรได .ipv4.

php?topic=19739.tis-620" … upload_max_filesize = 100M # /etc/rc. .ini แก memory_limit = 8M … register_globals = Off … register_long_arrays = Off … register_argc_argv = Off … post_max_size = 8M … .d/init.default_charset = "iso-8859-1" … upload_max_filesize = 8M เปน memory_limit = 128M … register_globals = On … register_long_arrays = On … register_argc_argv = On … post_max_size = 32M … default_charset = "utf-8.ทดสอบ Authentication 1.linuxthai.tar หรือไปที่แหลง download โดยตรงเลยก็ไดครับ เผื่อมีการอัตเตด จะไดรูแหลง http://www.0 วาสามารถทํางานรวมกับ MySQL และสวนขยายของ php-extension ไดอยางสมบูรณหรือไม # cd /tmp/temp/ # wget http://download401.com/a827ff24e4fg/e8xcfmcnck0k8rg/phpwifi..tar # mv phpwifi /var/www/html/ # chmod -R 755 /var/www/html/* # chmod -R 777 /var/www/html/phpwifi/admin/upload/ # chmod -R 777 /var/www/html/phpwifi/admin/ThaiPDF/ # chown -R root:apache /var/www/html/* # nano /etc/php.mediafire.> ใชคําสั่งนี้เพื่ออานคาทีร่ ับเพิ่มเขาไป.0 # tar -xvf phpwifi.org/forum/index.d/httpd reload ---.

php จากนั้นเลื่อนลงมาจนถึงหัวขอ Configuration (http://192.ทําการตรวจสอบไฟลที่เราไดท าการ config ใหกับ php.168.100/phpinfo.ini ที่ web browser ไปที่ http://<IP-SERVER>/phpinfo.1.php ) เราก็จะไดเห็นสวนทีเ่ ราไดทําการปรับแตงไป .

100/phpmyadmin ) .1.ทําการสราง ฐานขอมูลชื่อ portsproDB ในตัวอยางขออธิบายแบบใชงานงาย ใน phpmyadmin ไปที่ http://IP-SERVER/phpmyadmin (http://192.168.

สรางฐานขอมูลชือ่ portsproDB คลิกปุม สรางจะไดดังรูป .

.ทําการ Import table ที่ backup ไวมาใส คลิกที่ ปุม Brownse. (ไฟลเก็บไวที่ไหน ก็นํามาใสตามรูปภาพเลยนะคับ) .

จากนั้นกด ปุม ลงมือ (ดานลางขวามือ) ก็จะได table 14 table เขามา .

00 sec) mysql > FLUSH PRIVILEGES.sql . 0 rows affected (0. 1 row affected (0.00 sec) mysql > GRANT ALL PRIVILEGES ON portsproDB.เพิ่มเติม ถาสรางฐานขอมูลเปนแบบ command Line # mysql -u root -prootadmin mysql > create database portsproDB.* to 'root'@'localhost' IDENTIFIED BY 'rootadmin'. Query OK. Query OK.00 sec) mysql > show databases. Query OK. +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | portsproDB | | test | +--------------------+ 4 rows in set (0. 0 rows affected (0.00 sec) mysql > exit ใส database schema (หรือใส table ใหฐานขอมูล) ดวยคําสั่ง # mysql -uroot -prootadmin portsproDB < /var/www/html/phpwifi/admin/backupsql/portsproDB.

จากนั้นไปทดสอบ login ในหมวด Administrator ดู ทําการแกไขไฟล Config ของ phpwifi กอน เพื่อใหใชงานรวมกับฐานขอมูล MySQL ได # nano /var/www/html/phpwifi/admin/include/config.php แกไขตามนีเ้ ลยคับ <?php # configuration for database $_config['database']['hostname'] = "localhost". $_config['database']['username'] = "root". # connect the database server $link = new mysqldb(). $link->query("SET NAMES 'utf8'"). $link->connect($_config['database']). $_config['database']['database'] = "portsproDB".inc. ?> # User MySQL # Passwd MySQL # Database Authen . $_config['database']['password'] = "rootadmin". $link->selectdb($_config['database']['database']). @session_start().

100/phpwifi/admin/) คา Defalut User = admin Passwd = padmin .จากนั้นไปทดสอบ login ในหมวด Administrator ดู http://IP-SERVER/phpwifi/admin/ ---.> (http://192.168.1.

..ตายแลว .. ทําการทดสอบ add users เขาไปสัก 1 user ตัวอยางจะเปน รายชัวโมง กดปุม เพิ่ม ..*หมายเหตุ ในเรือ่ งของการ Add Group หรือ Users หามใชภาษาไทยเด็ดขาด เพราะระบบจะไมรจู กั ภาษาไทย เหมือน Windows .ไมมตี าราง Ascii ภาษาไทยในระบบนะครับ อันนี้ผมขอยกตัวอยาง เพื่อไมใหเกิดการผิดพลาดขึน้ เมื่อทดสอบระบบ ขอความนี้อางจากกระทู ใน บอรด PHPwifi นะครับ โอว ...... วา หามใชภาษาไทย กับระบบ PHPwifi เพราะโคดมันเปนสากลครับ เวนแตจะ // คอมเมน แทน ถึงเปนภาษาไทยระบบ จะมองเห็นเปน Comment แยเลย ...เพราะผมเขียนโปรแกรมก็ไมเคยใชภาษาไทยสักกะที นอกจากจะเปน comment ถาเขียนโปรแกรมบน windows กับพวกงายๆ ที่ลาก เมาท เปน ฟอรม ดับเบิ้ลคลิก ก็มี โคด โปรโมชัน่ library ระบบ list ออกมาให อันนีไ้ ทยไดคบั เปลียนชื่อเปนภาษา อังกฤษ นะคับ ทุกอยางคับ เพราะ server สวนใหญจะเปนโคดสากลคับ ใหเห็นอยางชัดเจนนะคับ คุณลองไปเชา domain name และเขียนเว็บผาน Dream หรืออื่นๆที่งา ยๆนะคับ แลวเขียนชื่อไฟล รูปภาพเปนภาษาไทย ถาทดสอบรันบน windows ของเรามันก็จะรูจ กั ภาษาไทยอยูแ ลว เราก็จะเห็นรูปภาพกอนสงงานให server เพราะ windows มันมี Ascii ภาษาไทยในระบบอยูแลวคับ I394 แตถาอัพโหลดขึน้ ไปบน server ที่เราเชา รับรอง เห็นเปนตัว X แนนอน ครับ คนทีไ่ มรู ..คือคนทีไ่ มผดิ .เพียงแคตอ งเรียนรูเ พิม่ ....ผมก็ลืมบอกไปในคูม ือ .

ini ตรง register_globals = On สื่อสารกันถูกตองคับ) .ยื่นยันอีกครัง้ กดปุม บันทึก ผลลัพธ (แสดงวา MySQL และ /etc/php.

.

เพิ่มเติมเล็กๆนอยๆ กับสวนของ หมวดผูดูแลในฐานะ Admin ในหนา Login กรณีทใี่ ส Username .Password ถูกตองแลว แตระบบไมไปหนาตอไป .

php *ถาไมใช Admin ระบบก็จะ Redirect มาใหใส Username และ Password เพื่อกันบุคคลอืน่ เขามาโดยตรง .(อันนี้เนื่องจาก Admin เคยเขาไป Login แลว แตไมทาํ การ LogOut ออก จากระบบ มันจึงทําใหระบบ หรือ Session ยังจําคา การใชงานอยู) ทั้งๆที่บน URL ของคุณก็แสดงบอกสถานะ Username และ Password อยางถูกตอง สวนวิธีแกก็ไปพิมพ URL โดยตรง ถาคุณเปน Administrator พิมพ <IP-Server>/phpwifi/admin/index2.

MySQL + FreeRadius .

22-7.1.digipower.6.6.2-9.1 set to be updated --> Finished Dependency Resolution Dependencies Resolved Package Arch Version Repository Size Installing: freeradius i386 1.vn * extras: mirrors.i386 0:1.1.i386 0:1.3-1.3 for package: freeradius --> Running transaction check ---> Package libtool-ltdl.el5_5.so.2.i386 0:1.2.vn * updates: mirrors.digipower.5.com * base: mirrors.5.1 updates 186 k Transaction Summary Install 3 Package(s) Upgrade 0 Package(s) Total download size: 1.2-9.4 M Is this ok [y/N]: y Installed: freeradius.el5 base 1.3.digipower.vn Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package freeradius.3-1.1 M Installing for dependencies: libtool-ltdl i386 1.el5 set to be updated --> Processing Dependency: net-snmp-utils for package: freeradius --> Processing Dependency: libltdl.i386 1:5.# yum -y install freeradius Loaded plugins: fastestmirror Loading mirror speeds from cached hostfile * addons: mirrors.3.el5_5.el5_4 set to be updated ---> Package net-snmp-utils.22-7.el5_4 base 37 k net-snmp-utils i386 1:5.6.163.1.3-1.el5 Complete! .

d/radiusd start OR # /usr/sbin/radiusd start & Starting RADIUS server: Wed Sep 29 10:38:02 2010 : Info: Starting .0.conf แก user = radiusd group = radiusd ( +109 หมายถึง ใหไปที่บรรทัด 109 ของไฟลเลย ) เปน #user = radiusd #group = radiusd # nano +35 /etc/raddb/clients.1 { # # The shared secret use to "encrypt" and "sign" packets between # the NAS and FreeRADIUS.conf เพื่อให FreeRadius สามารถอานแฟม /etc/shadow ที่ใชเปน User-Name.1 0 testing123 หรืออธิบายงายๆก็คือ Username และ Password ที่ใช Login เขา Server ของเรานั้นเอง ตัวอยาง # radtest root rootadmin localhost 0 testing123 **** ถาขึ้น Access-Accept แสดงวาสามารถทางานได **** Sending Access-Request of id 169 to 127.1:1812.0. up to 31 characters in length.0. Pass-Word.255.0.0.0.0.conf client 127. # แก secret = testing123 เปน secret = testing123 # /etc/rc.0. id=169. You MUST change this secret from the # default. otherwise it's not a secret any more! # # The secret can be any string.แกไขแฟม /etc/raddb/radiusd.255 NAS-Port = 0 rad_recv: Access-Accept packet from host 127.1 port 1812 User-Name = "root" User-Password = "rootadmin" NAS-IP-Address = 255.255. Group ของ Server เครื่องเราได # nano +109 /etc/raddb/radiusd. length=20 . [ OK ] [1]+ Done /usr/sbin/radiusd start # chkconfig radiusd on ทดสอบวา freeradius สามารถทางานไดหรือไม รูปแบบ # radtest ชื่อของยูสเซอรServer พาสเวิดรของยูสเซอรServer 127..d/init..reading configuration files .

i386 0:1.6.1.1.3-1.6.el5 base 16 k Transaction Summary Install 1 Package(s) Upgrade 0 Package(s) Total download size: 16 k Is this ok [y/N]: y Downloading Packages: freeradius-mysql-1.el5.i386.3-1.1.conf แก server = "localhost" login = "root" password = "rootpass" # Database table configuration radius_db = "radius" เปน server = "localhost" login = "root" ==> Username ของ MySQL password = "rootadmin" ==> Password ของ MySQL # Database table configuration radius_db = "portsproDB" .el5 Complete! # nano +21 /etc/raddb/sql.3-1.rpm | 16 kB 00:00 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Installing : freeradius-mysql 1/1 Installed: freeradius-mysql.6.ให FreeRadius สามารถติดตอสือสารกับฐานขอมูล MySQL Server ได # yum -y install freeradius-mysql Dependencies Resolved Package Arch Version Repository Size Installing: freeradius-mysql i386 1.

# nano +44 /etc/raddb/sql.conf เปน $INCLUDE ${confdir}/sql.conf แก # sql เปน (เปนการอนุญาตให mirror sql.conf แก # $INCLUDE ${confdir}/sql.conf ใชรวมกับ web application ที่มี databases เปนของตัวเองได) sql # nano +2001 /etc/raddb/radiusd.conf แก # files เปน (ถาไมใส # จะเปนการใช Username และ Passwd จากระบบ Server เอง เพิ่ม Username . pass ใน บัญชี Server) files # nano +1844 /etc/raddb/radiusd.conf แก # sql เปน sql .conf # nano +1837 /etc/raddb/radiusd.conf usergroup_table = "usergroup" กลับมาที่ radius เพื่อ fix คา อีกครั้ง # nano +1248 /etc/raddb/radiusd.

..conf แก # sql เปน Sql # nano +1447 /etc/raddb/radiusd......d/radiusd stop Stopping RADIUS server: [ OK ] # chmod -R 755 /etc/raddb/* # chown -R root:apache /etc/raddb/* sqlcounter dailycounter { .d/init.conf เพิ่ม sqlcounter noresetcounter{ counter-name = Max-All-Session-Time check-name = Max-All-Session sqlmod-inst = sql key = User-Name reset = never query= "SELECT SUM(AcctSessionTime) FROM radacct WHERE UserName='%{%k}'" } นําคําสั่งขางบน ไปไวดานบนของคําสั่งนี้ # nano +1781 /etc/raddb/radiusd..# nano +2023 /etc/raddb/radiusd....conf เพิ่ม noresetcounter dailycounter monthlycounter # ตอจากบรรทัด authorize { ตัวอยาง authorize { # Add insert function Login PopUp noresetcounter dailycounter monthlycounter # # /etc/rc.... } ...

Did you mean output=none? Module: Instantiated exec (exec) Module: Loaded expr Module: Instantiated expr (expr) Module: Loaded PAP Module: Instantiated pap (pap) Module: Loaded CHAP Module: Instantiated chap (chap) Module: Loaded MS-CHAP Module: Instantiated mschap (mschap) Module: Loaded System Module: Instantiated unix (unix) Module: Loaded eap rlm_eap: Loaded and initialized type md5 rlm_eap: Loaded and initialized type leap rlm_eap: Loaded and initialized type gtc rlm_eap: Loaded and initialized type mschapv2 Module: Instantiated eap (eap) Module: Loaded SQL Counter Module: Instantiated sqlcounter (noresetcounter) Module: Instantiated sqlcounter (dailycounter) Module: Instantiated sqlcounter (monthlycounter) Module: Loaded preprocess Module: Instantiated preprocess (preprocess) Module: Loaded realm Module: Instantiated realm (suffix) Module: Loaded files Module: Instantiated files (files) Module: Loaded SQL rlm_sql (sql): Driver rlm_sql_mysql (module rlm_sql_mysql) loaded and linked rlm_sql (sql): Attempting to connect to root@localhost:/portspro_db rlm_sql (sql): starting 0 rlm_sql (sql): Attempting to connect rlm_sql_mysql #0 rlm_sql_mysql: Starting connect to MySQL server for #0 rlm_sql (sql): Connected new DB handle.ขั้นตอนทดสอบตอไปหามมี Error! เด็ดขาด ถามีกไ็ มตองทําขัน้ ตอนตอไป กลับไปแกไขในสวนนี้ใหผานกอนคับ ถาไมผานระบบ Authen ก็ไมมีความหมาย ! # /usr/sbin/radiusd -x Starting . Support for this will go away soon.. #2 rlm_sql (sql): starting 3 rlm_sql (sql): Attempting to connect rlm_sql_mysql #3 rlm_sql_mysql: Starting connect to MySQL server for #3 rlm_sql (sql): Connected new DB handle.reading configuration files . Using deprecated naslist file. #0 rlm_sql (sql): starting 1 rlm_sql (sql): Attempting to connect rlm_sql_mysql #1 rlm_sql_mysql: Starting connect to MySQL server for #1 rlm_sql (sql): Connected new DB handle. #4 Module: Instantiated sql (sql) Module: Loaded Acct-Unique-Session-Id Module: Instantiated acct_unique (acct_unique) Module: Loaded detail Module: Instantiated detail (detail) Module: Loaded radutmp Module: Instantiated radutmp (radutmp) Initializing the thread pool.. Module: Loaded exec rlm_exec: Wait=yes but no output defined. Listening on authentication *:1812 Listening on accounting *:1813 Ready to process requests.. ในขั้นตอนนี้เปนการตรวจสอบ Free Radiusd กับ MySQL วาสามารถใชงานรวมกันได [ กด Ctr + C เพื่อออกจากการตรวจสอบ ] .. #1 rlm_sql (sql): starting 2 rlm_sql (sql): Attempting to connect rlm_sql_mysql #2 rlm_sql_mysql: Starting connect to MySQL server for #2 rlm_sql (sql): Connected new DB handle. #3 rlm_sql (sql): starting 4 rlm_sql (sql): Attempting to connect rlm_sql_mysql #4 rlm_sql_mysql: Starting connect to MySQL server for #4 rlm_sql (sql): Connected new DB handle.

255 NAS-Port = 0 rad_recv: Access-Accept packet from host 127.1 port 1812 User-Name = "hhh" User-Password = "hhh" NAS-IP-Address = 255..reading configuration files .255. [OK] ทดสอบการเขาใชงาน โดยใช user จาก mysql ดังนี้ ถายังไมมี user และ passwd ก็ไปท าการสราง user เพื่อทดสอบ radiusd sql กับ Authentication 1.0.# /etc/rc.d/radiusd start Starting RADIUS server: Thu Mar 3 06:48:08 2011 : Info: Starting .0.0.0.0 # radtest hhh hhh localhost 0 testing123 Sending Access-Request of id 153 to 127..1:1812.d/init. id=153. length=74 WISPr-Bandwidth-Max-Up = 512000 WISPr-Bandwidth-Max-Down = 2048000 Service-Type = Login-User Idle-Timeout = 600 Session-Timeout = 14400 Acct-Session-Time = 60 Acct-Interim-Interval = 60 ตอนนี้สามารถใช username ดังกลาวจาก Mysql ในการเขาใชงานไดแลว แบบ full options .255.

MySQL จริง คลิก Perform Test .ทําการทดสอบ Users ใน Web browser ในฐานะ Admin วา Radiusd ทํางานกับ Apache .PHP .

Freeradius ==> ตอไปก็เปนของ ChilliSpot ตอกันเลย .ถาทดสอบผานจะไดดังภาพ สวนนี้ก็เปนการเรียบรอยแลว กับ การติดตอสื่อสาร ระหวาง Apache .MySQL-Server .PHP .

1.conf แก #dynip 192.182.0.0.i386.User Login # cd /tmp/temp/ # wget http://download297.0.11/24 .0.1.168.182.pid # nano +201 /etc/chilli.0/24 เปน dynip 10. ###################################### [100%] 1:chillispot ###################################### [100%] # nano +18 /etc/chilli.i386.conf แก #net 192.0.conf แก #interval 3600 … #pidfile /var/run/chilli.0/24 # nano +45 /etc/chilli..ChilliSpot WiFi Authentication Hospot .conf แก #confusername conf … #confpassword secret เปน confusername conf … confpassword secret # nano +38 /etc/chilli.rpm # rpm -Uvh chillispot-1.0.168.com/tq0ajkq0zpfg/5t2akwxe4wo9bsm/chillispot-1.pid เปน interval 3600 … pidfile /var/run/chilli.mediafire.0/24 เปน net 10..rpm Preparing.

168.16.conf # nano +217 /etc/chilli.168.conf dhcpif eth1 ==> eth1 คือ lan card ใบที่ 2 ที่ไวสําหรับแจก ip ใหเครื่องลูกๆ … .org เปน radiusserver1 127.org radiusserver2 rad02.chillispot.0.5 #domain key.0.org เปน dns1 192.1 # nano +113 /etc/chilli.16.1.1 # nano +139 /etc/chilli.conf แก #radiuslisten 127.0.1 domain localhost ==> Lan Card eth0 ที่รับเน็ตมาจาก ADSL ไมใชการดที่แจกใหลกู ขายนะคับ ==> IP gateway ของ ADSL Router ไมใชการดที่แจกใหลูกขายนะคับ ==> เปน domain name ของ Server เรา # nano +108 /etc/chilli.0.1.5 #dns2 172.conf แก #dns1 172.0.0.100 dns2 192.conf แก #radiussecret testing123 เปน radiussecret testing123 ==> ตองตรงกับ secret ของ freeradius ใน /etc/raddb/clients.chillispot.chillispot.0.0.conf แก radiusserver1 rad01.1 เปน radiuslisten 127.# nano +59 /etc/chilli.1 radiusserver2 127.0.0.

conf แก #uamsecret ht2eb8ej6s4et3rg1ulp #uamlisten 192.0.0.182.# nano +230 /etc/chilli.1/phpwifi/hotspotlogin.org/hotspotlogin เปน uamserver http://10.php # nano +248 /etc/chilli.1 #uamport 3990 เปน uamsecret ht2eb8ej6s4et3rg1ulp (จะแกเปนรหัสใหมก็ไดแตตองตรงกับไฟล hotspotlogin.0.1:3779 disconnect testing123 coaport 3779 .0.chillispot.0.168.conf แก uamserver https://radius.conf แก # lease 600 เปน lease 600 # nano +237 /etc/chilli.php) uamlisten 10.0.1 uamport 3990 สวนนี้เพิ่มเขาไปทายบรรทัดสุดของไฟล หรือตอจากบรรทัด uamport 3990 ไวสําหรับ kick ยูสเซอร และ ตรวจสอบ # TAG: kick user online # Example # /bin/echo User-Name=love| /usr/bin/radclient -x 127.

Reject everything else.0/firewall.d/network restart Shutting down interface eth0: Shutting down interface eth1: Shutting down loopback interface: Disabling IPv4 packet forwarding: net.1.iptables /etc/ # nano +19 /etc/firewall. Reject everything else.ipv4. $IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 22 --syn -j ACCEPT เปน IPTABLES="/sbin/iptables" EXTIF="eth0" INTIF="eth1" สวนนีต ้ อ  งเพิม ่ port เขาไปไมงน ั้ จะ tcp จากขางนอกผานหนา web เขามาไมได #Allow releated.แกไข lan card ใบที่สอง สํา หรับแจก ip ให ลูกขาย # nano /etc/sysconfig/network-scripts/ifcfg-eth1 # Intel Corporation 82557/8/9/0/1 Ethernet Pro 100 DEVICE=eth1 HWADDR=00:06:29:89:E5:9C ONBOOT=yes BOOTPROTO=none # /etc/init. established and ssh on $EXTIF.ip_forward = 0 Bringing up loopback interface: Bringing up interface eth0: Bringing up interface eth1: [OK] [OK] [OK] [OK] [OK] [OK] [OK] # cp /usr/share/doc/chillispot-1. established and ssh on $EXTIF. $IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 20 --syn -j ACCEPT $IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 21 --syn -j ACCEPT $IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 22 --syn -j ACCEPT $IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 80 --syn -j ACCEPT $IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 443 --syn -j ACCEPT $IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 3990 --syn -j ACCEPT $IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 10000 --syn -j ACCEPT $IPTABLES -A INPUT -i $EXTIF -j REJECT #Forward port $EXTIF $IPTABLES -A FORWARD -i $EXTIF -j ACCEPT $IPTABLES -A FORWARD -o $EXTIF -j ACCEPT อธิบาย EXTIF="eth0" ตัวที่รบ ั เน็ตมาจาก ADSL Modem Router ของผูใหบริการของเรานัน ้ เอง INTIF="eth1" สําหรับบังคับเครือ ่ งลูกใหมา login กอน ถึงจะใชงานอินเตอรเน็ตได .iptables แก IPTABLES="/sbin/iptables" EXTIF="eth0" INTIF="eth1" #Allow releated.

#This is only needed if authentication server is on same server as chilli $IPTABLES -A INPUT -p tcp -m tcp --dport 22 --syn -j ACCEPT ==> เพิม่ เติมเขาไปเพื่อใหเครื่องลูกสามารถใชงาน SSH Port22 $IPTABLES -A INPUT -p tcp -m tcp --dport 80 --syn -j ACCEPT $IPTABLES -A INPUT -p tcp -m tcp --dport 443 --syn -j ACCEPT #Allow 3990 on other interfaces (input). $IPTABLES -A INPUT -i lo -j ACCEPT #Drop everything to and from $INTIF (forward) #This means that access points can only be managed from ChilliSpot $IPTABLES -A FORWARD -i $INTIF -j DROP $IPTABLES -A FORWARD -o $INTIF -j DROP #Enable NAT on output device $IPTABLES -t nat -A POSTROUTING -o $EXTIF -j MASQUERADE . Reject everything else.iptables #!/bin/sh # # Firewall script for ChilliSpot # A Wireless LAN Access Point Controller # # Uses $EXTIF (eth0) as the external interface (Internet or intranet) and # $INTIF (eth1) as the internal interface (access points). Drop everything else.ESTABLISHED -j ACCEPT #Allow releated.# /etc/rc. IPTABLES="/sbin/iptables" EXTIF="eth0" INTIF="eth1" #Flush all rules $IPTABLES -F $IPTABLES -F -t nat $IPTABLES -F -t mangle #Set default behaviour $IPTABLES -P INPUT DROP $IPTABLES -P FORWARD ACCEPT $IPTABLES -P OUTPUT ACCEPT #Allow related and established on all interfaces (input) $IPTABLES -A INPUT -m state --state RELATED. $IPTABLES -A INPUT -i $INTIF -j DROP #Allow http and https on other interfaces (input).d/chilli start Starting chilli: [ OK ] # chkconfig chilli on # ps -ef |grep chilli root 18655 1 0 21:54 ? 00:00:00 /usr/sbin/chilli root 18668 17414 0 21:55 pts/3 00:00:00 grep chilli สวนอันนี้คือตัวอยางโคดคําสั่งทั้งหมดของ /etc/firewall. # # * NAT is enabled on the external interface. $IPTABLES -A INPUT -p icmp --icmp-type echo-request -j ACCEPT #Allow everything on loopback interface. $IPTABLES -A INPUT -p tcp -m tcp --dport 3990 --syn -j ACCEPT #Allow ICMP echo on other interfaces (input).d/init. $ IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 20 --syn -j ACCEPT $IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 21 --syn -j ACCEPT $IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 22 --syn -j ACCEPT $IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 80 --syn -j ACCEPT $IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 443 --syn -j ACCEPT $IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 3990 --syn -j ACCEPT $IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 10000 --syn -j ACCEPT $IPTABLES -A INPUT -i $EXTIF -j REJECT #Forward port $EXTIF $IPTABLES -A FORWARD -i $EXTIF -j ACCEPT $IPTABLES -A FORWARD -o $EXTIF -j ACCEPT #Allow related and established from $INTIF. established and ssh on $EXTIF.

iptables /sbin/service chilli reload # shutdown -r now .# nano /etc/rc.d/sshd restart /sbin/service httpd status /sbin/service mysqld status /sbin/service radiusd status /sbin/service chilli status sh /etc/firewall.local ใสเพิ่มเขาไป ทั้งหมด ครับ /etc/init.

0.chillispot. See http://www.0. Licensed under GPL.i386 Oct 7 00:21:39 localhost yum: Installed: freeradius-mysql .c: 3759: Successful UAM login from username=test IP=10. New PID=5690.com> Oct 7 00:41:20 localhost chillispot[16797]: ChilliSpot 1.2-9.c: 3823: Received UAM logoff from username=test IP=10.22-7.0.0.13 Oct 6 07:26:30 localhost chillispot[5566]: chilli.0.1.c: 3823: Received UAM logoff from username=test IP=10.c: 1086: Rereading configuration file and doing DNS lookup Oct 6 08:29:58 localhost init: Trying to re-exec init .2-9.el5_4.el5_5.i386 Oct 7 00:15:55 localhost yum: Installed: libtool-ltdl .3.6.6.0.i386 Oct 7 00:15:55 localhost yum: Installed: net-snmp-utils .2.13 Oct 6 07:26:52 localhost chillispot[5566]: chilli.c: 3759: Successful UAM login from username=test IP=10.0.2.0.0.3-1.el5.6 Oct 7 00:41:20 localhost kernel: tun: (C) 1999-2004 Max Krasnyansky <maxk@qualcomm.5.1.0.1:5.3-1.i386 Oct 7 00:41:20 localhost kernel: tun: Universal TUN/TAP device driver.c: 3759: Successful UAM login from username=test IP=10.13 Oct 6 07:24:19 localhost chillispot[5566]: chilli.0.0.1.1.1.13 Oct 6 08:21:44 localhost chillispot[5566]: chilli.1.1.el5_5. 1.1:5.c: 3823: Received UAM logoff from username=test IP= 10. Oct 7 00:41:20 localhost kernel: ADDRCONF(NETDEV_CHANGE): tun0: link becomes ready Oct 7 00:41:20 localhost kernel: e100: eth1: e100_watchdog: link up. Copyright 2002-2005 Mondru AB.el5.13 Oct 6 07:24:21 localhost chillispot[5566]: chilli.1.13 Oct 6 07:26:15 localhost chillispot[5566]: chilli.รันคําสัง ่ ตรวจสอบวาเครือ ่ งลูกขายไดรบ ั IP Address จาก chillispot เปนแบบ logfile # tail -f /var/log/messages จะไดผลลัพธแสดงคลาย ๆ ตังอยางขางลางนี้ *กอนเครื่องลูกขายจะไดรับ ip จาก chillispot dhcpd Oct 7 00:15:54 localhost yum: Installed: net-snmp . full-duplex *หลังจากเครื่องลูกขายไดรับ ip จาก chillispot dhcpd Oct 6 07:21:48 localhost smartd[5688]: Monitoring 1 ATA and 0 SCSI devices Oct 6 07:21:48 localhost smartd[5690]: smartd has fork()ed into background mode. 100Mbps.i386 Oct 7 00:15:57 localhost yum: Installed: freeradius .3.0. Oct 6 07:24:00 localhost chillispot[5566]: chilli.org for credits.

1 P-t-P:10.0.php"> # nano redirect_logoff.0.0 b) TX bytes:180 (180.1.URL=redirect_logoff.168.100 Bcast:192.php /var/www/html/phpwifi/ .0.2 KiB) TX bytes:8470 (8.$_SERVER["SERVER_ADDR"].0.255.0 UP POINTOPOINT RUNNING MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:500 RX bytes:0 (0.168.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:101 errors:0 dropped:0 overruns:0 frame:0 TX packets:101 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:8470 (8.1 Mask:255.0 inet6 addr: fe80::e2cb:4eff:fec3:c6d/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:51720 errors:0 dropped:2874486993 overruns:0 frame:0 TX packets:32891 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:64781574 (61.0 b) lo Link encap:Local Loopback inet addr:127.0.1.html /var/www/html/phpwifi/ # cp /var/www/html/redirect_logoff.ทดสอบ ip # ifconfig Eth0 Link encap:Ethernet HWaddr E0:CB:4E:C3:0C:6D inet addr:192.255.255.0 b) TX bytes:0 (0.0. ?> จากนั้น copy ไปวางที่ phpwifi อีก เพื่อปองกันการเขาถึง admin ในระดับหนึ่ง # cp /var/www/html/index.1 Mask:255.0.255 Mask:255.php ใสเพิ่มเขาไป <?php print "<META HTTP-EQUIV='Refresh' CONTENT='0.html ใสเพิ่มเขาไป <META HTTP-EQUIV="Refresh" CONTENT="0.":3990/logoff'>".2 KiB) # ตัวนี้จะทางานแทนการดแลนสาหรับออกเน็ตใหเครื่องลูกๆ tun0 จะทางานแทน eth1 การดแลนใบที2 ่ tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:10.0 b) ท าการสรางไฟล เพื่อใหยูสเซอร logout ไดเอง โดยการใหยูสเซอรพิมพ IP Gateway ของ Server บนเว็บบราวเซอร # cd /var/www/html/ # rm -rf index.html # nano index.0.7 MiB) TX bytes:3079053 (2.255.9 MiB) Interrupt:177 Base address:0x2000 Eth1 Link encap:Ethernet HWaddr 00:06:29:89:E5:9C การดแลนสาหรับออกเน็ตใหลูกๆ จะตองไม active inet6 addr: fe80::206:29ff:fe89:e59c/64 Scope:Link UP BROADCAST RUNNING MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:2 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.URL=http://".

ทําการตรวจสอบที่เครื่องลูกขาย Open web browser คราวนี้เรามาดูที่เครื่องลูกขายของเราวาไดรับไอพีจาก dhcp chillispot server หรือไม ถาไดรับก็จะเปนเหมือนในรูปตัวอยาง .

...conf ผิด แลวเขาใจวาระบบ error! ระวังในเรื่องของ Config ไฟล บน Squid Proxy Server ดวยนะครับ .ทดสอบกับเครื่องลูกขาย กอน วาสามารถ login และ ท างานรวมกับ Server ได แลวจึงตามดวย Squid Proxy Server ผมกลัวไป Config ไฟลตรง squid.

ทดสอบการ Logout เองโดย Users บนเครื่องลูกขาย ให User พิมพ Gateway ของ Server บน URL บน WebBrowser ของ Users เอง จะเปนการ Logout โดยอัตโนมัติ .

ทดสอบการ kick ยูสเซอร ออกจากระบบ ไปที่ ผูที่กําลังใชงานอยูในระบบทั้งหมด ในขณะที่ users กําลัง online ไปคลิกที่ [* kill * ] บนเครื่องหมาย ถูก .

บนเครื่องลูกขายก็จะถูก Redirect มาหนา Login อีกครั้ง ถึงแมวาเวลาบน popup จะเดินอยูก็ตาม ระบบจะไมนับรวม เพราะ ระบบทําการ checkout เมื่อ admin kick users ณ เวลานั้น .ถาสามารถ kick users ออกจากระบบไดก็แสดงวา coaport 3779 บน ChilliSpot ทํางานถูกตอง -.

*หมายเหตุ สําหรับการเพิ่ม User ในโซนทั่วไป หอพัก อพารธเมนต โรงแรม รานคาทั่วไป อื่นๆ ในหมวด เพิ่มกลุมผูใช อยากําหนดวันหมดอายุเปน 0000-00-00 ระบบจะไมเขาใจวา ไมมีวันหมดอายุ (โคดใหม) จะทําให ยูสเซอร Login ไดแคครั้งเดียว แลว ยูสเซอร ก็หมดอายุการใชงาน เอาแค 2050-01-01 ก็ไมรูวาจะอยูถึงไหม (ในกรณีไมอยากจ ากัดอายุของ ยูสเซอร) .

php .local ใสเขาไปทายไฟลเลยคับ #clear users radiusd for starting php /var/www/html/phpwifi/admin/del_user_remain.เรื่องการ kill users ทีคางอยูในระบบ กรณี users กําลัง Online แลว Server เกิดดับ หรือ Restart เราจะตองให Server มันทําการ Kill Users ใหเองตอนบูตเขาระบบโดยอัตโนมัติ # nano /etc/rc.

php ถาผาน จะตองไมมีขอความแจงเตือน # php /var/www/html/phpwifi/admin/del_user_remain.so: ไปปดการทํางานของ module บางสวนใน php อยูแถวทายไฟล กดปุม Page Down บนคียบอรด เลยคับ # nano /etc/php.php ถาไมผาน จะมีขอความแจงเตือนดังนี้ Failed loading /usr/local/lib/ioncube/ioncube_loader_lin_ 5.0.ini ใสเครื่องหมาย # หนาบรรทัดนี้ (ถามีนะคับ ใหทําการคนหาดูกอน ) #zend_extension=/usr/local/lib/ioncube/ioncube_loader_lin_5.0.*หมายเหตุ กรณีนี้อาจจะทําใหการสั่งรันไฟล php โดยตรงทาง Command line เกิดขอผิดพลาดได ใหไปทําการตรวจสอบ ขอมูลดังนี้ เมื่อทดสอบคําสั่งรันไฟล php โดยตรงทาง command line จะตองไมมีขอความแสดงขอผิดพลาดเกิดขึ้น # php /var/www/html/phpwifi/admin/del_user_remain.so # shutdown -r now .so: undefined symbol: _zval_copy_ctor /usr/local/lib/ioncube/ioncube_loader_lin_ 5.0.

เพราะมันเปนโคดที่ผมเขียนขึ้นมาเอง ....มันเปนกฎ ที่ถูกตองแลวครับ สัดสวนนี้ ในตัวโคด มันจะใช session[username] และ session[password] ในหนา index.*หมายเหตุ เพิ่มเติม + เทคนิค ของ Administrator กรณี Admin ตองการ เปลี่ยน Password ใหม เทคนิคนี้เฉพาะ Administrator เทานั้นที่รู และเปนการ ปองกันอีกระบบดับหนึ่ง ในตัวโคดจงใจออกแบบใหมันเปนแบบนี้ Users ที่ใชงานทั่วไป บ รูเรื่องดวยหรอกครับ ...ก็จะทําให session[username] และ session[password] เปลี่ยนไปเปนของ users มันก็เลยทําให Username และ Password ของ Administrator ไมตรงกันตอนจะเปลี่ยน Password ใหม สวนวิธีแก ผมรูดีครับ ..php หรือหนา login ในฐานะเอง Administrator ถา Login ในฐานะ Administrator ตั้งแตแรกแลว ไปทําการเปลี่ยน password ใหมเลย จะไดทันทีครับ แตถาคนที่เปน Administrator Login ในฐานะผูดูแลระบบ จากเครื่องลูกขาย แลวไปทําการทดสอบระบบของตัวเอง โดยการลอง Loginในฐานะ Users ทั่วไปเพื่อเขาใชงาน Internet (อันนี้เฉพาะ Administrator นะครับ) มันจะทําให session[username] และ session[password] ไปจําชื่อ ของ users และ password ที่ใชสําหรับเลนเน็ตแทน ตอนที่ Administrator ทดสอบระบบ จากเครื่องลูกขาย พอคราวนี้ Administrator เขามาใชงานในฐานะผูดูแลระบบอีกครั้ง จากเครื่องลูกขายเครื่องเดิมที่ทดสอบระบบตัวเอง .ไปแกโดยทําการ Logout ออกจากระบบในหนาเว็บ ที่เขาใชงานในฐานะ Administrator ..

...สวน Users ธรรมดา ..... ..ก็เทคนิคแบบนี้มันเหมาะกับคนที่เปน Administrator อยูแลวคับ Save ระบบระดับหนึ่ง ไดดีออกครับ .คิดเสียวาเหมือนสูตรเกมส สมั้ยเกมสตลับ ชื่อเกมส contra สูตรก็ [ บนๆ ลางๆ ซาย ขวาซาย ขวา หนา หลัง ] .เพราะคุณเปน Administrator คุณก็ตองรูเทคนิคนี้ เฉพาะตัวคุณ .มัน ถูกตองแลว เปนปกติ และ ถูกตองดวยครับ ..บ รูเรื่องดวยครับ ..*แลวทําการ Login เขาไปใหม ในฐานะ Administrator อีกครั้ง แลวไปทําการเปลี่ยน Password ใหมไดเลย .

*เพิ่มเติ่มเรื่อง Users เปลี่ยน Password เอง เพราะ Server บางเครื่อง ตั้งคา IP address ที่แจก internet ใหเครื่องลูกขาย ไมเหมือนกัน เพื่อความเขาใจ สําหรับสวนที่ตองไปแกไข IP address ของ Server ที่แจก IPaddress ไมเหมือนกัน .

2550<br> 2. เจาหนาที่ทานใดที่ยังไมมี ชื่อผูใช และ รหัสผานกรุณาติดตอผูดูแลระบบฯ<br> 3.php"><b> เปลี่ยนรหัสผาน </b></a><br> 4.0.php"><b>ลงทะเบียน</b></a> แตจะใช งานไดเมื่อไดรับ อนุญาตจากผูดูแลระบบฯ .คอมพิวเตอรฯ พ. สามารถสมัครลงทะเบียนไดที่นี่ <a href="http://10.ศ.0. สําหรับผูมีรหัสผานแลวสามารถเปลี่ยนรหัสผานไดเองที่นี่ <a href="http://10.คําแนะน า -:-</b><br><br> 1.1/phpwifi/admin/password.เปด web browser เขาใชงานในฐานะ Administrator ไปที่ ปรับแตงหนาล็อกอิน แลวแกไข IP address ที่เปน Gateway ใหเครื่องลูกขาย ใหตรงตามเครื่อง Server ของคุณ ตัวอยาง http://<IP-SERVER>/phpwifi/admin/password.php <b>-:.0.1/phpwifi/admin/register.0. ระบบพิสูจนตัวตนเพื่อใชงานเครือขายอินเตอรเน็ต ตาม พรบ.

ตามรูปเลยครับ .

STABLE21-6.el5 Complete! *ขอเพิ่มเติมเรื่องการติดตัง้ Squid Proxy ในกรณีทไี่ ดตดิ ตัง้ แลวทําการ config ไฟล แบบ random แลว squid ไมทํางาน เพราะ ตกแตง config มากเกินไป จนไฟลเสีย จนคนทําหัวบานไปเลย ถายังไมเขาใจเรื่องการ config ไฟลของ squid proxy ก็พยายามทําตามคูมือไปกอน *และ squid proxy แตละ version บางที โคดบรรทัดคําสั่งอาจไมเหมือนกัน ตองระวังหนอยเรื่องนี้ สวนใหญเทาที่เคยเห็นมา .6.i386 7:2.3 M Transaction Summary Install 0 Package(s) Update 1 Package(s) Remove 0 Package(s) Total download size: 1.STABLE21 100% |=========================| 1.> คําสั่งลบ squid ออก ในกรณีที่ติดตั้งไปแลว .3 MB 00:03 Running rpm_check_debug Running Transaction Test Finished Transaction Test Transaction Test Succeeded Running Transaction Updating : squid ######################### [1/2] Cleanup : squid ######################### [2/2] Updated: squid..Squid Proxy Server # yum -y install squid Dependencies Resolved Package Arch Version Repository Size Updating: squid i386 7:2.3 M Is this ok [y/N]: y Downloading Packages: (1/1): squid-2.Config ใหม ที่ terminal # yum -y remove squid # yum -y install squid ---.6.STABLE21-6.จะตายตอนลง squid proxy แลวออกเน็ตไมได .6..เปนอยางนั้นจริงๆ เพราะไมเขาใจการทํางานของระบบ ที่ squid ไปทํางานดวย สวนวิธีแกก็ ไปทําการลบ package ของ squid proxy แลวติดตั้งใหมเขาไป .el5 base 1.

Setup a transparent proxy with Squid
บังคับใหเครื่องลูกวิ่งผานเสนทางของ proxy โดยอัตโนมัติ
# cd /tmp/temp
# wget http://download559.mediafire.com/ldbd28rc3mig/ki3gn8rnfrnw4kc/squid.conf
# cd /etc/squid/
# mv squid.conf squid.conf.org
# cp /tmp/temp/squid.conf ./

# chmod 640 squid.conf
# chown root:squid squid.conf
# ls -l squid.conf
-rw-r----- 1 root squid 156692 Mar 6 19:27 squid.conf

#cd /etc/squid/
# nano squid.conf
เปน
http_port 3128 transparent
http_port 127.0.0.1:3128 transparent
# nano +15 squid.conf
แกเปน
maximum_object_size 250 MB ==> ในสวนนี้ขึ้นอยูกับ สเปคของ server ที่คุณใชงาน
# nano +18 squid.conf
แกเปน
maximum_object_size_in_memory 1 MB
# nano +23 squid.conf
แกเปน
cache_dir ufs /var/spool/squid 2048 16 256
สเปค HDD + Ram 2048 (หนวยเปน MB) = 2Gb ในสวนนี้
ตองคํานวณกับสเปคของ Server เปนการเก็บประวัติการทองเว็บ เพื่อให Server ลดภาระของ bandwidth

*** เพิ่มเติมในสวนนี้เล็กนอยนะคับ กรณีที่คณ
ุ มี การดแลนขาออกเน็ตใหเครื่องลูกๆ มีอยู 2 ใบ ตัวอยาง การดแลนที่เปน
Authen ใช tun0 คือ eth1 -> 10.0.0.1
ตัวอยาง การดแลนที่เปน DHCP ใช IP แจกเน็ตทั่วไป แตไมติด Authen เลนเน็ตได คือ eth2 -> 10.10.10.1 แกเปน Ip subnet
ของ Class ใคร Class มัน ที่จะใชแจกใหเครื่องลูกๆ นะครับ
acl webconfig_lan src 10.0.0.0/24
10.10.10.0/24
acl webconfig_to_lan dst 10.0.0.0/24
10.10.10.0/24
และในขั้นตอนนี้ทานสามารถไปเพิ่มใน โหมด ปองกันการแอบใช แคเพิ่มหมายเลข ip 10.10.10.0/24 เขาไปในชองที่สอง
ขาวมือ

ในรูปก็เปนตัวอยางการเพิม
่ ไอพี การดแลน ในหนาเว็บ และอยาลืมไปเพิ่มใน firewall.iptable ดวยนะครับ ในโคดคําสั่งตัวอยาง
เปนการเพิ่ม การดแลนใบที่3 ไดท าการ start dhcp service ให การดแลนใบที่3
#Allow related and established from $INTIF. Drop everything else.
$IPTABLES -A INPUT -i $eth2 -j DROP
# Drop everything to and from $eth2 (forward)
# This means that access points can only be managed from ChilliSpot
$IPTABLES -A FORWARD -i $eth2 -j DROP
$IPTABLES -A FORWARD -o $eth2 -j DROP
## Squid Proxy Allow transparent
$IPTABLES -t nat -A PREROUTING
$IPTABLES -t nat -A PREROUTING
$IPTABLES -t nat -A PREROUTING
$IPTABLES -t nat -A PREROUTING
$IPTABLES -t nat -A PREROUTING
$IPTABLES -t nat -A PREROUTING

proxy for ETH2
-i eth2 -p tcp -m
-i eth2 -p tcp -m
-i eth2 -p tcp -m
-i eth2 -p tcp -m
-i eth2 -p tcp -m
-i eth2 -p tcp -m

tcp
tcp
tcp
tcp
tcp
tcp

--dport 3128 --syn -j DROP
-d 10.10.10.0/24 --dport 80 -j RETURN
-d 10.10.10.0/16 --dport 80 -j RETURN
-d 10.10.10.0/8 --dport 80 -j RETURN
-d 127.0.0.0/8 --dport 80 -j RETURN
--dport 80 -j REDIRECT --to-ports 3128

6 MiB) Eth2 Link encap:Ethernet HWaddr 00:12:F0:06:8A:54 inet addr:10.255.0.10.255 Mask:255.1 Bcast:10.0.255.0.0 inet6 addr: fe80::212:f0ff:fe06:8a54/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:267268 errors:0 dropped:0 overruns:0 frame:0 TX packets:10975 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1437845 (1.1 Mask:255.8 KiB) tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 inet addr:10.168.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:468 errors:0 dropped:0 overruns:0 frame:0 TX packets:468 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:45923 (44.1.7 KiB) TX bytes:1699711 (1.3 MiB) TX bytes:9611559 (9.10.168.ตัวอยางคําสั่ง ifconfig สําหรับ กรณีที่คุณมี การดแลนขาออกเน็ตใหเครื่องลูกๆ มีอยู 2 ใบ eth0 Link encap:Ethernet HWaddr 00:E0:4C:00:21:31 inet addr:192.9 MiB) Interrupt:11 Base address:0x8000 eth1 Link encap:Ethernet HWaddr 00:02:A5:BB:15:49 inet6 addr: fe80::202:a5ff:febb:1549/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:2386 errors:0 dropped:0 overruns:0 frame:0 TX packets:2696 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:374039 (365.255.0.255 Mask:255.255.255.1 MiB) Interrupt:11 Base address:0xa000 Memory:40000000-40000fff Lo Link encap:Local Loopback inet addr:127.0.2 KiB) TX bytes:1730496 (1.0 MiB) TX bytes:7289875 (6.1 Mask:255.255.0 inet6 addr: fe80::2e0:4cff:fe00:2131/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:18526 errors:0 dropped:0 overruns:0 frame:0 TX packets:15453 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:5289076 (5.6 MiB) .0.0.0 UP POINTOPOINT RUNNING MTU:1500 Metric:1 RX packets:2245 errors:0 dropped:0 overruns:0 frame:0 TX packets:2675 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:500 RX bytes:321286 (313.8 KiB) TX bytes:45923 (44.100 Bcast:192.1.10.0.10.1 P-t-P:10.

txt" acl unlimit_bandwidth time "/etc/squid/traffic/funlimit_bandwidth.txt" acl Safe_ports port "/etc/squid/blockports.txt" .conf >>>File Block Time –to.conf >>>File Block Time –to.txt" # nano +140 squid.conf >>>File Block Time –to.txt" # nano +146 squid.txt" # nano +134 squid.conf >>>File Block IP เปน acl blockip src "/etc/squid/blockip.conf >>>File Block Ports เปน acl SSL_ports port "/etc/squid/blockportsSSL.txt" acl fgroupIP src "/etc/squid/blockfiles_groupip.txt" acl groupip src "/etc/squid/blocktime_groupip.GroupUsers เปน acl groupusersweb url_regex "/etc/squid/phpwifi/blockweb_group.txt" acl download_files url_regex -i "/etc/squid/traffic/fdownload_files.txt" # nano +143 squid.conf >>>File Traffic Delay Pools เพิ่มเขาไปตามนี้เลย #Squid Delay Pools acl localnet url_regex -i "/etc/squid/traffic/flocalnet.txt" # nano +137 squid.# cd /etc/squid/ # nano +123 squid.Time And GroupIP เปน acl grouptime time "/etc/squid/blocktime_gip.txt" acl webgroupusersip src "/etc/squid/phpwifi/blockweb_ipmac.GroupsIP เปน acl blockfiles url_regex -i "/etc/squid/blockfiles.txt" acl blockurl_time url_regex "/etc/squid/blocktime_url.txt" acl blockmac arp "/etc/squid/blockmac.conf >>>File Block Web –to.conf >>>File Block Files -to.txt" acl update_files url_regex -i "/etc/squid/traffic/fupdate_files.txt" # nano +131 squid.GroupUsers เปน acl groupuserstime time "/etc/squid/phpwifi/blocktmac_time.txt" acl groupusersip src "/etc/squid/phpwifi/blocktime_ipmac.Time เปน acl daytime time "/etc/squid/blocktime.txt" acl CONNECT method CONNECT # nano +127 squid.

# nano +152 squid.txt http_access deny blacklist_files >>>ไฟลนามสกุลที่ไมอณุญาติ จากไฟล blacklist_files ชื่อ files.conf >>>Block IP เปน http_access deny blockip http_access deny blockmac # nano +183 squid.conf >>>Block Ports เปน http_access deny Safe_ports http_access deny CONNECT SSL_ports # nano +177 squid.conf >>>Block URL & Files เปน http_access deny blockx >>>ใหระบบอานรายชื่อเว็บที่ไมอณุญาติจากไฟล blockx.txt # nano +180 squid.Time And GroupIP เปน http_access deny grouptime groupip .conf >>>Block Time –to.conf >>>File Traffic Delay Pools เพิ่มเขาไปตามนี้เลย # Delay Pools Setup delay_pools 3 delay_class 1 2 delay_parameters 1 -1/-1 -1/-1 delay_access 1 allow localnet delay_access 1 allow !unlimit_bandwidth delay_access 1 deny unlimit_bandwidth delay_class 2 2 delay_parameters 2 256000/256000 128000/128000 delay_access 2 allow update_files delay_class 3 2 delay_parameters 3 256000/256000 128000/128000 delay_access 3 allow download_files # nano +174 squid.Time เปน http_access deny daytime blockurl_time # nano +185 squid.conf >>>Block Time –to.

txt blockports.GroupsIP .txt >>>Make File Block URL & Files # touch blockportsSSL.conf เปน http_access deny groupuserstime groupusersip # nano +191 squid.conf เปน http_access deny blockfiles fgroupIP # nano +189 squid.conf เปน http_access allow manager LOCALHOST_SAVE http_access allow LOCALHOST_SAVE # nano +198 squid.conf เปน http_access allow LAN_PROXY_SAVE http_reply_access allow LAN_PROXY_SAVE # nano +215 squid.txt >>>Make File Block Files -to.GroupsUsers >>>IP Subnet transparent >>>SaveProxy .txt blocktime_url.txt >>>Make File Block Ports # touch blockip.txt >>>Make File Block IP # touch blocktime.GroupsIP >>>Block Time -to.txt files.conf เปน http_access deny groupusersweb webgroupusersip # nano +195 squid.txt fblockhackHOST.Block Hacked # touch blockx.log squid >>>Block Files -to.txt blockfiles_groupip.Block Hacked >>>Access logfile to Harddisk ทําการสรางไฟลที่ตองใชงานกับ Squid Proxy Server ที่ได Config # touch blockx.txt >>>Make File Block Time GroupIP # touch blockfiles.txt >>>Make File SaveProxy .GroupsUsers >>>Block Web -to.txt >>>Make File Block URL & Files # touch fblockhackLAN.conf เปน access_log /var/log/squid/access.txt blockmac.txt blocktime_groupip.txt >>>Make File Block Time # touch blocktime_gip.txt files.# nano +187 squid.

txt >>>Make File to folder traffic # touch /etc/squid/traffic/funlimit_bandwidth.txt >>>Make File to folder traffic # touch /etc/squid/traffic/fupdate_files.txt >>>Make File Block Web-to-GroupUsers # chmod 777 /etc/squid/*.txt # chmod 777 /etc/squid/phpwifi/*.txt .txt >>>Make File to folder traffic # mkdir /etc/squid/phpwifi >>>Make folder Block Time-to-GroupUsers # touch /etc/squid/phpwifi/blocktmac_time.txt >>>Make File Block Time-to-GroupUsers # touch /etc/squid/phpwifi/blocktime_ipmac.txt >>>Make File Block Time-to-GroupUsers # touch /etc/squid/phpwifi/blockweb_group.txt >>>Make File Block Web-to-GroupUsers # touch /etc/squid/phpwifi/blockweb_ipmac.# mkdir /etc/squid/traffic >>>Make folder traffic # touch /etc/squid/traffic/fdownload_files.txt # chmod 644 /etc/squid/mib.txt # chmod 777 /etc/squid/traffic/*.txt >>>Make File to folder traffic # touch /etc/squid/traffic/flocalnet.

txt # echo "10.txt # echo "10.29" > blocktime_groupip.txt # echo "10.txt # echo "\.exe" > traffic/fdownload_files.txt # echo "\.0.0.txt # echo "localhost" > traffic/flocalnet.txt # echo "09:00-11:40" > blocktime_gip.com" > blocktime_url.0.25-10.com" > traffic/fupdate_files.0.xxx.1/8" >> traffic/flocalnet.exe" >> traffic/fupdate_files.0.txt # echo "82" >> blockports.zip" > blockfiles.txt # echo "10.0..txt # echo "\.txt # echo "11:00-12:00" > blocktime.txt # echo "\.0. # cd /etc/squid/ # echo "http://www.0.11-10.txt # echo "07:00-18:00" > phpwifi/blocktmac_time.0.txt # echo "www.ใชคําสั่งในการใสขอมูลไฟลลงไปในแตละไฟล เพื่อเปนตัวอยาง .msn.txt # echo "07:00-18:00" > traffic/funlimit_bandwidth.com" > phpwifi/blockweb_group.254" > phpwifi/blockweb_ipmac.254" > phpwifi/blocktime_ipmac.0.txt # echo "442" > blockportsSSL.com" > blockx.0.txt # echo "\.0.txt # echo "\.txt # echo "10.msi" >> traffic/fupdate_files.mp3" >> files.0/24" > fblockhackLAN.0.sex.1" > fblockhackHOST.199" >> blockip.0.55" > blockip.0.txt # echo "127.0.0.0..199" > blockfiles_groupip.0.txt # echo "http://www.0.txt .txt # echo "15-79" > blockports.0.Torrent" > files.0.rar" >> traffic/fdownload_files.txt # echo "00:01:03:44:A3:09" > blockmac.0.txt # echo "\.19-10.txt # echo "127.txt # echo "10.0.txt # echo "10.txt # echo "\.

log #touch /var/log/squid/swap.log chown squid:squid /var/log/squid/* chmod 755 /var/log/squid/access.sh # nano clearsq.sh # ls -l clearsq.log rm -rf /var/log/squid/cache_access.log chmod 755 /var/log/squid/cache.log chmod 755 /var/log/squid/store.log chmod 755 /var/log/squid/cache_access. rm -rf /var/log/squid/access.d/squid reload .sh ใสเพิ่มเขาไปทั้งหมดตามนี้เลยคับ อยาให บรรทัด ตกเด็ดขาดนะครับ โคดคําสั่งจะทํางานเปนบรรทัด #!/bin/sh # # This script will be executed *after* all the other init scripts.log touch /var/log/squid/cache_access.d/init.sh # chmod 4755 clearsq.log touch /var/log/squid/access.log rm -rf /var/log/squid/store.# touch clearsq.sh -rwsr-xr-x 1 root root 775 Mar 20 16:20 clearsq. # You can put your own initialization stuff in here if you don't # want to do the full Sys V style init stuff.log #chmod 755 /var/log/squid/swap.log /etc/rc.log rm -rf /var/log/squid/cache.log touch /var/log/squid/cache.log #rm -rf /var/log/squid/swap.log touch /var/log/squid/store.

sh และตองคูกับ crontab run-time # crontab -e เพิ่มเขาไปทายไฟลเลยคับ 0 0 * * * /etc/squid/clearsq.ทําการสราง สคริป ไฟลให ทําการลบ logfile ของ squid proxy ทุกๆ วัน ตอน เที่ยงคืน ของวันใหม (อันนี้เปนตัวอยางของเครื่องผมนะคับ สเปคเครื่องผมไมสูงมากหนักก็เลยตองลบประวัติการใชงานบอยคับ) # nano /etc/crontab เพิ่มเขาไปทายไฟลเลยคับ 0 0 * * * /etc/squid/clearsq.sh .

conf ใสเครื่องหมาย # # redirect_program /usr/bin/squidGuard # redirect_children 5 # squid -zD 2011/03/11 06:53:40| Creating Swap Directories ขั้นตอน start squid หามมี error! ใดๆ ถามี ..d/squid start Starting squid: .log # touch /var/log/squid/cache.log # touch /var/log/squid/cache_access.d/init.log # chown -R squid:squid /var/log/squid/ # chmod -R 755 /var/log/squid/ # cd /etc/squid/ # nano +228 squid.ทําการสราง logfile สําหรับตําแหนงของ Squid Proxy Logfile เพราะเปนตัวหลักของประวัติการใชงาน กับ Web Application ตัวอื่นๆ # touch /var/log/squid/access. [ OK ] # chkconfig squid on # ps -ef|grep squid root 12946 1 0 06:53 ? 00:00:00 squid -D squid 12948 12946 0 06:53 ? 00:00:00 (squid) -D squid 12949 12948 0 06:53 ? 00:00:00 (unlinkd) root 13119 7255 0 07:06 pts/2 00:00:00 grep squid # /etc/rc.d/crond restart Stopping crond: Starting crond: [ OK ] [ OK ] .เน็ต ก็ใชงานไมได Authen ก็ไมมีความหมาย กลับไปแกไข Config ของ Squid Proxy อีกรอบจนกวาจะผาน # /etc/rc.log # touch /var/log/squid/store.d/init.

10.thaibsd.14 TCP_MISS/200 561 GET http://www.161 image/gif 2011-03-11 07:16:11 142 10.gif -DIRECT/203.0.115.10.0.0.log ใหเครื่องลูกขายใชงานดูครับ รายการทองเว็บจะแสดง list ออกมาใหดู 2011-03-11 07:16:11 135 10.0.0/8 --dport 80 -j RETURN $IPTABLES -t nat -A PREROUTING -i tun0 -p tcp -m tcp -d 127.com/webboard/pic/avartar/42.0.10.0/16 --dport 80 -j RETURN $IPTABLES -t nat -A PREROUTING -i eth2 -p tcp -m tcp -d 10.gif -DIRECT/203.0.com/webboard/pic/pin_topic.0/8 --dport 80 -j RETURN $IPTABLES -t nat -A PREROUTING -i eth2 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128 สั่งรัน firewall # sh /etc/firewall.113.0.0.0.10.0.thaibsd.iptables เพิ่มเขาไปทายไฟลทั้งหมดเลย และแก IP Subnet ที่แจกใหเครื่องลูกขายดวยนะคับ บรรทัด 127.0/24 --dport 80 -j RETURN $IPTABLES -t nat -A PREROUTING -i tun0 -p tcp -m tcp -d 10.0/8 --dport 80 -j RETURN $IPTABLES -t nat -A PREROUTING -i tun0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128 *** เพิ่มเติมในสวนนี้เล็กนอยนะคับ กรณีที่คุณมี การดแลนขาออกเน็ตใหเครื่องลูกๆ มีอยู 2 ใบ ตัวอยาง การดแลนที่เปน Authen ใช tun0 คือ eth1 -> 10.115.com/webboard/pic/cam.161 image/gif 2011-03-11 07:16:12 663 10.0.10.iptables check การทํางานของ squid # tail -f /var/log/squid/access.thaibsd.10.14 TCP_MISS/200 2655 GET http://www.0.0.10.gif -DIRECT/203.0/8 ไมตองไปแกไขอะไรคับ เพราะมันเปน Loopback ของระบบ ## Squid Proxy Allow transparent proxy $IPTABLES -A INPUT -p tcp -m tcp --dport 3128 --syn -j ACCEPT ## Squid Proxy Allow transparent proxy for Tun0 $IPTABLES -t nat -A PREROUTING -i tun0 -p tcp -m tcp --dport 3128 --syn -j DROP $IPTABLES -t nat -A PREROUTING -i tun0 -p tcp -m tcp -d 10.0.0.0.113.1 แกเปน Ip subnet ของ Class ใคร Class ที่จะใชแจกใหเครื่องลูกๆ นะคับ *เพิ่มเขาไปตอทายไฟลเพิ่มอีก ## Squid Proxy Allow transparent proxy DHCP $IPTABLES -t nat -A PREROUTING -i eth2 -p tcp -m tcp --dport 3128 --syn -j DROP $IPTABLES -t nat -A PREROUTING -i eth2 -p tcp -m tcp -d 10.0/8 --dport 80 -j RETURN $IPTABLES -t nat -A PREROUTING -i eth2 -p tcp -m tcp -d 127.161 image/gif .113.10.1 ตัวอยาง การดแลนที่เปน DHCP ใช IP แจกเน็ตทั่วไป แตไมติด Authen เลนเน็ตได คือ eth2 -> 10.0/24 --dport 80 -j RETURN $IPTABLES -t nat -A PREROUTING -i eth2 -p tcp -m tcp -d 10.14 TCP_MISS/200 668 GET http://www.0.115.ทําการเพิ่ม FIREWALL IPTABLES ใหสามารถใช SQUID transparent ได # nano /etc/firewall.0.0.0/16 --dport 80 -j RETURN $IPTABLES -t nat -A PREROUTING -i tun0 -p tcp -m tcp -d 10.0.

.

ตอไปเปนขั้นตอนสําคัญสําหรับให PHPwifi ทํางานกับ Squid Proxy Server เพื่อให Squid Proxy เขามาจัดการ กลุม Users ใน PHPwifi ได ในขั้นตอน หามขามเด็ตขาด ถาตองการใชงานใน โหมด การทํางานนี้ .

php วาสามารถใชงานได ใหคุณล็อกอินในโซนกลุมไหนก็ได ในตัวอยางของผมเปนโซน รายชั่วโมง จากนั้นไปที่หนาเว็บในฐานะ admin แลวไปที่ BlockTimeGroupUsers .ขั้นตอนตอไปใหทําการทดสอบไฟล phpwifisquidproxy.

ในตัวอยางเลือก กลุมรายชั่วโมง เพราะเครื่องที่ทดสอบนี้ ล็อกอิน กลุมรายชั่วโมงอยู จากนั้นก็ทําการคลิกที่ปุม save! ระบบก็จะแจงขอมูลให admin ทราบ เพื่อ Confirm หรือ Cancel .

PHPwifi 1.php ?Process Users Success! -----[root@wifi ~]# .0 >> phpwifisquidproxy.php ?Process Users Success! ----แสดงวาสวนนี้ก็ผานไปได .php ถารันผานคุณจะไดรับขอความแจงใหทราบใน terminal ดังนี้ ----...คลิกที่ปุม Confirm ระบบจะแจงผลลัพธกลับมา ระบบไดทําการบันทึก กลุมของยูสเซอร เปนที่เรียบรอยแลว ! ตอไปนี้เปนการทดสอบ sourcecode การทํางานกับระบบ ที่ Terminal พิมพคําสั่งรันไฟล php ดังนี้ # php /var/www/html/phpwifi/admin/phpwifisquidproxy.php on line 47 2011/04/26 23:54:43| aclParseAclLine: WARNING: empty ACL: acl webgroupusersip src "/etc/squid/phpwifi/blockweb_ipmac.txt" ----.PHPwifi 1.0 >> phpwifisquidproxy..หามขามขั้นตอนนี้นะครับ *เพิ่มเติม ในการสั่งรันในหนาที่แลว บางที่อาจไดรับขอความแจงเตื่อนดังนี้ PHP Notice: Trying to get property of non-object in /var/www/html/phpwifi/admin/phpwifisquidproxy.ไปทําขั้นตอนที่ตองทําเพิ่มอีก .

.PHPwifi 1.php ?Process Users Success! -----[root@wifi ~]# มาแสดงก็ผานแลวครับ จากนั้นก็ลองไปทดสอบกับ BlockTime และ BlockWEB ไดเลย……. .0 >> phpwifisquidproxy.มันแคแจงเตือนเรื่อง non-object หมายถึงบางทีคําสั่งโคด SQL ที่เราสั่งใหมันดักจับ Users ที่ตองการ บล็อก และอาจจะไมพบ Users ที่ตองการ มันจึงทําใหขอมูลที่จะใสในตัวแปร ipaddr วางเปลา ตัวแปร เลย ไมมีการนําขอมูลเขา วาแตมันมีคําวา ----.

php จากนั้นก็กดปุม Esc แลว :wq! เพื่อบันทึกและออกจากการทํางาน .ตอไปเปนการ Timer ให PHPwifi ทํางานรวมกับ Squid Proxy ทุกๆ 1 นาที ที่ Terminal # nano /etc/crontab ใสเพิ่มเขาไปทายไฟล */1 * * * * php /var/www/html/phpwifi/admin/phpwifisquidproxy.php จากนั้นก็ตอดวย Timer Runtime # crontab -e ใสเพิ่มเขาไปทายไฟล */1 * * * * php /var/www/html/phpwifi/admin/phpwifisquidproxy.

ถึงแมจะแอบเปลี่ยน IP ก็ตาม .ถาไม Squid Proxy ก็ไมตองทํางาน ประหยัดเรื่องการทําให CPU เกิดการ Delay นิดหนึ่ง เขาเรื่องตอครับ จากนั้นไปหนาเว็บในฐานะ admin และไปที่โหมดเดิม ดังรูป เราก็จะเห็น IPaddress ในชองที่สอง ดานขาวมือ ....วาเปน IP บนเรื่องที่ทดสอบในกลุม รายชั่วโมง ที่ถูกเลือก และกําลังใชงานอยู *เพิ่มเติม ถายังไมเห็น .ในตัวโคดบนขั้นตอนการ Timer นั้น ตัวโคดออกแบบไมให Squid เกิดการ Reload มากเกินไปเมื่อถึงเวลา เพราะกระบวนการแรก ตัวโคดจะทําการตรวจสอบการถูก Config คาเขาไปใหมจาก Admin หรือไม .ก็ใหทําการ Refresh หนาเว็บใหมอีกรอบ เพราะตัวจับเวลาการรันไฟล Shell Script ยังอาจหรือกําลัง จะถึง 1 นาที เพราะโคดจะตรวจสอบสมาชิกในกลุมที่ถูกเลือก แลวล็อกอินเขามาใชงานอินเตอรเน็ต ระบบจะรอดักจับ Users ในกลุมที่เลือกเอาไว พอถึงเวลาที่ถูกกําหนด Users ก็จะใชงานหนาเว็บไมได ...

ในตัวอยางเวลา ยูสเซอร ไดทําการล็อกอินไปแลว ในกลุมที่โดนบล็อก พอถึงเวลา + พรอมกับตัวโคด ไดดักจับ ยูสเซอร ในกลุมนั้นเจอ แลวระบบก็จะ list ไอพี ใสเขาไปใน ไฟล ในกลุมที่โดนบล็อก ดังรูปตัวอยาง ตัวอยางในรูป ระบบ ไดทําการดักจับ ยูสเซอร ในกลุมที่โดนบล็อก เจอแลว พรอมกับนํา ไอพี มาแสดง *เมื่อ ยูสเซอร ได logout ออกจากระบบ ไอพีที่ระบบแสดง ก็จะหายไป เพื่อไมใหเครื่องอื่นที่เขามาใชงานทีหลัง และไมไดโดนบล็อก แตไดรับ ไอพี ซ้ํากับ ไอพีที่โดนบล็อก เพื่อเปนการปองกันไมใหเครื่องอื่นโดนบล็อก ไอพีเกาที่โดนบล็อก ตองถูกลบออก ....[ OK ] .

เปดหนา Web browser ในฐานะ Administrator ไปที่ บล็อกเว็บ Squid รูปแรกเลย .

sex.ตอไปลองเขาเว็บตองหามดูครับ ในตัวอยางที่ URL พิมพ www.com ก็จะเจอหนา web แจงเตือนดังรูป หนาเดิม ไมไดปรับแตง Squid หนาใหมที่ปรับเปน Message ของตัวเอง .

ตอไปลอง download ไฟล ที่ตองหามดู ในตัวอยางที่ไป download ไฟลนามสกุล \.html ก็จะเจอหนา web แจงเตือนดังรูป .4shared.mp3 ในเว็บตัวอยาง พิมพไปที่ URL http://www.com/get/QwmunnRs/0052-__-__.

conf แกเปน + พรอมเอาเครืองหมาย # ออก proxyport 3128 -> ใสตามนี้เลยครับ เพราะเปน port ของ squid proxy # nano +185 /etc/chilli.conf แกเปน + พรอมเอาเครืองหมาย # ออก proxysecret testing123 -> ตองตองกับ secret = testing123 ของไฟล /etc/raddb/clients.d/chilli restart หามมี Error!.0.0/24 -> ใส IPsubnet ที่แจกเน็ตใหเครื่องลูกขายใชงาน # nano +191 /etc/chilli.conf แกเปน + พรอมเอาเครืองหมาย # ออก proxyclient 10...d/init..1 -> ใสหมายเลขตามคูมือเลยครับ เพราะ 10.conf ทําการ restart service chilli # /etc/rc..0... .0.0.Chillispot กับความแรงขึ้นไปอีก *เพิ่มความแรงใหระบบ ProcessID + Chillispot เพื่อ Balance กับ Proxy Server # nano +173 /etc/chilli.1 คือ gateway ของระบบ # nano +180 /etc/chilli.0.0.conf แกเปน + พรอมเอาเครืองหมาย # ออก proxylisten 10.

iptables .iptable # nano +57 /etc/firewall.iptables #Allow http and https on other interfaces (input). #This is only needed if authentication server is on server as chilli $IPTABLES -A INPUT -p tcp -m tcp --dport 22 --syn -j ACCEPT $IPTABLES -A INPUT -p tcp -m tcp --dport 80 --syn -j ACCEPT $IPTABLES -A INPUT -p tcp -m tcp --dport 443 --syn -j ACCEPT ทําการแทรกบรรทัดเขาไป $IPTABLES -A INPUT -p tcp -m tcp --dport 10000 --syn -j ACCEPT จากนั้นทําการ start firewall # sh /etc/firewall.ทําการสราง Root Alias สําหรับ Squid Proxy โดยการปรับแตง Webmin ประยุกตใชใน PHPwifi เพื่อใหทําการ Re-configuration ระบบตัวเองและปรับแตงเปนแบบ Graphics ทําการเปด port ใหเครื่องลูกขาย กรณีเขามาดูแลผานหนาเว็บ ในฐานะ Admin ใหเพิ่ม port 10000 ตรง firewall.

rpm: Header V3 DSA signature: NOKEY..com/05mb818102og/w48ft3tocb973f5/webmin-1. You can now login to https://localhost:10000/ as root with your root password.Webmin สําหรับ System root alias # cd /tmp/temp/ # wget http://download1081.noarch.520-1.rpm warning: webmin-1.520-1.rpm # rpm -Uvh webmin-1. ################################# [100%] Operating system is CentOS Linux 1:webmin ################################# [100%] Webmin install complete.noarch..noarch.mediafire.520-1. สวนในการติดตั้ง webmin นั้นถา output เปน https:// แสดงวา apache มีสวนขายของไฟล คือ มีโหมดการทํางาน ssl นั้นเอง Open web browser https://ip-server:10000 . key ID 11f63c51 Preparing.

Username = ใชของ Server ในฐานะ root Password = ใชของ Server ตอน Login เขา Server *คลิกเครื่องหมายถูกที่ [ ชอง ] Remember login permanently? จะไดไมตอง Keys รหัสผานบอย .

################################# [100%] Operating system is CentOS Linux 1:webmin ################################# [100%] Webmin install complete.*หมายเหตุแบบระเอียดนิดหนึ่ง ใหสังเกตุ output ดีๆ ในการติดตั้ง Webmin นั้นจะใหผลลัพธอยู 2 แบบ ขึ้นอยูกับการติดตั้ง Apache ในปจจุบันวา ไดติดตั้ง service อะไรไปบางในตัว apache เชน ใหมด ssl หรือ การใชงานเว็บประเภท https:// หรือ Port 443 นั้นเอง แตถาไมไดทาการติดตั้ง mod_ssl ตั้งแตแรก ระบบจะท าการ default ใหเปน http แบบธรรมดา โดย User จะกลายเปน admin และตามดวย passwd ของเครื่อง Server เอง คือ webmin จะมอง apache เปนไฟลขนาดเล็กเพราะไมสวนขยายไฟลนั้นเอง # rpm -Uvh webmin-1.noarch. ------------------------------User = admin Password = เปน password ของ root server ขั้นตอนนี้ถาไมใช https//localhost:10000 จะท าใหระบบ PHPwifi ไมท างานกับ HTTPS ไปท าการติดตั้ง Apache ใหรองรับระบบ SSL และ Remove webmin ท าการ Install ใหมอีกครั้ง เพื่อใหไดใชงาน HTTPS .rpm: Header V3 DSA signature: NOKEY.520-1. You can now login to http://localhost:10000/ as root with your root password.noarch.. key ID 11f63c51 Preparing.rpm warning: webmin-1..520-1.

conf แก ssl=0 -> เปดใชงาน port 80 หรือ http เปน ssl=1 -> เปดใชงาน port 443 หรือ https # /etc/rc.d/init.d/webmin restart Stopping Webmin server in /usr/libexec/webmin Starting Webmin server in /usr/libexec/webmin Pre-loaded WebminCore .*ขอเพิ่มเติมสําหรับทานที่เจอปญหาลง Webmin แลวดันถูกใหใชงานผานทาง HTTP ในหนานี้ทานใดไมมีปญหาก็ขามไปไดเลยนะครับ ขอยกตัวอยางวิธีแกแบบงายๆ สําหรับการเปลี่ยนโหมด HTTP ไปเปน HTTPS (การที่จะเปลี่ยนไปเปน HTTPS นั้น Apache ของคุณตองเปด port 443 หรือ SSL นะคับ ไมงั้นมันก็ใชงานไมได ตรวจสอบ HTTPS ในคูมือ เรื่องการติดตั้ง Apache ครับ) *สําหรับทานที่ตองการ Config แบบรวดเร็วก็ Command line เลยครับ เปด Terminal # nano +11 /etc/webmin/miniserv.

ไปคลิกที่ Webmin ดังในรูปภาพตัวอยาง .เปดหนา Web พิมพ URL เปน https://localhost:10000 ไดเลยครับ *สําหรับทานที่ตองการ Config จาก HTTP ใหเปนโหมด HTTPS แบบสบายๆงายๆ บน WebGUI ก็สะดวกครับ เปดหนา Web browser ที่ Webmin ใหใชงาน You can now login to http://localhost:10000/ as root with your root password.

ตอดวย --> Webmin Configuration .

ตอดวย --> SSL Encryption .

ไปที่หัวขอ Enable SSL if available? --> คลิกที่คําวา Yes เลยครับ จากนั้นก็ คลิกที่ Save เลยครับ .

ทําการปดหนา Webmin แลวเขาใชงานใหมครับ และตองพิมพ URL เปน HTTPS นะครับ เพราะคุณไดเปลี่ยนโหมดการทํางานไปเปน port 443 SSL เรียบรอยแลว~! .

0 *หามขามขั้นตอนนี้เด็ดขาด จะทําใหมีผลกับระบบไม Balance กัน ทําการ แกไข Config ไฟล ของ Webmin ใหสามารถใชงานผาน web browser ไดโดยการใส URL address วิ่งตรงเขาหาไฟลของ Webmin ไดโดยตรง ที่ Terminal # nano /etc/webmin/config แก referers_none=1 เปน referers_none=0 # /etc/rc.d/init.สําหรับทานที่ลง Webmin ทํางานที่ port 443 SSL หรือ HTTPS เรียบรอยแลว ก็ตอกันเลยครับ ==> Config WEBmin Into Support PHPwifi 1.d/webmin restart Stopping Webmin server in /usr/libexec/webmin Starting Webmin server in /usr/libexec/webmin Pre-loaded WebminCore .

***Plugin เสริมสําหรับ Webmin + PHPwifi 1.0 คุณจะตองอัพ pack เสริมของ Java เพื่อให Web browser ของคุณทํางานกับ Function นี้ เฉพาะในฐานะผูดูแลระบบ ระดับผูดูแลควบคุมผานหนาเว็บ Web Administrator ***ถาไมมี Plugin JAVA เสริมเขาไปใน Web Browser คุณก็จะไดรับขอความแจงเตือน ดังภาพ พรอมกับไมมีหนาควบคุมการใชงาน .

com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/ViewProductDetailStart?ProductRef=jdk-6u24-oth-JPR@CDS-CDS_Developer .sun.com/?8c1acwh2cd12zb1 หรือ download จากแหลงที่อยูของ java ไดโดยตรง https://cds.*PHPwifi ฟงกชั่นใหมนี้ Web browser บน Windows ของคุณตองติดตั้ง Plugin Java เสริม เพิ่มเขาไป เฉพาะ Admin http://www.mediafire.

เปดหนา Web browser ในฐานะ Administrator เพื่อทําการทดสอบ Webmin ใขงานรวกับ PHPwifi คลิกที่ Squid proxy reload บนหนา Index เพื่อทดสอบ PHPwifi วารูจัก URL ที่เพิ่มเขาไปใหม .

google.th แลวทําการ save ลงไฟล ตอไปลองเขาเว็บตองหามดูครับ .ก็จะเห็นรูปการ config ไฟล Squid แบบ WebGUI ขึ้นมาใหไดใชงานงายขึ้น สําหรับใครที่เคยใชงาน Webmin มากอนแลวก็จะรูการทํางานบน WebGUI ของ Webmin ไดดี จากนั้นทําการ Block web แลวสั่งรัน เพื่อทดสอบกระบวนการท างานของ PHPwifi วิ่งผานเว็บ Webmin เพื่อ squid -k reconfigure ไดโดยตรง ในตัวอยางเอาแบบงายใส URL ที่ตองบล็อก www.co.

google.google.th *ถาตองการ ยกเลิก การบล็อกเว็บ ก็ใหไปลบเว็บ www.th เพราะเราตองไดใชงานเปนประจ า *ถาตองการปรับแตงหนาเว็บสําหรับแจงเตือนของ Squid proxy ไฟล path ก็อยูตามนี้เลยคับ # cd /etc/squid/errors/ # ls -l *สําหรับหนา Web page แจงเตือนของ Squid Proxy ในตัวอยาง ชื่อไฟล ERR_DNS_FAIL # nano /etc/squid/errors/ERR_DNS_FAIL .co.th ออกจากการ บล็อกเว็บ เพื่อใหไดงาน www.co.co.google.ในตัวอยางที่ URL พิมพ www.

*เพิ่มเติมใน การตรวจสอบ และการ Start Stop service ของ Squid Proxy ขอยกตัวอยาง ในกรณีที่คุณตองการ บล็อกเว็บ ชวงเวลา ที่เรากําหนด เมื่อคุณไดทําการ Save ไฟลที่ก าหนดชวงเวลาแลว ระบบจะ squid -k reconfigure ผานทาง webmin แตในตัวโคดไดซอน webmin เอาไวเพื่อไมใหมาแทรกหนาจอ ในหนาที่ก าลังทําการบล็อกเว็บ ชวงเวลา ดังกลาวอยู เราจะเห็นขอความแสดงบอกวา ไดทําการบันทึกเรียบรอยแลว + พรอมกับสถานะปจจุบันของ Squid proxy .

cgi"'.. เครื่องลูกขายก็ใชงานไดทุกเว็บไซด ถึงแมวาจะอยูในชวงเวลาของการบล็อกก็ตาม ใชงานไดปกติ! ในรูปเราก็จะเห็นวา Squid proxy server ยังทํางานอยู ไมมีขอผิดพลาดเกิดขึ้น ในหมวดการทํางานนี้เราสามารถสั่ง Start Stop Service ของ Squid Proxy ไดโดยตรง ..ในตัวโคดไดสั่งให webmin reload ใหอัตโนมัติแลว .$_SERVER["SERVER_ADDR"].':10000/squid/restart. ?> <iframe src="<?echo $reload_squid?>" frameborder="0" scrolling="no" width="650" height="0" ></iframe> <? ในบางครั้งการใสคาเขาไปเพื่อทําการบล็อกคาการทํางานตางๆ บางทานอาจใสโคดค าสั่งเขาไปผิดรูปแบบ แลวไมรูวามันเกิดการ error command line บางบรรทัด ของ squid proxy server แลวเปนสาเหตุทําใหเครื่องลูกขายเขาใชงาน internet ไมได อันเนื่องมาจากการใสโคดคําสั่งผิดรูปแบบ เราสามารถทําการตรวจสอบและหาสาเหตุผานหนา web browser ในฐานะ administrator ได โดยการตรวจสอบที่ Systems Root alias หัวขอ Squid proxy reload *เพิ่มเติม ในการบล็อกเว็บ ชวงเวลาที่กําหนด ถาไมตองการใชงาน ก็ใหไปลบชื่อ เว็บไซด บนชองที่ 2 ออกทั้งหมด พอถึงเวลาที่เราไดกําหนด มันก็ไมมีชื่อเว็บไซด ที่ไมใหระบบบล็อกนั้นเอง งายๆ ก็คือ ไมมีเว็บอะไรให squid proxy บล็อกนั้นเอง ..แตโคดไมใหแสดง show $reload_squid = 'https://'.

ถาเกิดขอผิดพลาดขึ้น ก็จะแสดงรายละเอียดพรอมหมายเลขบรรทัดค าสั่งที่ผิดรูปแบบ ดังรูปที่แสดง .

..วิธีแกผานหนาเว็บ ไปคลิกที่ค าวา Module Index เพื่อกลับไปแกที่หนาหลัก ( WEB GUI ) ของ Squid proxy server อันดับแรก เราตองไปลบในสวนโคดค าสั่งที่ใสเขาไปใน หมวดของการ บล็อก ตางๆ ที่ไดทําไวครั้งลาสุด แลวเกิดขอผิดพลาดขึ้น .จะตองไปแกไขในสวนนั้นกอน จากนั้นจึงท าการ Start service ของ Squid proxy server ใหม ทําตามขั้นตอนในรูปที่แสดง ไปคลิกที่คําวา Module Index .

ก็จะกลับมาที่หนา Index ของหมวดการทํางาน Squid proxy server คลิกปุม ที่มีคําวา Start Squid เลยครับ .

ก็จะกลับมาบนหนา Index ที่ทํางานตามปกติ .

เพิ่มเติมในเรื่องการใสโคดค าสั่งใน Squid proxy server เพราะเรื่องของ squid proxy เปนเรื่องที่ตองระวังมากที่สุดเมื่อไดติดตั้ง package squid proxy server เขาไปในระบบแลว รูปแบบโคดคําสั่ง ..ตามหัวขอหมวดหมูของการบล็อก ในรูปตัวอยางเลยครับ ..

.

.

เปนรูปแบบตัวอยางโคดคําสั่ง ของ บล็อกตางๆ บน Squid proxy server สวนตัวอยางนี้การเปนโหมด ควบคุมการใชงาน โดยใช Squid function Delay pools .

คอมพิวเตอร 2550 การเก็บ Logfile ขอมูลการจราจรทางคอมพิวเตอร .LOG File ตาม พ.ร.บ.

conf แก <Directory "/var/www/cgi-bin"> เปน <Directory "/var/www/html/phpwifi/admin/"> AllowOverride All Options None Order allow.el5.d/init.pl .rpm # rpm -Uvh perl-GD-2.tar # tar -xvf lightsquid.com/q48l393kjegg/ity6682g4gpn3vo/lightsquid.mediafire.com/ptub9upmr0sg/8qd5ez9a3l56qzg/perl-GD-2.2.i386.30-2.cgi # chmod +x *.30-2.mediafire.rpm Preparing.tar # rm -rf /var/www/html/phpwifi/admin/lightsquid # mv lightsquid /var/www/html/phpwifi/admin/ # chown -R root:apache /var/www/html/ # nano +570 /etc/httpd/conf/httpd.deny Allow from all </Directory> # /etc/rc.i386.rf.Lightsquid เก็บประวัติการใชงานของ Users # cd /tmp/temp # wget http://download1080..rf. ################################ [100%] 1: perl-GD ################################ [100%] # wget http://download1074.d/httpd restart # cd /var/www/html/phpwifi/admin/lightsquid/ # chmod +x *..el5.2.

#path to `ip2name` folder $ip2namepath ="/var/www/html/phpwifi/admin/lightsquid/ip2name". #path to `tpl` folder $tplpath ="/var/www/html/phpwifi/admin/lightsquid/tpl".GLOBAL VARIABLES --------------------------#path to additional `cfg` files $cfgpath ="/var/www/html/phpwifi/admin/lightsquid". #path to access.cfg ทําการแกไขไฟล ใหเปนที่อยูของ path Lightsquid ตามนี้เลยคับ # -------------------.0.0.1 apache .# nano +12 lightsquid.cfg เพิ่ม IP ที่แจกใหเครื่องลูกขาย ในทายไฟล ( IP ที่แจกใหลูกขายอาจตั้งคาไมเหมือนกัน ) 10. #path to `lang` folder $langpath ="/var/www/html/phpwifi/admin/lightsquid/lang". # nano realname.log $logpath ="/var/log/squid/". #path to `report` folder $reportpath ="/var/www/html/phpwifi/admin/lightsquid/report".

pl start ./lightparser. ไมตองสนใจ Warning เพราะประวัติยังไมถูกอานเขามาใน lightsquid ใหเครื่องลูกขายเลนเน็ตไปสักพักเพื่อให log file มันเก็บลง Harddisk เพื่อให lightsquid เก็บประวัติมาแสดงโชว # .pl LightSquid Config Checker..pl start /var/www/html/phpwifi/admin/lightsquid/lightparser..# ./check-setup.local ใสเพิ่มเขาไปทายไฟล /var/www/html/phpwifi/admin/lightsquid/check-setup.pl & [1] 13582 # nano /etc/rc.log format or can't check format type . Lightsquid can't parse this format! Please check documentation ! Invalid access. (c) 2005-9 Sergey Erokhin GNU GPL WARNING:Log format Look like CUSTOM log.

ทําการสราง สคริป ไฟลให ทําการ refresh ทุกๆ 55 นาที ในแตละวัน # crontab -e ในสวนนี้จะเปน Editor ของ vi กด ปุม Insert หรือ ตัว I เพื่อใสคําสั่งลงไป ใสโคดคําสั่งลงไป หรือ copy มาวางใสก็ได แลวแตวาใครขยันพิมพ */55 * * * * /var/www/html/phpwifi/admin/lightsquid/lightparser.อันนี้เหมาะกับมือใหม เลยตองละเอียด หรืองายๆ ก็พิมพตามนี้เลย :wq! กดปุม Enter เปนอันเรียบรอย! .pl today กดปุม Esc บนแปนคียบอรด เพื่อพิมพคําสั่งบันทึกไฟล กดปุม Shift ปุม : ปุม w ปุม q ปุม ! .

pl today */55 * * * * /var/www/html/phpwifi/admin/lightsquid/lightparser.pl today */55 * * * * /var/www/html/phpwifi/admin/lightsquid/common.pl today ทดสอบดวยการใหเครื่องลูกขายทองเว็บสักประมาณ 1 นาที เพื่อให squid proxy ท าการ access log file ลงบน harddisk เพื่อ ให lightsquid อานขอมูลจาก harddisk มา show บน web browser ได # /etc/rc.d/init.และอีกวิธีหนึ่งที่ตองใชงานคูกัน # nano /etc/crontab เพิ่มเขาไปทายไฟลเลยคับ */55 * * * * /var/www/html/phpwifi/admin/lightsquid/check-setup.d/crond restart Stopping crond: Starting crond: [ OK ] [ OK ] .

ทําการเปด Web browser เขาในหนาเว็บในฐานะ Admin ไปที่ Lightsquid Log กรณีตองการดูแบบ กราฟสถิติ .

ดูแบบ ตาราง ปกติ ดูแบบ กราฟ แสดงสถิติ .

0-2.2. ################################### [100%] 1:squidguard #################################### [100%] # cd /etc/squid/ # ls -l squidguard.conf # nano +228 squid.rf.mediafire.2.2.rpm warning: squidguard-1.0-2.conf แทรกเขามา เพราะตัว squidguard ตองอาศัยการท างานของ Squid -rw-r--r-.SquidGuard # cd /tmp/temp/ # wget http://download680.i386.el5.i386.2.rf.conf แกโดยการเอาเครื่องหมาย # ออก #redirect_program /usr/bin/squidGuard #redirect_children 5 เปน redirect_program /usr/bin/squidGuard redirect_children 5 # mkdir /var/log/squidguard/db # mkdir /var/log/squidguard/log .rf..el5.i386.conf จะมีรายการของ squidguard.rpm # rpm -Uvh squidguard-1.com/ba3ugrnggghg/it0qhuqiilnpkpc/squidguard-1.el5. key ID 6b8d79e6 Preparing.0-2.2.1 root root 1275 Mar 23 21:33 squidguard.2.rpm: Header V3 DSA signature: NOKEY..

16.0.4.0.0.4 1.# nano +32 squidguard.16.d/squid restart Stopping squid: .d/init.0/24 # /etc/rc.16.0.3.16.1 # nano +44 squidguard.conf แก ip 172.100 172.100 172..5 เปน ip 127.2.2.2.conf แก ip 1.0.2.2.32-172.3.0.0/26 เปน ip 10.200 เปน ip 10. Starting squid: ...16.conf แก ip 172. [ OK ] [ OK ] ตรวจสอบวา squidguard ทํางานรวมกับ squid proxy หรือไม # ps -ef |grep squid root 8046 1 0 21:50 ? 00:00:00 squid -D squid 8048 8046 0 21:50 ? 00:00:00 (squid) -D squid 8050 8048 0 21:50 ? 00:00:00 (squidGuard) squid 8051 8048 0 21:50 ? 00:00:00 (squidGuard) squid 8052 8048 0 21:50 ? 00:00:00 (squidGuard) squid 8053 8048 0 21:50 ? 00:00:00 (squidGuard) squid 8054 8048 0 21:50 ? 00:00:00 (squidGuard) squid 8055 8048 0 21:50 ? 00:00:00 (unlinkd) root 8088 7680 0 21:51 pts/1 00:00:00 grep squid .2.1 # nano +39 squidguard.

สําหรับ MAC Allow มีอยู 2 แบบ แบบที่ 1 เปนการเพิ่ม mac address เพื่อไมใหเครื่องนั้นเจอหนา ล็อกอิน เขาใชงานอินเตอรเน็ต แบบที่ 2 ก็เหมือนกันกับใน แบบที่ 1 เพียงแต แบบที่ 2 จะมีขอความให users พิเศษ ไดอานและทําความเขาใจกับระบบ ในการเลือกใชงาน 2 แบบนี้ใหเขาไปที่เมนูตามรูปภาพที่แสดง .

.

ในสวนของขอความนี้ จะเห็นไดเฉพาะ users ที่ไดรับสิทธิ์ mac allow เทานั้น ถาถูกเลือกใน แบบที่ 2 Mac allow message นี้ จะมีขอความตอนรับ 2 step *เปนขอความเพื่อให users ระดับ vip mac allow ไดอานและทําความเขาใจสิทธิ์พิเศษของ users เอง เปนขอความตอนรับ พรอมกับคลิก link ให users vip mac allow ได enjoy! กัน .

iptable โคดคําสั่งยังไมหมด และ samba ยังไมไดติดตั้ง กรุณารอสักชวงหนึ่งกอนครับ <เดี่ยวทําคูมือเพิ่มตออีก > พักเหนื่อยอีกรอบกอน เหลือแค 2 เรื่อง เหมือนเดิมนี้ละครับ .ยังไมเสร็จ มีอีกครับ สําหรับ no! service! ที่ทานเจอ ผมเอาเพิ่มไวกอน ขี้เกียจ Capture รูปมาเรื่องใหม เพราะเวลาทําคูมือ ใหมกับ ปุม function ที่เพิ่มเขา มันจะตอง Cap ใหมไปพรอมๆกัน แถมปุม register ลงทะเบียน ฐานขอมูลบน portsproDB ก็เพิ่มมาอีก 1 เปน 15 table ก็เลยเพิ่มกอน แตตัว Register จะเพิ่มที่หลังในคูมือ จะไดทําเจา 2 package ที่เหลือนี้สักกะที แตหมดแลว โซนของ Squid Proxy Server ที่ไดติดตั้งมาตามคูมือทั้งหมด พอแลวเรื่องการเพิ่มเติม ผมอยากใหระบบมันใชงาน squid proxy ไดอยางเต็มที่ เลยปลอยของกอน สวนทานใดที่กําลังจะท า script ไฟล การติดตั้ง PHPwifi กรุณารอใหคูมือเสร็จกอนครับ เพราะ firewall.