วันศุกร์ที่ 11 มกราคม พ.ศ. 2556

MiniHotSpot Ubuntu



เป็นสคริปติดตั้ง แต่มีคำอธิบายเอาไว้ พอเข้าใจ สำหรับไว้ศึกษา

ติดตั้งบน ubuntu server 10.04 amd64 (64bit) เท่านั้น
ลง ubuntu server เสร็จแล้วตั้งไอพีออกเน็ต
# nano /etc/network/interfaces

ใส่ไอพีของท่านนะครับ บันทึกแล้วทดสอบ ping หรือทดสอบยังไงก็ได้ ให้รู้ว่าออกเน็ตได้แน่นอน
auto eth0
iface eth0 inet static
address 192.168.10.5
netmask 255.255.255.0
gateway 192.168.10.1

* เซิฟเวอร์ต้องต่อเน็ต และออกเน็ตได้ เพราะต้องลงแพ็คเกจบางอย่าง

--------------------
การติดตั้ง มีขั้นตอนนิดหน่อย
แตกไฟล์ NostAuthen1.2b_amd64.tar.gz แล้วสั่ง
# ./install.sh

ระหว่างนี้ จะมีขั้นตอนให้เลือกลงชุดแพ็คเกจ จำเป็นต้องเลือกตามข้างล่าง ส่วนอื่น ๆ แล้วแต่จะใช้
- DNS Server
- LAMP Server

ถ้ามีการให้ป้อนข้อมูล ก็ทำตามขั้นตอนไปเรื่อย ๆ รอจน เสร็จ เครื่องจะ Reboot

เมื่อรีบูตกลับมาแล้วสั่ง ./install.sh อีกครั้ง คราวนี้จะรอนานหน่อย เพราะต้องแพท iptables ให้รองรับ Layer7 imq ipp2p ipset (เคอร์เนล คอมไพล์มาแล้ว)
รอจนถึงขั้นตอนตั้งค่า จะให้ตั้งไอพี ก็ทำตามขั้นตอนหรือกด Enter ผ่านไปก็ได้

เสร็จแล้วจะ Reboot อีกครั้ง เป็นอันเสร็จ
--------------------

เข้าจัดการระบบ
https:///admin/

ผมทำเครื่องมือไว้ให้สองอย่าง
./coova_wizard.sh <-- span="span">เป็นตัวช่วยตั้ง IP DNS และอื่น ๆ เกี่ยวกับ coova
./mysql_pass.sh   <-- span="span">ใช้แก้ไขรหัสผ่านฐานข้อมูล เมื่อท่านต้องการเปลี่ยนรหัสผ่าน ไว้กันข้อผิดพลาด จะได้ไม่ต้องเปิดไฟล์มาแก้ เพราะมีหลายไฟล์

ทดสอบลงบน vbox ใช้เวลาประมาณ 10 นาที

แตกต่างจากเวอร์ชั่นเดิมคือ
- Ubuntu Server 10.04 64 Bit
- Layer7,IMQ,ipp2p,ipset (ไว้บล๊อคบิต และทำ Qos ส่วน Firewall อยู่ในที่ /etc/chilli/)
- 

ตัวจัดการระบบ ที่แก้ไขและเพิ่มใหม่
- การกำหนดจำนวนเครื่องใช้งาน ต่อ 1 user << เพิ่มใหม่
- ตั้งหน้าเว็บรีไดเร็ค แบบบังครับหลังล๊อกอินเสร็จ ตามกลุ่ม << เพิ่มใหม่
- เพิ่มการกำหนดโปรไฟล์แบบปริมาณข้อมูล / วัน / เดือน << เพิ่มใหม่
- สามารถแก้ไขกลุ่มผู้ใช้ได้ << เพิ่มใหม่
- แก้ไขคุณสมบัติของ User รายบุคคล << เพิ่มใหม่
- แก้ไข Attribute ของแต่ละ User ได้

- หน้าเทมเพลตบัตรเอา Modal ออกไม่ให้บัง เวลาแก้ไข << แก้ไข
- แสดงชื่อโปรไฟล์ ในรายละเอียด << แก้ไข
- การแสดงวันหมดอายุของโปรไฟล์ /ครั้ง /วัน / เดือน/ (ในรายละเอียดตัวจัดการ และ ป๊อบอัพ) << แก้ไข
- Text editor อัพเวอร์ชั่นใหม่ เนื่องจากใส่รูปไม่ได้ << แก้ไข
- การแสดงผลหน้าล๊อกอิน ที่ยังไม่สมบูรณ์สำหรับ IE ให้แสดงได้สมบูรณ์ขึ้น << แก้ไข
- เปลี่ยนการแสดงผลใน ผู้ใช้ออนไลน์ ให้แสดง IP และ MAC << แก้ไข
- เมื่อเปลี่ยนรหัสผ่าน ข้อมูลผู้ใช้จะหายไป  << แก้ไข

สิ่งที่ไม่ได้ทำมาให้ ต้องใช้วิทยายุทธของท่าน ให้ติดตั้งเพิ่มเอาครับ
- Syslog-ng
- โปรแกรมมอนิเตอร์ต่าง lightsquid , phpsysinfo และ ฯ
- phpmyadmin

credit  เอาไฟล์เก่า บางส่วน จากท่านที่อยู่ใน linuxthai มาแก้ไข ดัดแปลงให้ใช้กับ coova 
Firewall : จากที่นี่ http://www.linuxthai.org/forum/index.php?topic=6593.15
Squid : squid.conf by Mazzero


แก้ปัญหาเปลี่ยนพาสไม่ได้นะครับแก้ 2 ไฟล์คือ
ไฟล์แรก /opt/hotspot/admin/system/nostradius/controllers/gologin.php บรรทัดที่ 245
            $user_data['username'] = $username;
   
