Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

137
Setup Ubuntu 8.04.1 Server ( ไไไไไไไ ไไไ ไไไ Lan) Remark Network Card 2 ไไ 1. Insert Disk Ubuntu 8.04.1 Server Select English 2. Select Install Ubuntu Server

Transcript of Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Page 1: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Setup Ubuntu 8.04.1 Server ( ไม่�ต้�อง ต้�อ สาย Lan)

Remark Network Card 2 ใบ

1. Insert Disk Ubuntu 8.04.1 Server Select English

2. Select Install Ubuntu Server

Page 2: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

3. Select English

4. Select Other

Page 3: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

5. ให้� Select Thailand โดยการกดต้�ว T 5 คร��งนะคร�บ

6. Select No

Page 4: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

7. Select Thailand

8. และ Thailand

Page 5: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

9. Select Atl+Shift

10. Lan Card Select eth0

Page 6: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

11. Select Configure network manually

12. ใส� IP address ต้าม่การใช้�งาน

Page 7: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

13. ใส� Netmask ต้าม่การใช้�งาน

14. ใส� Gateway ต้าม่การใช้�งาน

Page 8: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

15. ใส� DNS ต้าม่การใช้�งาน

16. ใส� Hostname ต้าม่การใช้�งาน

Page 9: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

17. ใส� Domain name ต้าม่การใช้�งาน (ถ้�าไม่�ม่� Continue ไปเลยคร�บ)

18. Select Guided w use entire disk

Page 10: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

19. Select All Partition

20. Select Yes For Begin Format

Page 11: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

21. Begin Format & Install

22. ใส� Full Name New User

Page 12: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

23. ใส� User Name

24. ใส� Password

Page 13: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

25. ใส� Password Again

26. Enter ผ่�านไปเลยคร�บ

Page 14: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

27. Select LAMP Server & OpenSSH Server

28. ใส� Password Mysql == mysqlroot

Page 15: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

29. ใส� Password Mysql Again

30. ทำ"าการต้#ดต้��งต้�อไปคร�บ

Page 16: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

31. เร�ยบร�อยแล�วคร�บ เอา CD ออก Select Continue เพื่%&อ Restart

32. ห้ล�งจาก Restart แล�ว Login ด�วย User Password ทำ�&สร�างไว� (ต้�อสาย Lan ได�แล�วคร�บ)

Page 17: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

33. ห้ล�งจาก Login ด�วย User Password ทำ�&สร�างไว�

User Password ที่��สร้�างไว้�ไม่�สาม่าร้ถใช้�คำ�าส��งต่�างๆของ root ได้� ลองส�งเกต่ด้�ว้�าจะม่�ต่�ว้ $ ต่�อที่�าย จะต่�องแปลงร้�างเป"น root กอ�นคำร้�บ

# sudo passwd root >>> พิ&ม่พิ'คำ�าส��ง[sudo] password for khoonin: >>> ให้�ใส�ร้ห้�สของย�สเซอร้'ใช้�งานEnter new UNIX password: >>> ใส�ร้ห้�ส root

Retype new UNIX password: >>> ย*นย�นร้ห้�ส root

Passwd: password updated successfully >>> เร้�ยบร้�อยแล�ว้

Setup Network ต้าม่ทำ�&ใช้�งานนะคร�บ

# nano /etc/network/interfaces

auto eth0iface eth0 inet static address 192.168.0.100 netmask 255.255.255.0 network 192.168.0.0 broadcast 192.168.0.255 gateway 192.168.0.1 # dns-* options are implemented by the resolvconf package, if installed dns-nameservers 192.168.0.1

auto eth1 >>> เพิ&�ม่

Save แล�ว Exit ได�เลย

Page 18: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

34. ทำดลองออก Internet ด�วย ค"าส�&ง ping www.yahoo.com

Page 19: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Remote Server ด�วย SSH

Page 20: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Login ด�วย SSH เร�ยบร�อย

Page 21: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Update Ubuntu Server

# apt-get update

Upgrade Ubuntu Server

# apt-get -y upgrade

Page 22: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

แก�ไข ip_forward

เร้าต่�องที่�าให้�เคำร้*�องน�+ที่�าห้น�าที่��เป"นเร้าเต่อร้'เพิ*�อ Forward packet ที่,กคำร้�+งที่��ร้ �บ�ต่เคำร้*�องให้�แก�ไขแฟ้.ม่ /etc/sysctl.conf

# nano /etc/sysctl.conf

# Uncomment the next line to enable TCP/IP SYN cookies# This disables TCP Window Scaling (http://lkml.org/lkml/2008/2/5/167)#net.ipv4.tcp_syncookies=1

# Uncomment the next line to enable packet forwarding for IPv4#net.ipv4.ip_forward=1 >>> เอา # ข�างห้น�าออก

# Uncomment the next line to enable packet forwarding for IPv6#net.ipv6.ip_forward=1

Save แล�ว Exit ได�เลย

Page 23: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ส�&งทำ"างานโดยไม่�ต้�อง Restart

# echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward

คำ�าที่��ต่อบกล�บต่�องได้� 1

เป)ดการทำ"างาน TUN/TAP device

# nano /etc/modules

# /etc/modules: kernel modules to load at boot time.## This file contains the names of kernel modules that should be loaded

Page 24: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

# at boot time, one per line. Lines beginning with "#" are ignored.

looplpfusetun >>> เพิ&�ม่

Save แล�ว Exit ได�เลย

ส�&งทำ"างานโดยไม่�ต้�อง Restart

# modprobe tun

Update ว�นเวลาของ Server ให้�ทำ"างานทำ*กคร��งทำ�&เป)ดเคร%&อง

Page 25: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

# nano /etc/rc.local

#!/bin/sh -e## rc.local## This script is executed at the end of each multiuser runlevel.# Make sure that the script will "exit 0" on success or any other# value on error.## In order to enable or disable this script just change the execution# bits.## By default this script does nothing.

/usr/sbin/ntpdate time.navy.mi.th >>> เพิ&�ม่

exit 0

Save แล�ว Exit ได�เลย

Thaicert Nectecclock.thaicert.nectec.or.th

ม่าต้รว#ทำยาแห้�งช้าต้#time1.nimt.or.thtime2.nimt.or.thtime3.nimt.or.th

อ*ทำกศาสต้ร, กองทำ�พื่เร%อtime.navy.mi.thtime2.navy.mi.thtime3.navy.mi.th

Setup Chillispot

# apt-get -y install chillispot

Page 26: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

IP address of radius server 1: == 127.0.0.1

Radius shared secret: == radiussecret

Page 27: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Ethernet interface for DHCP to listen: == eth1

URL of UAM server: == https://192.168.3.1/uam/hotspotlogin.php

Page 28: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

URL of UAM homepage: == https://192.168.3.1/uam/index.php

Shared password between chillispot and webserver: == uamsecret

Page 29: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ต้#ดต้��ง chillispot เร�ยบร�อยแล�วคร�บ

เป)ดการใช้�งาน Chillispot

Page 30: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

# nano /etc/default/chillispot

# /etc/default/chillispot## Enable on system start?# Change to 1 if you want it to be enabled.# Please make sure you have configured chillispot first.ENABLED=0 >>> แก�ให้�เป"น ENABLED=1## chillispot default configurationCHILLICFG=/etc/chilli.conf## daemon argumentsDAEMON_ARGS="--conf $CHILLICFG"

Save แล�ว Exit ได�เลย

แก�ไข File Chilli.conf (โดยการค�นห้า)

Page 31: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

# nano /etc/chilli.conf

#net 192.168.182.0/24 >>> แก�ให้�เป"น net 192.168.3.0/24radiusserver1 127.0.0.1radiusserver2 127.0.0.1radiussecret radiussecretdhcpif eth1uamserver https://192.168.3.1/uam/hotspotlogin.phpuamhomepage https://192.168.3.1/uam/index.phpuamsecret uamsecret#uamlisten 192.168.182.1 >>> แก�ให้�เป"น uamlisten 192.168.3.1

