Você está na página 1de 37

1/21/2010

การติดตั้ง PPPOE SERVER + FREERADIUS + MYSQL + หน้า


SIANG
จัดการ USER ม.บู บน CENTOS 5.4 (V2)

Siangsawan Mamongkun | Navy


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

การติดตั้ง PPPOE Server + Freeradius + Mysql +หน้าจัดการ User ของ ม.บู

บน CentOS 5.4

รูปแบบเครือข่าย

Siang | Siangsawan Mamongkun | siang16@gmai.com 2


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

Install And Config CentOS


1. ลง CentOS 5.4 โดยไม่เลือก rp-pppoe client
2. ปิ ดการทํางานของ Firewall และ SELinux
3. ผมใช้ yum ในการติดตั้งแต่ที่หอ้ งพักยังไม่ได้ติดตั้ง Internet ผมเลยต้องแก้ไขให้ใช้ yum จากแผ่น DVD
ของ CentSO 5.4 แทนครับ (บ้านนอกเนาะ O_0)
3.1 ให้สร้าง folder /mnt/cdrom ขึ้นมา
#mkdir /mnt/cdrom
3.2 ทําการ Mount DVD CentOS
#mount /dev/cdrom /mnt/cdrom
3.3 ไปแก้ไขไฟล์ที่ Folder /etc/yum.repos.d
#cd /etc/yum.repos.d
3.4 เปลี่ยนชื่อไฟล์ CentOS-Base.repo เป็ นอย่างอื่นครับ
#mv CentOS-Base.repo CentOS-Base.repo.bak
3.5 ทําการแก้ไขไฟล์ CentOS-Media.repo ให้มีขอ้ มูลตามด้านล่างครับ
(ผมแก้ไขแค่ตาํ แหน่ง baseurl=file:///mnt/cdrom/ และ enabled=1 )
[c5-media]
name=CentOS-$releasever - Media
baseurl=file:///mnt/cdrom/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

4. กําหนด IP eth0 = 10.1.1.50/24 gateway = 10.1.1.1


5. ไม่ตอ้ งกําหนด IP ให้ eth1

Siang | Siangsawan Mamongkun | siang16@gmai.com 3


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

6. แก้ไข ไฟล์ /etc/sysconfig/network-scripts/ifcfg-eth1 ในส่วนของ BOOTPROTO ให้เป็ น none


# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
DEVICE=eth1
BOOTPROTO=none
HWADDR=00:0c:29:d0:60:36
ONBOOT=yes
TYPE=Ethernet

Siang | Siangsawan Mamongkun | siang16@gmai.com 4


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

Install HTTP + PHP + Mysql เพื่อรองรับการ Config Mysql ผ่านหน้าเว็บไซต์


1. ติดตั้ง HTTP โดยการใช้ yum
#yum install httpd #ติดตั้ง HTTP Server
#chkconfig httpd on #ให้ Service httpd รันทุกครังที่เปิ ดเครื่ อง

2. ติดตั้ง PHP+PHP+Mysql
#yum install php php-mysql #ติดตั้ง php และ php-mysql

3. ติดตั้ง mysql และ mysql-server


#yum install mysql-server #ติดตั้ง mysql และ mysql-server
#chkconfig mysqld on
#service mysqld start
4. ใส่รหัสผ่านให้กบั Account root ของ mysql
#mysqladmin –u root password 123456 #123456 คือรหัสผ่านของ mysql

5. ทดสอบ account root ของ mysql


#mysql -u root –p
Enter password: #ใส่รหัสผ่านที่ต้งั ขึ้นตามด้านบน (123456)
mysql> #จะเป็ นอย่างนี้ถา้ ทําถูก
mysql>\q #ออกจาก mysql

6. Download phpmyadmin (เอาจากไฟล์ที่แนบมาก็ได้)แล้วอัพไฟล์ไปยัง /var/www/html ในรู ปเปลี่ยนชื่อ


folder phpmyadmin เป็ น ppm จะได้พิมพ์ง่าย และทําการแก้ไข ไฟล์ config.inc.php ในส่วนของ
$cfg['Servers'][$i]['auth_type'] = 'http'; #ให้เป็ นค่าตามนี้

Siang | Siangsawan Mamongkun | siang16@gmai.com 5


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

7. Start Service httpd ด้วยครับไม่ง้นั เข้าตามข้อ 8 ไม่ได้


#service httpd start

8. เปิ ด Browser แล้วพิมพ์ IP ของเครื่ องของเราแล้วต่อด้วย /ppm เช่น


http://10.1.1.50/ppm
ใส่ user ของ mysql ที่เราตั้งมา และ รหัสที่เราตั้งขึ้น

Siang | Siangsawan Mamongkun | siang16@gmai.com 6


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

จบในส่วนนี้ไว้ก่อนครับ ไปส่วนอื่นก่อนค่อยมาจัดการกับ Database

Siang | Siangsawan Mamongkun | siang16@gmai.com 7


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

Install freeradius และ freeradius-mysql


1. ทําการติดตั้ง freeradius และ freeradius-mysql
#yum install freeradius freeradius-mysql
#chkconfig radiusd on

2. แก้ไขไฟล์ /etc/raddb/clients.conf แก้ไข secret เป็ นตัวที่เราต้องการ แล้ว Save


client 127.0.0.1 {
secret = siang #ผมใช้คาํ ว่า siang ครับ

3. แก้ไขไฟล์ /etc/raddb/radiusd.conf โดยค้นหาคําว่า


user = radiusd
group = radius
แล้วใส่ # ด้านหน้ามันซะ แล้ว Save
user = radiusd
group = radius
จะได้
#user = radiusd
#group = radius

4. ลองใช้คาํ สั้ง radiusd –x ดูครับ ถ้าเป็ นตามรู ปก็ OK แล้วครับ


#radiusd -x
Starting - reading configuration files ...
Using deprecated naslist file. Support for this will go away soon.
Module: Loaded exec
rlm_exec: Wait=yes but no output defined. Did you mean output=none?
Module: Instantiated exec (exec)
Module: Loaded expr
Module: Instantiated expr (expr)
Module: Loaded PAP
Module: Instantiated pap (pap)

Siang | Siangsawan Mamongkun | siang16@gmai.com 8


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

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 preprocess
Module: Instantiated preprocess (preprocess)
Module: Loaded realm
Module: Instantiated realm (suffix)
Module: Loaded files
Module: Instantiated files (files)
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...
Listening on authentication *:1812
Listening on accounting *:1813
Ready to process requests.

ออกจากนี่ กด Ctrl+c ครับ


5. สัง่ Start Service ของ Radius ครับ
#service radiusd start

Siang | Siangsawan Mamongkun | siang16@gmai.com 9


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

6. ทดสอบการทํางานของ radius ครับ หากขึ้น Access-Accept packet from host … ก็แสดงว่า OK ครับ
#radtest root 123456 localhost 1812 siang
Sending Access-Request of id 41 to 127.0.0.1 port 1812
User-Name = "root"
User-Password = "123456"
NAS-IP-Address = 255.255.255.255
NAS-Port = 1812
rad_recv: Access-Accept packet from host 127.0.0.1:1812, id=41, length=20
อธิบายครับ
เราทดสอบโดยการ ใช้ Account root ของ ระบบ (root ของ CentOS ไม่ใช่ root ของ mysql นะครับคน
ละอันกัน) และรหัสผ่านของ root ระบบด้วยครับ
localhost ก็คือ ชื่อของ server ที่ทาํ หน้าที่ เป็ น radius server ครับ ในตัวอย่างผมติดตั้งในเครื่ อง
เดียวกันก็เลยใช้เป็ น localhost
1812 ก็คือ port ที่ radius server ใช้ authentication ครับ
siang ก็คือ secret ที่เราตั้งขึ้น จากหัวข้อที่ 2 นั้นเองครับ

Siang | Siangsawan Mamongkun | siang16@gmai.com 10


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

Install ppp and rp-pppoe


1. Copy ไฟล์ ตามด้านล่างแล้วนําไปไว้ที่ /usr/src/ เลยครับ
ppp-2.4.4.tar.gz
rp-pppoe-3.10.tar
2. แตกไฟล์ออกมาครับ
#tar zxvf ppp-2.4.4.tar.gz
#tar zxvf rp-pppoe-3.10.tar.gz

3. ติดตั้ง gcc ด้วยเดี๋ยวทําตามข้อ 4 ไม่ได้


#yum install gcc libtool make

4. ไปยัง folder ppp-2.4.4 แล้วใช้คาํ สัง่ ./configure ต่อด้วย make และ make install ครับ
#cd /usr/src/ppp-2.4.4/
#./configure
#make #เสร็ จแล้วต่อด้วยคําสัง่ make ครับ
#make install #เสร็ จแล้วต่อด้วยคําสัง่ make install ครับ
5. ไปยัง folder /usr/src/rp-pppoe-3.10/src/ แล้วใช้คาํ สัง่
./configure --enable-plugin=../../ppp-2.4.4 #ทําให้ใช้ –k ได้ ครับ
#./configure --enable-plugin=../../ppp-2.4.4
#make #เสร็ จแล้วต่อด้วยคําสัง่ make ครับ
#make install #เสร็ จแล้วต่อด้วยคําสัง่ make install ครับ

6. สร้าง Folder /etc/ppp/radius

#mkdir /etc/ppp/radius

7. คัดลอกไฟล์ ทุกไฟล์ที่ /usr/src/ppp-2.4.4/pppd/plugins/radius/etc/* ไปไว้ที่ /etc/ppp/radius

#cp /usr/src/ppp-2.4.4/pppd/plugins/radius/etc/* /etc/ppp/radius

Siang | Siangsawan Mamongkun | siang16@gmai.com 11


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

8. จากนั้นก็ Copy ไฟล์ radius.so ไปไว้ที่ /etc/ppp/plugins

#cp /usr/src/ppp-2.4.4/pppd/plugins/radius/radius.so /etc/ppp/plugins

9. แก้ไข ไฟล์ /etc/ppp/options ให้เป็ นตามด้านล่างเลยครับ

lock
crtscts
nobsdcomp
nodeflate
nopcomp
plugin /etc/ppp/plugins/radius.so
radius-config-file /etc/ppp/radius/radiusclient.conf

10. แก้ไข ไฟล์ /etc/ppp/pppoe-server-options ให้เป็ นตามด้านล่างเลยครับ

# PPP options for the PPPoE server


# LIC: GPL
auth
require-chap
default-mru
default-asyncmap
lcp-echo-interval 60
lcp-echo-failure 5
ms-dns 203.146.237.237 # DNS ของใครของมันครับ
noipdefault
noipx
nodefaultroute
noproxyarp
noktune

Siang | Siangsawan Mamongkun | siang16@gmai.com 12


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

netmask 255.255.255.255
logfile /var/log/pppd.log

11. แก้ไข ไฟล์ /etc/ppp/radius/radiusclient.conf ให้เป็ นตามด้านล่างเลยครับ (ข้อควรจดจํา ถ้าแก้ไข


ไฟล์ บน windows ด้านหลังค่าต่างๆ ที่เราใส่ไป อย่าให้เป็ นอักษรว่างเด็ดขาดไม่ง้นั ท่านจะ Login
ไม่ได้ อย่างเช่น dictionary /etc/ppp/radius/dictionary

ตรง / dictionary หลังตัว y ต้องไม่มีอกั ษรว่างไม่ง้นั จะใช้ไม่ได้)

auth_order radius
login_tries 4
login_timeout 60
nologin /etc/nologin
issue /etc/ppp/radius/issue
authserver localhost:1812
acctserver localhost:1813
servers /etc/ppp/radius/servers
dictionary /etc/ppp/radius/dictionary
login_radius /usr/local/sbin/login.radius
seqfile /var/run/radius.seq
mapfile /etc/ppp/radius/port-id-map
default_realm
radius_timeout 10
radius_retries 3
login_local /bin/login
12. แก้ไข ไฟล์ /etc/ppp/radius/servers เพิ่มข้อมูลดังด้านล่าง
localhost siang
siang นี่เป็ น secret จากตัวที่เราตั้งขึ้นในขั้นตอนการติดตั้ง freeradius ครับ ตัวเดียวกัน

Siang | Siangsawan Mamongkun | siang16@gmai.com 13


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

13. แก้ไขไฟล์ /etc/ppp/radius/dictionary จาก


INCLUDE /etc/radiusclient/dictionary.microsoft
แก้เป็ น
INCLUDE /etc/ppp/radius/dictionary.microsoft

Siang | Siangsawan Mamongkun | siang16@gmai.com 14


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

สร้าง ฐานข้อมูล ให้กับ pppoe ของเราครับ

1. ไปที่ หน้าจอ phpmyadmin ของเราครับ แล้วสร้างฐานข้อมูลขึ้นมาครับ ตั้งชื่อ แล้วกด Create เลยครับ

2. สร้าง user ให้มีสิทธิ์ในฐานข้อมูลที่เราเพิ่งสร้างขึ้นครับ

Siang | Siangsawan Mamongkun | siang16@gmai.com 15


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

Siang | Siangsawan Mamongkun | siang16@gmai.com 16


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

Siang | Siangsawan Mamongkun | siang16@gmai.com 17


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

3. นําฐานข้อมูลเข้ามาครับ เอาจาก ไฟล์ที่แนบมาด้วยได้เลยครับ

Siang | Siangsawan Mamongkun | siang16@gmai.com 18


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

ถ้าสําเร็ จก็ประมาณนี้ครับ

Siang | Siangsawan Mamongkun | siang16@gmai.com 19


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

4. แก้ไขไฟล์ /etc/raddb/sql.conf

server = "localhost"

login = "pppoeuser"

password = "123456"

radius_db = "radius"

5. แก้ไขไฟล์ /etc/raddb/radiusd.conf

ค้นหา $INCLUDE ${confdir}/sql.conf แล้วเอา # ออกจากด้านหน้ามัน

ค้นหา authorize { แล้วแก้ไขค่า ตามด้านล่าง (เอา # ด้านหน้า sql ออก และใส่ # หน้า files)

#files

sql

dailycounter #เพิม่ ตัวนี้ดว้ ย

monthlycounter #เพิ่มตัวนี้ดว้ ย

ค้นหา accounting { แล้วเอา # หน้า sql ออก

sql

ค้นหา session { แล้วเอา # หน้า sql ออก

sql

ค้นหา post-auth { แล้วเอา # หน้า sql ออก

sql

Siang | Siangsawan Mamongkun | siang16@gmai.com 20


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

6. หยุดการทํางานของ Service radiusd ด้วยคําสัง่

#service radiusd stop

7. ตรวจสอบการ Config radius ด้วยคําสัง่

# radiusd -x

8. ถ้าออกมาเหมือนด้านล่างก็ Ok แล้วครับ
Starting - reading configuration files ...

Module: Loaded exec

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

Siang | Siangsawan Mamongkun | siang16@gmai.com 21


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

rlm_eap: Loaded and initialized type mschapv2

Module: Instantiated eap (eap)

Module: Loaded preprocess

Module: Instantiated preprocess (preprocess)

Module: Loaded realm

Module: Instantiated realm (suffix)

Module: Loaded SQL

rlm_sql (sql): Driver rlm_sql_mysql (module rlm_sql_mysql) loaded and linked

rlm_sql (sql): Attempting to connect to radiususer@localhost:/radius

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, #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, #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, #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, #3

rlm_sql (sql): starting 4

Siang | Siangsawan Mamongkun | siang16@gmai.com 22


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

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, #4

rlm_sql (sql): - generate_sql_clients

rlm_sql (sql): Query: SELECT * FROM nas

rlm_sql (sql): Reserving sql socket id: 4

rlm_sql (sql): Released sql socket id: 4

Module: Instantiated sql (sql)

Module: Loaded Acct-Unique-Session-Id

Module: Instantiated acct_unique (acct_unique)

Module: Loaded files

Module: Instantiated files (files)

Module: Loaded detail

Module: Instantiated detail (detail)

Module: Loaded radutmp

Module: Instantiated radutmp (radutmp)

Initializing the thread pool...

Listening on authentication *:1812

Listening on accounting *:1813

Ready to process requests.

ออกจากคําสัง่ โดยการกดปุ่ ม Ctrl+c

Siang | Siangsawan Mamongkun | siang16@gmai.com 23


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

เพิ่มหน้าจัดการ User ของ ม.บูรพา

1. อัพ Folder wifi (ที่แนบมาด้วย) ไปที่ /var/www/html

2. แก้ไขไฟล์ /var/www/html/wifi/admin/include/config.inc.php

# configuration for database

$_config['database']['hostname'] = "localhost";

$_config['database']['username'] = "pppoeuser"; #ชื่อผูใ้ ช้งานที่มีสิทธิ์ในฐานข้อมูล

$_config['database']['password'] = "123456"; #รหัสผ่าน

$_config['database']['database'] = "radius"; #ฐานข้อมูลที่ตอ้ งการให้ Connect

3. Start Service radiusd

#service radiusd start

Siang | Siangsawan Mamongkun | siang16@gmai.com 24


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

4. เปิ ด IE แล้วใส่ Address เป็ น http://10.1.1.50/wifi/admin (10.1.1.50 เป็ น IP ของใครของมันนะครับ)

จะเห็นหน้าต่างดังรู ปด้านล่างให้ใส่ ชื่อผูใ้ ช้ เป็ น admin รหัสผ่าน เป็ น admin

5. เลือก จัดการกลุ่มผูใ้ ช้ แล้วเลือก เพิ่มกลุ่ม

1. Click

2. Click

Siang | Siangsawan Mamongkun | siang16@gmai.com 25


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

6. ใส่ขอ้ มูลตามต้องการ (ความเร็ วเน็ต ผมใส่ไปอย่างงั้นแหละ จริ งๆแล้วเราไม่ได้ใช้หรอก) แล้วบันทึก

1. ใส่ข้อมูล

2. บันทึก

7. จากนั้นก็ปลด Lock

ปลด Lock ซะ

Siang | Siangsawan Mamongkun | siang16@gmai.com 26


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

8. เลือกเมนู เพิ่มผูใ้ ช้ใหม่

Click

9. เลือกปุ่ ม เพื่อเลือกกลุ่มที่ตอ้ งการ add user แล้วใส่ ที่ช่อง คําขึ้นต้นผูใ้ ช้งาน เป็ น
ชื่อ user ที่ตอ้ งการ ในตัวอย่างใช้ navy ใส่จาํ นวนที่ตอ้ งการสร้าง ในตัวอย่างสร้าง 2 คน

เสร็ จแล้วเลือก ประมวลผล

1. เลือก

เสร็จแล้วก็เลือกอันนี้

2. ใส่ชื่อ

3. จานวนคนที่
ต้องการสร้าง

Siang | Siangsawan Mamongkun | siang16@gmai.com 27


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

10. จะเห็นชื่อผูใ้ ช้งานและรหัสผ่าน ให้จดไว้ครับ จะได้นาํ ไปทดสอบได้ จากนั้นกด บันทึก ครับ

นี่คือ Account
ที่สร้างขึ้น

11. ทดสอบ user ที่เราสร้างขึ้นครับ

#radtest navy1 16920457 localhost 1812 siang


Sending Access-Request of id 81 to 127.0.0.1 port 1812

User-Name = "navy1"

User-Password = "16920457"

NAS-IP-Address = 255.255.255.255

NAS-Port = 1812

rad_recv: Access-Accept packet from host 127.0.0.1:1812, id=81, length=32

Siang | Siangsawan Mamongkun | siang16@gmai.com 28


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

สร้าง Service ของ PPPoE Server

1. สร้างไฟล์ /etc/rc.d/init.d/pppoed ให้ มขี ้ อมูลตามด้ านล่างเลยครับ

#!/bin/bash

# init file for rp-pppoe server

# description: PPPOE kernel mode server

# processname: pppoe-server

# chkconfig: - 45 45

# source function library

. /etc/rc.d/init.d/functions

case "$1" in

start)

echo -n "Starting PPPOE server: "

daemon /usr/sbin/pppoe-server -k -s -I eth1 -L 10.0.0.1 -R 10.0.0.50

#Here eth1 - your pppoe server interface

#10.0.0.1 - IP of PPPoE server

#10.0.0.50 - First IP number of your client

touch /var/lock/subsys/pppoed

echo

;;

stop)

echo -n "Shutting down PPPOE server: "

killproc pppoe-server

rm -f /var/lock/subsys/pppoed

echo
Siang | Siangsawan Mamongkun | siang16@gmai.com 29
January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

;;

restart)

$0 stop

$0 start

;;

status)

status pppoe-server

;;

*)

echo "Usage: pppoed {start|stop|restart|status}"

exit 1

esac

exit 0

2. Chmod เพื่อที่จะให้สามารถ run ได้ครับ

#chmod 755 /etc/rc.d/init.d/pppoed

3. สร้าง link ไฟล์ ของ ppoed ขึ้นมาตามด้านล่าง เพื่อให้ run ใน level 3 อัตโนมัติครับ

#ln -s /etc/rc.d/init.d/pppoed /etc/rc.d/rc3.d/S93pppoed

4. Restart CentOS

#reboot

Siang | Siangsawan Mamongkun | siang16@gmai.com 30


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

การสร้าง Connection ที่เครื่องลูก เพื่อที่จะ Connect มายัง Server

1. ที่ windows xp ให้คลิกขวาที่ My Network Places เลือก Properties

2. เลือก Create a new connection

เลือกอันนี้
ครับ

3. เลือก Next แล้วเลือก Connect to the internet แล้วเลือก Next

เลือกอันนี้

Siang | Siangsawan Mamongkun | siang16@gmai.com 31


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

4. เลือก Set up my …. แล้ว Next

เลือกอันนี้

5. เลือก Connect using a broadband …. แล้ว Next

เลือกอันนี้

Siang | Siangsawan Mamongkun | siang16@gmai.com 32


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

6. ใส่ชื่อตามที่ตอ้ งการครับ

ใส่ชื่อตามต้องการ

7. ใส่ User Account และรหัสผ่าน ที่เราจดไว้

User

password
password

Siang | Siangsawan Mamongkun | siang16@gmai.com 33


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

8. ติดที่หน้า Add a shortcut to ….. ด้วยครับ เพื่อสร้าง Shortcut ที่หน้าจอ จะได้ใช้ง่ายๆ

เลือกด้วยเด้อ!

9. ทดสอบ Connect ดูครับ

Siang | Siangsawan Mamongkun | siang16@gmai.com 34


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

10.ถ้าได้ก็จะมี Icon รู ป network เพิ่มขึ้นมาที่ taskbar แบบในรู ปครับ

มันจะมีเพิ่มขึ้นมาครับ

11. ที่ CentOS ตรวจดูสถานะได้จากไฟล์ /var/log/message ครับ โดยใช้คาํ สัง่ ดังด้านล่างครับ

tail –f /var/log/messages
Jan 11 02:21:09 localhost pppoe-server[3492]: Session 2 created for client 00:0c:29:da:c8:02 (10.0.0.51) on eth1 using Service-Name
''

Jan 11 02:21:09 localhost pppd[3492]: Plugin /etc/ppp/plugins/radius.so loaded.

Jan 11 02:21:09 localhost pppd[3492]: RADIUS plugin initialized.

Jan 11 02:21:09 localhost pppd[3492]: Plugin /etc/ppp/plugins/rp-pppoe.so loaded.

Jan 11 02:21:09 localhost pppd[3492]: RP-PPPoE plugin version 3.10 compiled against pppd 2.4.4

Jan 11 02:21:09 localhost pppd[3492]: pppd 2.4.4 started by root, uid 0

Jan 11 02:21:09 localhost pppd[3492]: Connected to 00:0c:29:da:c8:02 via interface eth1

Jan 11 02:21:09 localhost pppd[3492]: Using interface ppp0


Siang | Siangsawan Mamongkun | siang16@gmai.com 35
January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

Jan 11 02:21:09 localhost pppd[3492]: Connect: ppp0 <--> eth1

Jan 11 02:21:09 localhost pppd[3492]: Couldn't increase MTU to 1500

Jan 11 02:21:09 localhost pppd[3492]: Couldn't increase MRU to 1500

Jan 11 02:21:09 localhost pppd[3492]: Couldn't increase MTU to 1500

Jan 11 02:21:09 localhost pppd[3492]: Couldn't increase MRU to 1500

Jan 11 02:21:09 localhost pppd[3492]: peer from calling number 00:0C:29:DA:C8:02 authorized

Jan 11 02:21:09 localhost pppd[3492]: local IP address 10.0.0.1

Jan 11 02:21:09 localhost pppd[3492]: remote IP address 10.0.0.50

12. ทดลองเข้า Internet ดูครับ (เข้าได้ก็แปลกละ o_0) ต้องทําขั้นตอนต่อไปก่อนครับ จึงจะเข้าได้

Siang | Siangsawan Mamongkun | siang16@gmai.com 36


January 21, 2010 [การติดตั้ง PPPOE Server + Freeradius + Mysql + หน้า จัดการ User ม.บู บน CentOS 5.4 (V2)]

การเพิ่ม firewall.iptables เพื่อให้ใช้ Internet ได้

1. copy ไฟล์ firewall.iptables ไปไว้ที่ /etc/ ครับ

2. แก้ไขไฟล์ /etc/rc.d/rc.local เพิ่มคําสัง่ ตามด้านล่างเข้าไป (เพิ่มไปที่บรรทัดใหม่เลยโดยไม่ตอ้ งลบ


ของเดิมครับ) เพื่อให้ Run ไฟล์ Scrip firewall.iptables ทุกครั้งที่เปิ ดเครื่ อง

sh /etc/firewall.iptables

3. Restart CentOS อีกรอบก็ใช้ได้แล้วครับ

ขอขอบคุณ ทุกๆท่านที่ติดตามอ่าน และขอบคุณ http://www.linuxthai.org www.thaiadmin.org และ


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

ท่านสามารถนาไปแจกจ่ายต่อได้เลยครับ

ขอบคุณครับ _/|\_ Siang16@gmail.com

Siang | Siangsawan Mamongkun | siang16@gmai.com 37

Você também pode gostar