เพิ่ม                             $user_data['password'] = $new_passowrd;

ไฟล์ที่2 ไปที่บรรทัด 324 /opt/hotspot/admin/system/nostradius/models/signupmodels.php 
 
เพิ่ม                           $user_data['billingplan'] = $billingplan_name;


เท่านี้ user ก็สามารถเปลี่ยนพาสเองได้แล้วครับ ลองทดสอบกันดูนะครับ 


ไฟล์ loginform.php ลิ้งค์ผิดครับ บรรทัด 50

แก้
 /hotspot/help/
เป็น
 hotspot/index.php/help

ใช้คำสั่งนี้ก็ได้ครับ

Ubuntu
โค๊ด:
sed -i "s/href=\"\/hotspot\/help\"/href=\"\/hotspot\/index.php\/help\"/g" /opt/hotspot/admin/templates/hotspotlogin/nostx/loginform.php

ClearOS
โค๊ด:
sed -i "s/href=\"\/hotspot\/help\"/href=\"\/hotspot\/index.php\/help\"/g" /var/webconfig/htdocs/hotspot/templates/hotspotlogin/nostx/loginform.php


เปิด message ดู

Nov 13 06:44:02 localhost kernel: [523732.589985] layer7: couldn't get conntrack.
Nov 13 06:44:02 localhost kernel: [523732.589994] layer7: couldn't get conntrack.
Nov 13 06:44:02 localhost kernel: [523732.589998] layer7: couldn't get conntrack.
Nov 13 06:44:02 localhost kernel: [523732.590005] layer7: couldn't get conntrack.

ชิ เต็มไปหมด ขนาด 2GB กว่า ๆ - -*

เหมือนมันจะบอกว่า "
ควบคุมไม่อยู่" ตัวไหนหลุดหว่า ยาวเหยียดเลยมีแต่ข้อความแบบนี้ขึ้นเต็มไปหมด รกดีจริง

หาวิธีแก้อยู่ครับ ดูแล้วมันเขียน log ทุกวินาทีผิดปกติ

รบกวนผู้รู้ช่วยหน่อยครับ คือผมติดตั้งใช้งานในโรงพยาบาลมา 15 วันแล้วครับทุกอย่างโอเค ติดอย่างเดียวคือผู้ใช้งานล๊อกเอ้าท์ได้บ้างไม่ได้บ้างไม่รู้จะแก้อย่างไร

ทำลิ้งค์ให้คลิกจะชัวกว่าปิดบราวเซอร์ล๊อคเอ้าท์ บางทีมันก็ไม่ได้ล๊อคเอาท์ให้ เพราะบราวเซอร์หยุดทำงานไปซะก่อน

แก้ไขไฟล์นี้ บรรทัด 25
/opt/hotspot/admin/assets/js/gologin/jslogin.js

เปลี่ยนให้เป็น id แบบนี้ครับ เพื่อให้ตรวจสอบ id เท่านั้น
var logout_link = $('a[
id=logout]');

เวลาทำลิ้งค์
ออกจากระบบ

ทำใน html editor ก็ได้ครับ เมนู ตั้งค่าระบบ -> ตั้งค่าทั่วไป ดูตามรูปที่แนบมาครับ



ที่จริงเป็นเรื่องที่หลายท่านทราบอยู่แล้ว แต่ยังมีอีกหลายท่านที่เพิ่งเริ่มต้นกับ Ubuntu อาจจะสงสัย

ว่าจะติดตั้งระบบกราฟิกบน Ubuntu Server ยังไง?

คำตอบง่ายที่สุดคือ sudo apt-get install ubuntu-desktop

หรือ sudo aptitude install ubuntu-desktop จบ

แต่ผมคิดว่าถ้าอยากใช้ทำ server มีคำตอบที่ดีกว่านั้นครับ

เลยเขียนไว้เป็นบันทึกเผื่อมีใครมาถามเป็น FAQ ที่คนถามบ่อย

ถ้าอยากติดตั้งระบบกราฟิกบน Server โดยที่ไม่ต้องการส่วนประกอบอื่นๆ ที่อาจไม่จำเป็น

ซึ่งเหมาะกับคนที่จะใช้ทำ Server อย่างเดียวและบำรุงรักษาด้วยระบบกราฟิก

ดังนั้น ไม่จำเป็นจะต้องติดตั้งทุกอย่าง ติดตั้งเฉพาะส่วนประกอบหลักเท่านั้น

เราเรียกการติดตั้งแบบนี้ว่า "ติดตั้งโดยละโปรแกรมแนะนำ" (without recommends)
ซึ่งมีประโยชน์มากสำหรับคนที่ต้องการระบบที่ใช้เพียงเท่าที่จำเป็นหรืออยากได้

ให้สังเกตการใช้พารามิเตอร์เปรียบเทียบกับ คำสั่งข้างต้นครับ
sudo apt-get install --no-install-recommends ubuntu-desktop
หรือ
sudo aptitude install -R ubuntu-desktop
ลองสังเกตระหว่างการใส่พารามิเตอร์ กับไม่ใส่ดูครับ จำนวนแพกเกจแตกต่างกัน
เท่านี้ก็ได้ระบบกราฟิกเท่าที่จำเป็น หากอยากได้อะไรเพิ่มก็ติดตั้งภายหลังก็ได้ครับ

ถ้าอยากใช้เพื่อการทำ Server เป็นหลักจริงๆ ผมแนะนำการติดตั้งแบบนี้ครับ

ถ้าใครต้องการชุดเล็กกว่าข้างต้นอีก แทน ubuntu-desktop เป็น gnome-session ครับ
Trendy Teddy


By Linuxthai.org

ไม่มีความคิดเห็น:

แสดงความคิดเห็น