#uamallowed www.chillispot.org,10.11.12.0/24 >>> แก�ให้�เป"น uamallowed www.????.com,192.168.3.0/24 (ออกเน-ต้ได�โดยไม่�ต้#ดบล-อก)

Save แล�ว Exit ได�เลย

Page 32: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ต้#ดต้��ง Friewall

# cp /usr/share/doc/chillispot/firewall.iptables /etc/init.d/chilli.iptables# chmod a+x /etc/init.d/chilli.iptables# ln -s ../init.d/chilli.iptables /etc/rcS.d/S41chilli.iptables

ส�&ง Script firewall ทำ"างาน

# /etc/init.d/chilli.iptables

ส�&ง Restart ChilliSpot

# /etc/init.d/chillispot restart

Page 33: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

แก�ไข File chilli.iptables เพื่%&อ SSH เข�าทำาง eth1 ได�

# nano /etc/init.d/chilli.iptables

EXTIF="eth0"INTIF="eth1"

$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,ESTABLISHED -j ACCEPT

#Allow releated, established and ssh on $EXTIF. Reject everything else.$IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 22 --syn -j ACCEPT$IPTABLES -A INPUT -i $EXTIF -j REJECT

>>> เพิ&�ม่ 2 บร้ร้ที่�ด้ข�างล�างน�+คำร้�บ#Allow releated, established and ssh on $INTIF.$IPTABLES -A INPUT -i tun0 -p tcp -m tcp --dport 22 --syn -j ACCEPT

#Allow related and established from $INTIF. Drop everything else.$IPTABLES -A INPUT -i $INTIF -j DROP

Save แล�ว Exit ได�เลย

Page 34: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ส�&ง Script firewall ทำ"างาน Again

# /etc/init.d/chilli.iptables

ส�&ง Restart ChilliSpot Again

# /etc/init.d/chillispot restart

Page 35: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ChilliSpot Start เร�ยบร�อยแล�ว ย�าย Notebook ม่าต้�อก�บ Network วง etc1 ได� IP Address จาก Server แล�ว

Remote SSH ไปทำ�& IP eth1 ของ Server

Page 36: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ต้#ดต้��ง Radius Server

# apt-get -y install freeradius freeradius-mysql freeradius-dialupadmin

Page 37: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ต้#ดต้��ง phpMyAdmin

Page 38: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

แก� Config phpMyAdmin

ใช้� Edit Plus แก�บรรทำ�ดทำ�& 73 ให้�เป.น http

ทำดสอบ phpMyAdmin http://192.168.3.1/phpMyAdmin-2.6.4/

Restart Apache

Page 39: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

# /etc/init.d/apache2 restart

สร�าง Database freeradius

# mysql -u root –p >>> เข�าใช้�งาน Mysql

Enter password: mysqlroot >>> password ที่��เร้าต่�+งไว้�ต่อนต่&ด้ต่�+ง LAMPmysql> CREATE DATABASE radius;mysql> quit

ใส� Freeradius database schema ด�วยค"าส�&งด�งน��

# zcat /usr/share/doc/freeradius/examples/mysql.sql.gz | mysql -u root -p radiusEnter password: mysqlroot

Page 40: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

แก�ไขไห้� Freeradius ต้#ดต้�อก�บ Mysql ได�

# nano /etc/freeradius/sql.conf

sql { # Database type # Current supported are: rlm_sql_mysql, rlm_sql_postgresql, # rlm_sql_iodbc, rlm_sql_oracle, rlm_sql_unixodbc, rlm_sql_freetds driver = "rlm_sql_mysql"

# Connect info server = "localhost" login = "root" password = "rootpass" >>> แก�ให้�เป"น Password root ของเร้า # Database table configuration radius_db = "radius"

Save แล�ว Exit ได�เลย

Page 41: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

แก�ไข secret share ของ radius

# nano /etc/freeradius/clients.conf

# default, otherwise it's not a secret any more!## The secret can be any string, up to 31 characters in length.#secret = testing123 >>> แก�ให้�เป"น radiussecret## The short name is used as an alias for the fully qualified# domain name, or the IP address.

Save แล�ว Exit ได�เลย

Page 42: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ม่า Test Freeradius ก�นนะคร�บแต้�ต้�องสร�าง User ส"าห้ร�บทำดสอบก�อน

# nano /etc/freeradius/users

# #"John Doe" Cleartext-Password := "hello"# Reply-Message = "Hello, %u"

>>> Copy 2 บร้ร้ที่�ด้บนม่าแก�ไขคำร้�บ"John Doe" Auth-Type := Local, User-Password == "hello" Reply-Message = "Hello, %u"

## Dial user back and telnet to the default host for that port#

Page 43: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Save แล�ว Exit ได�เลย

Restart Server เลยคร�บ

# reboot

ถ้�าเก#ดป/ญห้าไม่�สาม่ารถ้ Remote Server eth1 ด�วย SSH ได�ให้� Repair

Network ทำ�&เคร%&อง Notebook จะให้�ด� Restart Notebook เลยคร�บ

ม่าต้�อก�นเลยคร�บ เช้-ค Config Freeradius ต้�อง Stop Freeradius ก�อนคร�บ

# /etc/init.d/freeradius stop

# freeradius -XXX -A

Page 44: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

บรรทำ�ดส*ดทำ�ายข1�นข�อความ่ Info: Ready to process requests. แสดงว�า OK แล�วคร�บ Crtl+C ออกเลยคร�บ (โอว, เยส)

ส�&ง Start Freeradius

# /etc/init.d/freeradius start

Page 45: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Test Authen radius (file)

# radtest "John Doe" hello 127.0.0.1 0 radiussecret

Sending Access-Request of id 153 to 127.0.0.1 port 1812 User-Name = "John Doe" User-Password = "hello" NAS-IP-Address = 255.255.255.255 NAS-Port = 0rad_recv: Access-Accept packet from host 127.0.0.1:1812, id=153, length=37 Reply-Message = "Hello, John Doe"

ข1�นข�อความ่ต้อบร�บว�า rad_recv: Access-Accept แสดงว�า OK แล�วคร�บ (โอว, เยส) อ�กซั�กทำ�&

เปล�&ยน Freeradius ไห้�ม่าใช้� Database

# nano /etc/freeradius/radiusd.conf

>>> คำ�นห้าคำ�าน�+คำร้�บ See "Authorization Queries" in sql.conf

# Read the 'users' file Files >>> แก�ไห้�เป"น # Files (ใส� #)

# # Look in an SQL database. The schema of the database # is meant to mirror the "users" file. # # See "Authorization Queries" in sql.conf# sql >>> แก�ไห้�เป"น sql (# เอาออก)

Page 46: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

#

Save แล�ว Exit ได�เลย

Add user ลงใน Mysql คร�บ (Username == test, Password == secret)

# echo "INSERT INTO radcheck (UserName, Attribute, Value) VALUES ('test', 'Password', 'secret');" | mysql -u root -p radius# Enter password: mysqlroot

Page 47: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ส�&ง Restart Freeradius

# /etc/init.d/freeradius restart

Test Authen radius (SQL)

# radtest test secret 127.0.0.1 0 radiussecret

Sending Access-Request of id 80 to 127.0.0.1 port 1812 User-Name = "test" User-Password = "secret" NAS-IP-Address = 255.255.255.255 NAS-Port = 0rad_recv: Access-Accept packet from host 127.0.0.1:1812, id=80, length=20

Page 48: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ข1�นข�อความ่ต้อบร�บว�า rad_recv: Access-Accept แสดงว�า OK แล�วคร�บ (โอว, เยส) ๆๆๆ

แก�ไข SQL Logging เพื่%&อเวลาใช้�งาน ezradius

# nano /etc/freeradius/sql.conf

postauth_query = "INSERT into ${postauth_table} (user, pass, reply, dat$

# # Set to 'yes' to read radius clients from the database ('nas' table) #readclients = yes >>> แก�ไห้�เป"น readclients = yes (# เอาออก)}

Save แล�ว Exit ได�เลย

Page 49: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

แก�ไข File radius.conf ต้�อเลยคร�บ

# nano /etc/freeradius/radiusd.conf

>>> คำ�นห้าคำ�าน�+คำร้�บ See "Accounting queries" in sql.conf

# Log traffic to an SQL database. # # See "Accounting queries" in sql.conf# sql >>> แก�ไห้�เป"น sql (# เอาออก)

# # Instead of sending the query to the SQL server, # write it into a log file.

>>> คำ�นห้าคำ�าน�+คำร้�บ See "Authentication Logging Queries" in sql.conf

# After authenticating the user, do another SQL query. # # See "Authentication Logging Queries" in sql.conf# sql >>> แก�ไห้�เป"น sql (# เอาออก)

# # Instead of sending the query to the SQL server, # write it into a log file.

Save แล�ว Exit ได�เลย

Page 50: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ส�&ง Restart Freeradius

# /etc/init.d/freeradius restart

Test Authen radius (SQL) Again

# radtest test secret 127.0.0.1 0 radiussecret

Sending Access-Request of id 80 to 127.0.0.1 port 1812 User-Name = "test" User-Password = "secret" NAS-IP-Address = 255.255.255.255 NAS-Port = 0rad_recv: Access-Accept packet from host 127.0.0.1:1812, id=80, length=20

ข1�นข�อความ่ต้อบร�บว�า rad_recv: Access-Accept แสดงว�า OK แล�วคร�บ

Page 51: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ต้#ดต้��ง SSL เป.น Modules ของ Apache

# apt-get install -y libapache2-mod-auth-mysql

สร�าง Certificate

# apt-get -y install ssl-cert

Page 52: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

สร�าง Folder เก-บ Certificate

# mkdir /etc/apache2/ssl

สร�าง Certificate

# sudo make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem

Page 53: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

เร�ยบร�อยแล�วคร�บ เป)ดใช้�งาน SSL

# sudo a2enmod ssl

ร�บค�า Config ให้ม่�

# /etc/init.d/apache2 force-reload

Page 54: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

สร�าง virtualhost ไว� Link SSL

Upload File hotspot จาก Folder File Config ไปที่� /etc/apache2/sites-available/

แก�ไข File hotspot

# nano /etc/apache2/sites-available/hotspot

NameVirtualHost 192.168.3.1:443 >>> แก�ให้�เป"น IP eth1 ของ Server

<VirtualHost 192.168.3.1:443> >>> แก�ให้�เป"น IP eth1 ของ Server ServerAdmin [email protected] DocumentRoot "/var/www/hotspot" ServerName "192.168.3.1" >>> แก�ให้�เป"น IP eth1 ของ Server

Page 55: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Save แล�ว Exit ได�เลย

ส�&งให้� virtualhost ทำ"างาน

# sudo a2ensite hotspot

# /etc/init.d/apache2 reload

Page 56: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Open Port

Upload File ports.conf จาก Folder file config ไปที่� /etc/apache2/

แก�ไข File ports.conf

# nano /etc/apache2/ports.conf

#Listen 80##<IfModule mod_ssl.c># Listen 443#</IfModule>Listen 192.168.3.1:80 >>> แก�ให้�เป"น IP eth1 ของ Server

Listen 192.168.3.1:443 >>> แก�ให้�เป"น IP eth1 ของ Server

Save แล�ว Exit ได�เลย

Page 57: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

แก�ไข File default

# nano /etc/apache2/sites-available/default

NameVirtualHost * >>> แก�ให้�เป"น NameVirtualHost *:80

<VirtualHost *> >>> แก�ให้�เป"น <VirtualHost *:80> ServerAdmin webmaster@localhost

DocumentRoot /var/www/ <Directory /> Options FollowSymLinks AllowOverride None

Save แล�ว Exit ได�เลย

Page 58: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

แก�ไข File apache2.conf

# nano /etc/apache2/apache2.conf

# Do NOT add a slash at the end of the directory path.#ServerRoot "/etc/apache2"ServerName 192.168.3.1 >>> เพิ&�ม่## The accept serialization lock file MUST BE STORED ON A LOCAL DISK.

Save แล�ว Exit ได�เลย

Page 59: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

แก�ไข File apache2.conf

# nano /etc/hosts

127.0.0.1 localhost192.168.0.100 THAIEN-HOTSPOT >>> แก�ให้�เป"น 192.168.3.1 THAIEN-HOTSPOT

# The following lines are desirable for IPv6 capable hosts::1 ip6-localhost ip6-loopback

Save แล�ว Exit ได�เลย

Page 60: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Restart Apache

# /etc/init.d/apache2 restart

Page 61: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ทำ"าการ Upload Hotspot Login

1. เข�าไปที่�� /var/www/ สร้�าง Floder hotspot

2. Upload Floder uam จาก โปร้แกร้ม่ที่��ใช้�ในการ้ที่�า\web\ ไปที่�� /var/www/hotspot/

3. แก�ไข File conStatus.php อย��ที่�� โปร้แกร้ม่ที่��ใช้�ในการ้ที่�า\web\uam\Connections

4. แล�ว้ Upload ไปที่�บของเด้&ม่

Page 62: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

5. แก�ไข File index.php อย��ที่�� โปร้แกร้ม่ที่��ใช้�ในการ้ที่�า\web\uam\

6. แล�ว้ Upload ไปที่�บของเด้&ม่

7. ที่ด้สอบห้น�า login hotspot http://google.co.th

Page 63: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

8. แก�ภาษา โด้ยการ้ Upload File charset จาก Folder File Config ไปที่� /etc/apache2/conf.d/

Page 64: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Restart Apache

# /etc/init.d/apache2 restart

9. ที่ด้สอบห้น�าอ�กที่� login hotspot http://google.co.th

10. ที่ด้สอบออก Internet โด้ยใช้� User Password ที่��เร้าสร้�างไว้� (User == test Password == secret)

Page 65: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ต้#ดต้��ง ezradius

Page 66: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Upload Floder manage จาก โปร้แกร้ม่ที่��ใช้�ในการ้ที่�า\web\ ไปที่�� /var/www/

ใช้�ค"าส�&งเพื่%&อแก�ไขเจ�าของโฟลเดอร,นะคร�บ โดยใช้�ค"าส�&ง chown

# chown -R www-data:www-data /var/www/manage

เข�า Web ezradius http://192.168.3.1/manage/

Page 67: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Config ezradiusก�อนอ*�นต่�องม่าร้ะบ,ต่�ว้ฐานข�อม่�ลของ radius ก�นก�อนนะคำร้�บโด้ยให้�คำล&3กที่�� Tool > Config editor

แล�ว้ให้�ที่�าการ้แก�ไขต่าม่ร้�ปเลยนะคำร้�บ แล�ว้อย�าล*ม่ save ล�ะ

การจ�ดการก�บ group และ user

Page 68: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

การเพื่#&ม่ group

ก�อนที่��เร้าจะที่�าการ้เร้&�ม่เพิ&�ม่ group เพิ*�อแยกการ้ใช้�งานของ user ออกเป"นกล,�ม่งาน เช้�น อาจาร้ย' , น�กเร้�ยน เร้าต่�องม่าที่�าคำว้าม่ร้� �จ�กก�บ Attribute ของ radius ก�อนซ4�งจะที่�าห้น�าที่��ในการ้ คำว้บคำ,ม่การ้ใช้�งานต่�าง ๆ ของร้ะบบของเร้านะคำร้�บ เร้าจะได้�ปร้�บแต่�งการ้ใช้�งานได้�ต่าม่คำว้าม่เห้ม่าะ อย�างเช้�น อาจจะอน,ญาต่ให้�อาจาร้ย' ห้ร้*อห้�ว้ห้น�างานม่�คำ�าการ้ download/upload ม่ากกว้�าน�กเร้�ยนห้ร้*อผู้��ใช้�งานที่��ว้ไป เอาล�ะเร้าม่าด้�คำว้าม่ห้ม่ายของ Attribute ที่��จะน�าม่าใช้�งานก�นด้�กว้�านะคำร้�บ

ความ่ห้ม่ายของ Attribute ทำ�&น#ยม่น"าม่าใช้�งานในระบบ Chillispot

เร้&�ม่ต่�นการ้สร้�างกล,�ม่งานก�นเลยนะคำร้�บโด้ยไปที่�� Manage > Add > New Group

ให้�เล*อกต่าม่ร้�ปเลยนะคำร้�บAttribute : Simultaneous-Use คำ*อการ้ login ซ�อนก�นในที่��น��เร้าไม่�อน,ญาต่ให้�กล,�ม่น�+ Logig ซ�อนก�นนะคำร้�บ ด้�งน�+นให้�คำ�าPerator : :=และ Value : 1 (ห้ากต่�องการ้ซ�อนก�นได้�ให้� Value : 0)

Page 69: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

จากน�+นเร้าม่าเพิ&�ม่ Attribute ให้�กล,�ม่ของ teacher ก�นด้�กว้�านะคำร้�บ

ให้�คำล&3กที่�� add new attributr แล�ว้ให้�ใส�คำ�าต่าม่ร้�ปเลยนะคำร้�บ

เช้7คำการ้ใช้�งานที่,กนาที่� (60 ว้&นาที่�) ห้ากไม่�ใช้�งานให้� diconnect 15 นาที่�(900 ว้&นาที่�)

เว้ลาที่��ใช้�งานต่�อคำร้�+ง 5 ช้��ว้โม่ง (18000 นาที่�) ห้ล�งจาก login ให้� redirect ไปย�งเว้7บ http://www.srp.ac.th

ก�าห้นด้คำ�า download เที่�าก�บ 1024kbps ก�าห้นด้คำ�า upload เที่�าก�บ 512kbps

Page 70: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

เม่*�อที่�าการ้เพิ&�ม่ Attribute แล�ว้ห้ากไม่�ม่�อะไร้ผู้&ด้พิลาด้ก7จะได้�ร้�ป

การจ�ดการ user

เร้&�ม่ต่�นการ้สร้�างผู้��ใช้�งานก�นเลยนะคำร้�บ โด้ยไปที่�� Manage > Add > New User

ใส�ร้ายละเอ�ยด้ของผู้��ใช้�ต่าม่ร้�ปเลขนะคำร้�บ จากน�+นก7 Add user แล�ว้น�าไปใช้�งานได้�เลยคำร้�บ

Page 71: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ไปลองใช้� knoonin ก�นด้�กว้�านะคำร้�บว้�าจะเป"นอย�างที่��เร้า set Attribute ไว้�ห้ร้*อเปล�าที่ด้ลองเป8ด้ IE นะคำร้�บ

แสด้งว้�า Certificatr ssl ของเร้าที่�างานแล�ว้นะคำร้�บ ให้�เล*อกที่�� Continue to this

website เลยนะคำร้�บ

Page 72: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

จะม่าเจอห้น�าต่�างของห้น�า index.php ที่��เร้าสร้�างไว้�ที่,กคำร้�งที่��ล9อคำอ&นนะคำร้�บซ4�งเร้าสาม่าร้ถแก�ไขห้น�าน�+แล�ว้ใช้�เป"นปร้ะกาศต่�าง ๆ ของห้น�ว้ยงานได้�นะคำร้�บ เช้�นแจ�งการ้ปร้ะช้,ม่ (เพิร้าะย�งไงห้ากใช้�อ&นเต่อร้'เน7ต่ก7ต่�องม่าเจอห้น�าน�+ก�อน) จากน�+นเล*อก เข�าส��ร้ะบบ

เย� ๆๆ ได้�แล�ว้คำ�ะ ใช้�งานได้� 5 ช้��ว้โม่ง เพิร้าะอย��ในกล,�ม่ของ teacher แล�ว้ย�ง redirect

ห้น�าแร้กที่�� http://www.srp.ac.ch คำร้บที่,กอย�างนะคำร้�บ

การใช้�งานส�วนต้�าง ๆ ของ ezradius

Page 73: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

User Onlineส�าห้ร้�บด้�ว้�า ณ ป<จจ,บ�นม่� user อะไร้ใช้�งานอย��บ�าง โด้ยไปที่�� View > Online users

จะได้�ด้�งร้�ป

****ห้ม่ายเห้ต้* ezRadius ****

Page 74: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

เปล�&ยนเป.น Version 1.1.4 and above เพื่%&อให้�สาม่ารถ้ไช้� Password MD5

ได�

เพื่#&ม่/แก�ไข user ไม่�ต้�องเล%อก Cleartext password

Page 75: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Add Port 3779 เพื่%&อ Kick User (1)

# nano /etc/init.d/chillispot

DESC="Chillispot captive portal"NAME=chillispotDAEMON=/usr/sbin/chilliDAEMON_ARGS="--conf /etc/chilli.conf" >>> แก�ไขให้�เป"น DAEMON_ARGS="--coaport3779 --conf /etc/chilli.conf"

PIDFILE=/var/run/$NAME.pidSCRIPTNAME=/etc/init.d/$NAME

Save แล�ว Exit ได�เลย

Page 76: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Add Port 3779 เพื่%&อ Kick User (2)

# nano /etc/chilli.conf

# TAG: macsuffix# Suffix to add to MAC address in order to form the username.# Normally you do not need to uncomment this tag.#macsuffix suffix

coaport 3779 >>> เพิ&�ม่

Save แล�ว Exit ได�เลย

Restart ChilliSpot (นานซั�กห้น�อย)

# /etc/init.d/chillispot restart

Page 77: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ด5การใช้�งานของ User ย�อนห้ล�ง

เร้าสาม่าร้ถด้�การ้ใช้�งานของ User ย�อนห้ล�งได้�โด้ยสาม่าร้ถร้ะบ,ว้�นที่�� ที่��ต่�องการ้ด้� ห้ร้*อ ช้*�อ User ที่��ต่�องการ้ ห้ร้*อที่�+งว้�นที่��และ user โด้ยในที่��น�+จะยกต่�ว้อย�างด้� user และว้�นที่��โด้ยให้�เล*อกที่�� Accounting > Per User and Date

ใส�ช้*�อ user ว้�นที่��เร้ &�ม่ และว้�นที่��ส&+นส,ด้ ต่าม่ร้�ป

จะได้�ร้ายละเอ�ยด้ ด้�งร้�ป

Page 78: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

การต้#ดต้��ง Transparent Proxy

เร้&�ม่ต่�นต่&ด้ต่�+ง squid ส�าห้ร้�บที่�าห้น�าที่��เก7บ cache และ sarg ไว้�ร้ายงานการ้ใช้�งานผู้�านห้น�าเว้7บ

# sudo apt-get -y install squid sarg

ห้ล�งจากต่&ด้ต่�+งแล�ว้ให้�แก�ไขที่��ไฟ้ล'ของ squid โด้ยใช้�คำ�าส��ง

# nano /etc/squid/squid.conf

โด้ยให้�แก�ไขด้�งน�+

Page 79: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

http_port 3128#cache_mem 8 MB#cache_dir ufs /var/spool/squid 100 16 256#acl our_networks src 192.168.2.0/24#http_access allow our_networks access.log /path/access.log squid#emulate_httpd_log off

>>> แก�เป"น (โด้ยใช้�ว้&ธี�คำ�นห้า)

http_port 3128 transparentcache_mem 64 MBcache_dir ufs /var/spool/squid 100 16 2000acl our_networks src 192.168.3.0/24http_access allow our_networks access.log /path/access.logemulate_httpd_log on>>> บร้ร้ที่�ด้ส,ด้ที่�ายvisible_hostname THAIEN-HOTSPOT >>>เพิ&�ม่

Save แล�ว Exit ได�เลย

ส�&งร�สต้าร,ทำ squid

# /etc/init.d/squid restart

Page 80: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

จากน�+นม่าที่�าให้� user เข�าใช้�งาน proxy นะคำร้�บโด้ยไปแก�ไขที่��ไฟ้ล' chilli.iptables

# nano /etc/init.d/chilli.iptables

#Allow releated, established and ssh on $EXTIF. Reject everything else.$IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 22 --syn -j ACCEPT$IPTABLES -A INPUT -i tun0 -p tcp -m tcp --dport 22 --syn -j ACCEPT$IPTABLES -A INPUT -i $EXTIF -j REJECT#Allow related and established from $INTIF. Drop everything else.$IPTABLES -A INPUT -i $INTIF -j DROP#Allow http and https on other interfaces (input).#This is only needed if authentication server is on same server as chilli$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 -p tcp -m tcp --dport 3990 --syn -j ACCEPT

>>> เพิ&�ม่เข�าไป#Allow Tranparent proxy $IPTABLES -A INPUT -p tcp -m tcp --dport 3128 --syn -j ACCEPT

#Allow everything on loopback interface.$IPTABLES -A INPUT -i lo -j ACCEPT

>>> เพิ&�ม่เข�าไป#Allow Tranparent proxy $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 192.168.3.0/16 --dport 80 -j RETURN$IPTABLES -t nat -A PREROUTING -i tun0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128$IPTABLES -t nat -A PREROUTING -i tun0 -p tcp -m tcp --dport 88 -j REDIRECT --to-ports 3128

Save แล�ว Exit ได�เลย

Page 81: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

การเพื่#&ม่ Port ต้�างๆให้� Redirect ไปทำ�& Proxy (เช้�น port 88)

# nano /etc/init.d/chilli.iptables

#Allow everything on loopback interface.$IPTABLES -A INPUT -i lo -j ACCEPT

#Allow Tranparent proxy $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 192.168.3.0/16 --dport 80 -j RETURN$IPTABLES -t nat -A PREROUTING -i tun0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 3128>>> เพิ&�ม่เข�าไป$IPTABLES -t nat -A PREROUTING -i tun0 -p tcp -m tcp --dport 88 -j REDIRECT --to-ports 3128

Save แล�ว Exit ได�เลย

Page 82: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

การเพื่#&ม่ port ให้�ผ่�าน Proxy ได� (เช้�น port 88)

# nano /etc/squid/squid.conf

>>>คำ�นห้าคำ�าน�+ acl to_localhost dst 127.0.0.0/8

#Recommended minimum configuration:acl all src 0.0.0.0/0.0.0.0acl manager proto cache_objectacl localhost src 127.0.0.1/255.255.255.255acl to_localhost dst 127.0.0.0/8acl SSL_ports port 443 # httpsacl SSL_ports port 563 # snewsacl SSL_ports port 873 # rsyncacl Safe_ports port 80 # httpacl Safe_ports port 88 # http cz >>>เพิ*�ม่บร้ร้ที่�ด้น�+acl Safe_ports port 21 # ftpacl Safe_ports port 443 # https

Page 83: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

acl Safe_ports port 70 # gopheracl Safe_ports port 210 # wais

Save แล�ว Exit ได�เลย

ส�&งร�สต้าร,ทำ squid

# /etc/init.d/squid restart

ส�&งให้� transparent ทำ"างาน

# /etc/init.d/chilli.iptables

ด5 access.log ของ Squid

ที่ด้ลองใช้�งาน internet ผู้�าน gateway server

Page 84: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

# tail /var/log/squid/access.log -f

Ctrl+c ออก

การด5รายงานของ SARG (Squid report)

ส��งให้� sarg ที่�างานได้�เลยโด้ย

# sarg

จากน�+นก7สาม่าร้ถเข�าด้�ร้ายงานการ้ใช้�เว้7บได้�เลยคำร้�บโด้ยด้�จาก IE ได้�เลขโด้ยพิ&ม่พิ'ว้�า http://192.168.3.1/squid-reports

Page 85: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ต้��งเวลาให้� sarg ทำ"างานผ่�าน crontab

# nano /etc/crontab

# m h dom mon dow user command17 * * * * root cd / && run-parts --report /etc/cron.hourly25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --repo$47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --repo$52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --repo$##sarg squid report0 * * * * root /usr/bin/sarg#Shut Down05 20 * * * root shutdown -h now

Save แล�ว Exit ได�เลย

Page 86: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Logrotate

Page 87: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

เป"นกลไกของร้ะบบปฏิ&บ�ต่&การ้ล�น,กซ'ที่��ช้�ว้ยลบ log file ที่��เก�ากว้�าออกไป แล�ว้สร้�างไฟ้ล' log

ข4+นให้ม่� ซ4�งม่�ผู้ลที่�าให้�ไฟ้ล' log ไม่�ให้ญ�ม่ากเก&นไป โด้ยการ้สร้�าง log file ม่าให้ม่�น� +นจะไปสร้�างซ�+าก�บไฟ้ล'เด้&ม่ จะม่�  option  ม่ากกม่ายให้�เร้าแก�ไข แต่� พิอสร้,ป ได้� คำร้าว้ๆ ด้�งน�+

1. Weekly-daily-monthly  ห้ม่ายถ4ง  ให้�ม่�การ้  rotate  ใน ที่,กๆ อาที่&ต่ย' (weekly) ห้ร้*อ ที่,กๆ ว้�น (daily)  ห้ร้*อ  เด้*อน (monthly)

2. rotate xx  ห้ม่ายถ4ง ส��งให้�ม่�การ้  rotate xx คำร้�+ง ก�อนลบไฟ้ล'เก�าที่&+งไป 3. compress  ห้ม่ายถ4ง ส��งให้�ม่�การ้  zip  ไฟ้ล'ที่��ถ�ก  rotate ไปแล�ว้ 4. delaycompress  ห้ม่ายถ4ง ส��งให้�ม่�การ้ช้ะลอการ้  zip  ไป 1 คำร้�+ง ที่�าให้�การ้

rotate คำร้�+งแร้กเป"นการ้เปล��ยนช้*�อไฟ้ล'เพิ�ยงอย�างเด้��ยว้ และจะถ�ก  zip ในการ้ rotate  ในคำร้�+งต่�อไป

5. notifemply-ifemply  ห้ม่ายถ4ง ไม่�ให้�ม่�การ้  rotate  เม่*�อ  log file  น�+นว้�าง

6. postrotate  เป"นการ้ก�าห้นด้ให้�ม่�การ้ร้�นคำ�าส��ง ห้ล�งจาก ที่��ม่�การ้  rotate ไปแล�ว้ 7. endscript เป"นการ้จบคำ�าส��งของ  postrotate

8. mail(address) เป"นการ้ส��งให้�ร้ะบบส�ง  log file  ให้�ผู้��ด้�แลร้ะบบที่าง  E-mail

9. prerotage/endscript เป"นการ้ก�าห้นด้ให้�ม่�การ้ร้�นคำ�าส��ง  ก�อน  ที่��จะม่�การ้ม่�การ้  rotate  ซ4�งจะเป"นแบบ  postrotate

Page 88: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

แก�ไข Logrotate squid

# nano /etc/logrotate.d/squid

/var/log/squid/access.log { daily compress delaycompress rotate 2 missingok nocreate sharedscripts# prerotate# test ! -x /usr/sbin/sarg-maint || /usr/sbin/sarg-maint# endscript# postrotate# test ! -e /var/run/squid.pid || /usr/sbin/squid -k rotate# endscript}

>>> แก�เป"น

/var/log/squid/access.log /var/log/squid/store.log { daily compress# delaycompress rotate 1 missingok nocreate sharedscripts# prerotate# test ! -x /usr/sbin/sarg-maint || /usr/sbin/sarg-maint# endscript# postrotate# test ! -e /var/run/squid.pid || /usr/sbin/squid -k rotate

# endscript}>>> เพิ&�ม่/var/log/squid/cache.log { weekly compress rotate 2 missingok nocreate sharedscripts}

Save แล�ว Exit ได�เลย

Page 89: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ต้�องไปแก�ค�าทำ�&ไฟล, radiusd.conf

# nano /etc/freeradius/radiusd.conf

>>> คำ�นห้า detailfile

detailfile = ${radacctdir}/%{Client-IP-Address}/detail-%Y%m%d

>>> แก�ไห้�เป"น

detailfile = ${radacctdir}/%{Client-IP-Address}/details

Save แล�ว Exit ได�เลย

แก�ไขไฟ้ล' ช้*�อว้�า /etc/logrotate.d/freeradius เพิ*�อจ�ด้การ้ก�บไฟ้ล' ด้�งกล�าว้

# nano /etc/logrotate.d/freeradius

/var/log/freeradius/*.log { weekly rotate 52 compress notifempty}

>>> แก�เป"น

/var/log/freeradius/radacct/127.0.0.1/details { daily compress rotate 1 missingok notifempty}

Save แล�ว Exit ได�เลย

Page 90: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ส�&ง freeradius Restart

# /etc/init.d/freeradius restart

ทำดลอง login เข�า internet จะม่� file details ข1�นม่า ทำ�&/var/log/freeradius/radacct/127.0.0.1

ส�&ง logrotate ทำ"างาน

# /etc/cron.daily/logrotate

Page 91: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ในทำ�&น��ผ่ม่ได�สร�าง  folder /home/LOG  ไว�แล�วนะคร�บ ใครทำ�&ย�งสร�างไม่�เป.น ก-สร�างต้าม่น��เลย

# mkdir /home/LOG

สร�าง File changeaccess.sh เพื่%&อเปล�ยนช้%&อ File

# nano /home/changeaccess.sh

#!/bin/shtimeaccess=`date +%Y-%m-%d`cp /var/log/squid/access.log.1.gz   /home/LOG/$timeaccess-access.log.gzcp /var/log/squid/store.log.1.gz  /home/LOG/$timeaccess-store.log.gzcp /var/log/freeradius/radacct/127.0.0.1/details.1.gz /home/LOG/$timeaccess-freeradius.log.gz

Save แล�ว Exit ได�เลย

chmod  +x  /home/changeaccess.sh ( เพื่%&อให้� โปรแกรม่สาม่ารถ้ ร�น script  น�& ได�)

Page 92: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

# chmod  +x  /home/changeaccess.sh

เวลาจะเร�ยกใช้�

# cd /home# ./changeaccess.sh

ต้��งเวลาให้� logrotate ทำ"างานผ่�าน crontab

# nano /etc/crontab

# m h dom mon dow user command17 * * * * root cd / && run-parts --report /etc/cron.hourly25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --repo$47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --repo$52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --repo$##sarg squid report00 20 * * * root /usr/bin/sarg#logrotate05 20 * * * root /etc/cron.daily/logrotate#change File name15 20 * * * root sh /home/changeaccess.sh#Shut Down30 20 * * * root shutdown -h now

Save แล�ว Exit ได�เลย

Page 93: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

TIP ก�อนจบคอร,สแก�ไขป<ญห้า session คำ�างที่�านจะน�าไปสร้�าง shell scrip ไว้�ส�าห้ร้�บสะด้ว้กในการ้ใช้�งานก7ได้�นะคำร้�บ

# nano /home/clearlog.sh

rm /var/log/freeradius/radutmprm /var/log/freeradius/radwtmptouch /var/log/freeradius/radutmptouch /var/log/freeradius/radwtmpchown freerad:freerad /var/log/freeradius/radutmpchown freerad:freerad /var/log/freeradius/radwtmp

Save แล�ว Exit ได�เลย

แก� permittion

# chmod 700 /home/clearlog.sh

เว้ลาใช้�งาน

# cd /home

# ./clearlog.sh

จากน�+นน�าไปไว้�ใน /etc/rc.local นะคำร้�บ

ด5สถ้านะของ Lan card

# mii-tool

Page 94: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ด้�เน*+อที่��เก7บ Cache

# du –sh /var/spool/squid

ต้#ดต้��ง bandwidthd แทำน sarg ใน ubuntu

# apt-get -y install bandwidthd

เล%อก การ,ด ทำ�&ต้�องการ ให้�แสดงผ่ลany ที่,กการ้'ด้การ้'ด้อ*�นก7แล�ว้แต่� ถ�าที่�า chilli ก7 tun 

Page 95: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

เล*อก IP Address tun0 (ว้งภายใน) ร้อจนเสร้7จ

Page 96: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

แก�ไข Config Apache

# nano /etc/apache2/apache2.conf

# The internationalized error documents require mod_alias, mod_include# and mod_negotiation. To activate them, uncomment the following 30 lines.

>>> เพิ&�ม่ 5 บร้ร้ที่�ด้ด้�นล�างน�+คำร้�บ

Alias /bandwidthd "/var/lib/bandwidthd/htdocs"<Directory "/var/lib/bandwidthd/htdocs">Order Allow,DenyAllow from All</Directory>

# Alias /error/ "/usr/share/apache2/error/" >>> คำ�นห้าบร้ร้ที่�ด้น�+คำร้�บ## <Directory "/usr/share/apache2/error"># AllowOverride None# Options IncludesNoExec# AddOutputFilter Includes html

Page 97: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

# AddHandler type-map var

Save แล�ว Exit ได�เลย

Restart Apache

# /etc/init.d/apache2 restart

แก� Config bandwidthd

# nano /etc/bandwidthd/bandwidthd.conf

ต่ร้งน�+เล*�อนไปบร้ร้ที่�ด้ล�างส,ด้ๆ  เอา # ห้น�าบร้ร้ที่�ด้ส,ด้ที่�ายออก

#Set META REFRESH for static pages in seconds(default 150, use 0 to disable).#meta_refresh 150

Page 98: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

meta_refresh 150

#Set the static html output directory#htdocs_dir "/var/lib/bandwidthd/htdocs" >>> เอา # ออก

Save แล�ว Exit ได�เลย

เสร-จแล�วส�&งให้�ทำ"างาน

# bandwidthd

แล�ว restart bandwidthd

# /etc/init.d/bandwidthd restart

Page 99: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

 ด5ผ่ลห้น�าเวบเลยคร�บ http://192.168.3.1/bandwidthd 

ต้��ง crontab ให้� bandwidthd อ�พื่เดทำข�อม่5ลทำ*กว�นต้อน เทำ�ยงค%น 5 นาทำ�

# nano /etc/crontab

##sarg squid report0 0 * * * root /usr/bin/sarg#bandwidthd 5 0 * * * root /usr/bin/bandwidt#Shut Down10 0 * * * root shutdown -h now

Save แล�ว Exit ได�เลย

Page 100: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

    

ต้#ดต้��ง syslog-ng

# apt-get -y install syslog-ng

Page 101: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ดาวน,โห้ลดโปรแกรม่ php syslog viewer ด�วยค"าส�&ง ไว�ใน /tmp/

# cd /tmp/

# wget http://downloads.sourceforge.net/phpsyslogviewer/phpsyslogviewer-7.2.1.tar.bz2

ต้#ดต้��งโปรแกรม่ bzip2 ด�วยค"าส�&ง ย�งอย5�ใน /tmp/ นะคร�บ

# apt-get install bzip2

Page 102: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

แต้กไฟล, phpsyslogviewer ด�วยค"าส�&ง

# tar xjvf phpsyslogviewer-7.2.1.tar.bz2

ดาวน,โห้ลดโปรแกรม่ speedupd

ซ4�งเป"นโปร้แกร้ม่เร้�งคำว้าม่เร้7ว้ให้�เอนจ&+นป.อนข�อม่�ลส��ฐานข�อม่�ล mysql ด้�ว้ยคำ�าส��ง

# wget

Page 103: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

http://jaist.dl.sourceforge.net/sourceforge/phpsyslogviewer/speedupd-7.3.2.tar.bz2

โฟ้ลเด้อร้' install ของ phpsyslogviewer จะม่�สคำร้&ปที่��ใช้�ต่&ด้ต่�+งต่าร้างต่�าง ๆ ให้�ก�บฐานข�อม่�ล เร้าจะต่�องที่�าการ้สร้�างฐานข�อม่�ลเส�ยก�อน ม่&ฉะน�+นจะพิบก�บข�อผู้&ด้พิลาด้และไม่�สาม่าร้ถร้�นสคำร้&ปด้�งกล�าว้ผู้�านได้� ม่�ข�+นต่อนด้�งน�+

1. เปล��ยนได้เร้7กที่อร้��ไปย�งโฟ้ลเด้อร้' phpsyslogviwer-7.2.1

# cd phpsyslogviewer-7.2.1

2. เข�าส�� mysql ด้�ว้ยคำ�าส��งmysql -u root -p แล�ว้ป.อนร้ห้�สผู้�านของ root

Page 104: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

# mysql -u root -p 

3. สร้�างฐานข�อม่�ลช้*�อ syslogng ด้�ว้ยคำ�าส��ง

mysql>create database syslogng;

4. ออกจาก mysql ด้�ว้ยคำ�าส��ง 

mysql> exit;

Page 105: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

5. สร้�างต่าร้างข�อม่�ลด้�ว้ยการ้ใช้� script จากไฟ้ล' install/phpsyslogviewer.sql 

ด้�ว้ยคำ�าส��ง

# mysql -u root -p syslogng < install/phpsyslogviewer.sql

ป.อนคำ�า username และ password เข�าไปในไฟ้ล' intall/newuser.sql.php ด้�งเช้�น

# nano install/newuser.sql.php

// 02110-1301, USA.// -------------------------------------------------------------------

$user = ""; // Your Username >>> ใส� User

$pass = ""; // Your Password ใส� Password

// -------------------------------------------------------------------Save แล�ว Exit ได�เลย

*****User และ Password ต้�องไม่�ซั"�าก�น

Page 106: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ต่&ด้ต่�+งโปร้แกร้ม่ php5-cli เพิ*�อให้�ร้�นคำ�าส��ง php ผู้�าน command line ด้�ว้ยคำ�าส��ง

# apt-get -y install php5-cli

Page 107: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ร้�นภาษา php-command line เพิ*�อ insert ข�อม่�ล user และ pass เข�าส��ต่าร้างข�อม่�ล user ของฐานข�อม่�ล syslogng ด้�ว้ยคำ�าส��งด้�งน�+

# php install/newuser.sql.php

ร้�นภาษา php-command line ด้�ว้ยคำ�าส��งต่�อไปน�+

# php install/newuser.sql.php | mysql -u root -p syslogng

จ�ด้การ้เว้7บได้เร้คำที่อร้�เพิ*�อให้�สาม่าร้ถเร้�ยกด้�ข�อม่�ลผู้�านเว้บบร้าว้เซอร้'ได้� ด้�ว้ยการ้ส�าเนาไฟ้ล' ด้�ว้ยคำ�าส��งด้�งน�+

# cp -R htdocs /var/www/phpsyslogviewer

Page 108: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

แก�ไขไฟ้ล'คำอนฟ้8กคำ*อ /var/www/phpsyslogviewer/config.php เพิ*�อก�าห้นด้คำ�าที่��ส�าคำ�ญเก��ยว้ก�บฐานข�อม่�ลด้�งน�+

# nano /var/www/phpsyslogviewer/config.php

// USER DEFINED VARIABLES// -------------------------------------------------------------------

$db_user = "syslog"; // Database Username $db_pass = "syslog"; // Database Password$db_host = "localhost"; // Database Hostname $db_name = "syslog"; // Database Name

>>> แก�เป"น

$db_user = "root"; // Database Username $db_pass = "mysqlroot"; // Database Password$db_host = "localhost"; // Database Hostname $db_name = "syslogng"; // Database Name

Save แล�ว Exit ได�เลย

Page 109: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ร�นค"าส�&งต้�อไปน��

# chown root:www-data /var/www/phpsyslogviewer/config.php

# chmod 440 /var/www/phpsyslogviewer/config.php

เข�าด5เว-บไซัต้,ของ phpsyslogviewer ทำ�& http://192.168.3.1/phpsyslogviewer

Page 110: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ต้#ดต้��งแพื่-คเกจ speedupd-7.3.2 

เพิ*�อเร้�งคำว้าม่เร้7ว้ให้�เอนจ&+นป.อนข�อม่�ลส��ฐานข�อม่�ล mysql ข�+นต่อนน�+อาจย,�งยากน&ด้ห้น�อย เพิร้าะต่�องที่�าการ้คำอม่ไพิล'แพิ7คำเกจด้�ว้ยต่�ว้เองให้ม่� ขอย�+าว้�าต่�องที่�านะคำร้�บข�+นต่อนน�+ ม่&ฉะน�+นใคำร้ที่��เคำยใช้� phpsyslog-ng จะร้� �ซ4+งว้�าอ4ด้อ�ด้เป"นอย�างไร้ ให้�ที่�าต่าม่คำ�าส��งต่�อไปน�+

# cd .. >>> ออกม่าที่�� /tmp/ ก�อนคำร้�บ

# tar xjvf speedupd-7.3.2.tar.bz2

# cd speedupd-7.3.2 >>> เข�าไปที่�� / speedupd-7.3.2 / ก�อนคำร้�บ

Page 111: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

# apt-get –y install build-essential cmake libmysqlclient15-dev libdaemon-dev libconfuse-dev

# apt-get -y install debhelper cmake libdaemon-dev libconfuse-dev fakeroot

Page 112: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ถ�า�ม่�ป<ญห้าให้�อ�านด้� อาจจะต่�องต่&ด้ต่�+ง libmysqlclient15-dev เ&พิ&�ม่เต่&ม่ด้�ว้ยคำ�าส��ง

# apt-get –y install libmysqlclient15-dev

# dpkg-buildpackage –rfakeroot

Page 113: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ต่อนน�+เร้าจะได้�แพิ7คำเกจต่ร้ะก�ล debian ช้*�อว้�า speedupd_7.3.0_i386.deb

(ส�าห้ร้�บ 64 bit OS จะช้*�อ speedupd_7.3.0_amd64.deb) ให้�ต่&ด้ต่�+งแพิ7คำเกจและก�าห้นด้คำ�าให้�ก�บไฟ้ล' speedupd.conf ด้�งน�+

# cd ..

# ls

(ส�าห้ร้�บเคำร้*�องที่��เป"น 64 bit ใช้� dpkg -i speedupd_7.3.0_i386.deb) 

(ส�าห้ร้�บเคำร้*�องที่��เป"น 64 bit ใช้� speedupd_7.3.0_amd64.deb) 

# dpkg -i speedupd_7.3.0_i386.deb

Page 114: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

แก�ไข Config speedupd

# nano /etc/speedupd.conf

dbusername = syslog dbpassword = syslogdbhostname = localhostdbdatabase = syslog

>>> แก�เป"น

dbusername = root dbpassword = mysqlrootdbhostname = localhostdbdatabase = syslogng

Save แล�ว Exit ได�เลย

Page 115: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

Start Speedupd

# /etc/init.d/speedupd start

Page 116: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ต้�อไปเป.นการก"าห้นดค�า syslog-ng 

ให้�ก�บ syslog-ng ที่�าการ้ส�งคำ�าไปเก7บย�งฐานข�อม่�ลที่�าต่าม่น�+เลยคำร้�บ ง�าย ๆ ผู้��เข�ยนต่�ด้ว้&ธี�การ้เก7บข�อม่�ลการ้จร้าจร้คำอม่พิ&ว้เต่อร้'ส�ว้นอ*�นออก เพิ*�อให้�สาม่าร้ถที่�าคำว้าม่เข�าใจได้�ง�าย ๆ คำร้�บ ห้ากใคำร้ม่�ไฟ้ล'คำอนฟ้8คำเก�าอย��แล�ว้ก7เพิ&�ม่เต่&ม่เฉพิาะส�ว้นที่��ต่�องการ้เก7บข�อม่�ลในฐานข�อม่�ลได้�เลยคำร้�บ  โด้ยให้�แก�ไขในไฟ้ล' /etc/syslog-ng/syslog-ng.conf เป"นด้�งต่�อไปน�+ ซ4�งถ�าส�ว้นไห้นม่�อย��แล�ว้ก7ไม่�ต่�องนะคำร้�บ

# nano /etc/syslog-ng/syslog-ng.conf 

***optionsoptions {            recv_time_zone (+07:00);            send_time_zone (+07:00);            sync (0);            time_reopen (100);            log_fifo_size (1000);            long_hostnames (off);            use_dns (no);            use_fqdn (no);            create_dirs (yes);            chain_hostnames(yes);            keep_hostname (yes);};

***sourcesource s_sys {                                                                                           file ("/proc/kmsg" log_prefix("kernel: "));                   unix-stream ("/dev/log");                   internal();                   udp(ip(0.0.0.0) port(514));                   tcp(ip(0.0.0.0) port(514) keep-alive(yes));};

***destinationdestination d_mysql {pipe("/var/log/mysql.pipe" template("INSERT INTO logs (host, facility, priority, level, tag, datetime, program, msg) VALUES ( '$HOST', '$FACILITY', '$PRIORITY', '$LEVEL', '$TAG', '$YEAR-$MONTH-$DAY $HOUR:$MIN:$SEC', '$PROGRAM', '$MSG' );\n") template-escape(yes));};

***filterfilter f_kernel { facility (kern); };filter f_messages { level(info..emerg) and not (facility(mail) or facility(authpriv) or facility(cron)); };

***loglog {source(s_sys); filter(f_messages); destination(d_mysql); };log {source(s_sys); filter(f_kernel); destination(d_mysql); };

Save แล�ว Exit ได�เลย

Page 117: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

สร�างสคร#ปเพื่%&อทำ"าไปน,ส"าห้ร�บส�งค�าสต้ร�ม่จากไปน,ส5�ฐานข�อม่5ล งานน��เป.น bash สคร#ปคร�บ ฟ/งด5ว* �นวายแต้�ทำ"าจร#งง�ายม่ากคร�บ ให้�สร�าง script file ด�วยค"าส�&งต้�อไปน��

# nano syslog2mysql.sh

>>>แล�ว้ใส�ข�อม่�ลต่�อไปน�+ลงไปในไฟ้ล'  แล�ว้บ�นที่4กไฟ้ล'

#!/bin/bashif [ ! -e /var/log/mysql.pipe ]thenmkfifo /var/log/mysql.pipefiwhile [ -e /var/log/mysql.pipe ]domysql -u root --password=radius syslogng < /var/log/mysql.pipe >/dev/nulldone

Save แล�ว Exit ได�เลย

ทำ"าการเปล�&ยนส#ทำธิ#ไฟล, แล�วร�นค"าส�&งต้�อไปน��

# chmod +x syslog2mysql.sh

# ./syslog2mysql.sh &

# /etc/init.d/syslog-ng start

****ห้ม่ายเห้ต้*****

จากการต้#ดต้��ง phpsyslogviewer แล�ว phpsyslogviewer ม่�แต้� log

Start,stop ของ Syslog-ng เทำ�าน��น

Page 118: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

การส�งค�าจาก squid ไปย�ง syslog

# tail -F /var/log/squid/access.log | logger -t squid -p user.info

จากน��นทำ"าการส�งค�าจาก radiusd ไปย�ง syslog ด��งน��

# tail -F /var/log/radius/radacct/127.0.0.1/details | logger -t radiusd -p user.info

ห้ม่ายเห้ต่, คำ�าส��ง logger -t จะใช้�ก�าห้นด้ช้*�อข�อม่�ลการ้จร้าจร้คำอม่พิ&ว้เต่อร้' ในที่��น�+เร้าจะใช้�แที่นว้�าข�อม่�ลการ้จร้าจร้คำอม่พิ&ว้เต่อร้ ม่าจากเซอร้' ว้&สใด้ เช้7น squid และ radius เป"นต่�น และต่�องห้�าม่ล*ม่ใช้� tail -F เพิร้าะจะเป"นการ้ก�าห้นด้ให้� tail ที่�างานไม่�ว้�าไฟ้ล' ต่�นที่างจะม่�การ้สร้�างไฟ้ล' ให้ม่�ห้ร้*อไม่�ก7ต่าม่ส�าาห้ร้�บว้&ธี�การ้แก�ป<ญห้าไฟ้ล' ที่��อาจจะให้ญ�เก&นไปส�าห้ร้�บข�อม่�ลล7อกไฟ้ล' ของ radius

Server เร้าสาม่าร้ถใช้�งานร้�ว้ม่ก�นก�บ

การต้��งค�าให้�ส�งข�อม่5ลการจราจรคอม่พื่#วเต้อร, จาก squid และ radius โดยให้�ทำ"างานทำ*กคร��งห้ล�งเป)ดเคร%&องด��งน��

# nano /etc/init.d/rc.capture

#!/bin/bashtail -F /var/log/squid/access.log | logger -t squid -p user.info &tail -F /var/log/freeradius/radacct/127.0.0.1/details | logger -t radiusd -p user.info &

Save แล�ว Exit ได�เลย

จากน��นส�&งให้�สาม่ารถ้ร�นได�และสร�างล#งค, ให้�ทำ"างานทำ*กคร��งห้ล�งเป)ดเคร%&อง

# chmod a+x /etc/init.d/rc.capture

Page 119: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

# ln -s /etc/init.d/rc.capture /etc/rcS.d/S88rccapture

ส�&งให้� rc.capture ทำ"างาน

# /etc/init.d/rc.capture

ต้รวจสอบ syslog

# tail -f /var/log/syslog

ทำดลองใช้�งาน Internet

Page 120: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ต้#ดต้��ง webmin

# cd /var

# tar zxvf webmin-1.480.tar.gz

# cd webmin-1.480

Page 121: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

# sh setup.sh

Page 122: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ
Page 123: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

การทำ"างานของ Samba จะทำ"างานอย5�บน Port 137,138 และ 139    * 137 Name Service : SMB จะใช้� port น�+ในการ้ถาม่ช้*�อเคำร้*�องคำอม่พิ&ว้เต่อร้'ด้�ว้ย การ้ร้�บส�ง package UDP (User Datagram Protocol) (โด้ยไม่�ต่�องใช้� IP เข�าม่าช้�ว้ย)    * 138 Datagram Service : SMB จะใช้� port น�+ในการ้ Browse ห้าช้*�อเคำร้*�อง    * 139 Session Service : SMB จะใช้� Port น�+ในการ้ร้�บส�งข�อม่�ลร้ะห้ว้�างเคำร้*�อง ด้�ว้ย โปร้โต่คำอล TCP ซ4��งแน�นอนว้�าม่�การ้ร้�บร้องการ้ส�ง ข�อม่�ลว้�าไปถ4งปลายที่างแน�นอน

Page 124: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

แก�ไข File chilli.iptables เพื่%&อ webmin และ samba เข�าทำาง eth1 ได�

# nano /etc/init.d/chilli.iptables

#Allow releated, established and ssh on $EXTIF. Reject everything else.$IPTABLES -A INPUT -i $EXTIF -p tcp -m tcp --dport 22 --syn -j ACCEPT$IPTABLES -A INPUT -i $EXTIF -j REJECT

#Allow releated, established and ssh on $IXTIF.$IPTABLES -A INPUT -i tun0 -p tcp -m tcp --dport 22 --syn -j ACCEPT>>> เพิ&�ม่ 5 บร้ร้ที่�ด้ข�างล�างน�+คำร้�บ$IPTABLES -A INPUT -i tun0 -p tcp -m tcp --dport 137 --syn -j ACCEPT$IPTABLES -A INPUT -i tun0 -p tcp -m tcp --dport 138 --syn -j ACCEPT$IPTABLES -A INPUT -i tun0 -p tcp -m tcp --dport 139 --syn -j ACCEPT$IPTABLES -A INPUT -i tun0 -p tcp -m tcp --dport 445 --syn -j ACCEPT$IPTABLES -A INPUT -i tun0 -p tcp -m tcp --dport 10000 --syn -j ACCEPT

#Allow related and established from $INTIF. Drop everything else.$IPTABLES -A INPUT -i $INTIF -j DROP

Save แล�ว Exit ได�เลย

Page 125: Ubuntu 8.04-Chilli-Freeradius-EZ-Webmin-LOGแบบบ้านๆ

ทำดสอบเข�า webmin http://192.168.3.1:10000/

เอกสารช้*ดน�&ได�ข�อม่5ลได�ความ่ร5�ม่าจาก http://www.linuxthai.org และ Web

Linux ต้�างๆอ�กม่ากม่ายและต้�องขอบค*ณ ค*ณ chalee VDO3,VDO4

ขอแสดงความ่น�บถ้%อ ว#ส*ทำธิ#: การะเกต้*