CoP PSU IT Blog

Main menu

Skip to content
  • Home
  • ชุมชนเครือข่ายผู้ปฏิบัติงาน IT
    • ชุมชนเครือข่ายผู้ปฏิบัติงาน IT
    • สมาชิก
  • เขียนเล่าเรื่อง/login
  • Workshop
    • Load Balance Web Server
    • Server Monitoring
    • Web Hacking and Security
    • PSU Passport Authentication (ต้อง login ก่อนอ่าน)
    • Google Apps Scripts Workshop – Level 1
    • Workshop : PSU Passport OAuth2
  • เคล็ดไม่ลับกับไอที
  • บทความชุด
    • Apache Spark
    • Ambari
    • ElasticSearch + LogStash + Kibana
    • Python101
    • Raspberry Pi 3
    • เตาะแตะไปกับ Docker
  • Microsoft 365
Linux (OS, shell script, etc), Network Configuration, Windows (OS, power shell, etc)

การตั้งค่า pGina และ FreeRADIUS เพื่อส่งค่า RADIUS Accounting ไปยัง Firewall ของมหาวิทยาลัย

by วิบูลย์ วราสิทธิชัย • August 24, 2015 • Comments Off on การตั้งค่า pGina และ FreeRADIUS เพื่อส่งค่า RADIUS Accounting ไปยัง Firewall ของมหาวิทยาลัย
Post Views: 2,937

(Last updated: 19 ก.ค. 2561)
เปลี่ยน pGina เวอร์ชั่นให้เหมาะกับ Firewall มหาวิทยาลัย ล่าสุด https://sysadmin.psu.ac.th/2017/04/12/pgina-fork-3-2-4-1-configuration/

(Last updated: 4 ก.ย. 2561)
มีเวอร์ชั่น pGina 3.9.9.12 ที่เพิ่ม plugins อีกเยอะ และ แก้บั๊ก
https://sysadmin.psu.ac.th/2018/09/04/pgina-fork-3-9-9-12-configuration/

ทั้ง pGina 3.2.4.1 กับ 3.9.9.12 ก็ใช้งานได้

บทความนี้เกี่ยวกับการตั้งค่าโปรแกรม pGina for Windows และการตั้งค่าในเครื่องบริการ FreeRADIUS เพื่อส่งค่า RADIUS Accounting ไปยัง Firewall ของมหาวิทยาลัย

pgina01

pGina คือ โปรแกรมสำหรับให้ผู้ใช้ใส่ username และ password ก่อนใช้งาน Windows ได้ (Windows Authentication)

FreeRADIUS คือ เครื่องบริการที่ทำหน้าที่ตรวจสอบ Authentication, Authorization และ Accounting ของการใช้งานบัญชีผู้ใช้

Firewall ของมหาวิทยาลัยสงขลานครินทร์ทำหน้าที่เป็น Internet Authentication อนุญาตการใช้งานด้วย ค่า username และ password จากหน้า login รวมทั้งค่าที่ถูกส่งต่อมาจาก wireless adaptor ที่ตั้งค่า 802.1x และ RADIUS server

เครื่องคอมพิวเตอร์ที่ติดตั้ง Windows ในห้องบริการคอมพิวเตอร์ตามคณะ หากติดตั้งโปรแกรม pGina for Windows ที่ตั้งค่าได้ถูกต้องก็จะทำให้ผู้ใช้งานในมหาวิทยาลัยที่มี Firewall เปิด/ปิดการอนุญาตให้ใช้งานอินเทอร์เน็ต ไม่จำเป็นที่จะต้อง login ซ้ำอีกครั้งหนึ่งหลังจากที่ login ผ่านหน้าโปรแกรม pGina แล้ว

วิธีการก็คือ ตั้งค่าโปรแกรม pGina เลือกใช้ RADIUS Plugin ดังนี้

pgina02

ที่แท็บ Plugin Selection ใส่ค่าต่าง ๆ ที่จำเป็น สำหรับ RADIUS Plugin

pgina03

ช่อง Server: ใส่ IP Address ของเครื่องบริการ FreeRADIUS
ช่อง Authentication Port: ใส่เลข 1812 (ค่า default)
ช่อง Accounting Port: ใส่เลข 1813 (ค่า default)
ช่อง Timeout: ใส่เลข 2.50 (ค่า default)
ช่อง Retry: ใส่เลข 3  (ค่า default)
ช่อง Shared Secret: ใส่รหัสที่ตรงกับที่ตั้งไว้ใน FreeRADIUS (/etc/freeradius/clients.conf)
ตัวเลือก Machine Identifier เลือก IP Address Only (ค่า default)
ตัวเลือก Use modified username for accounting ไม่ใช้ (ค่า default)
ช่อง IP Address Suggestion: ใส่เลขส่วนต้นของ IP Address (ในรูปคือใช้ IP ที่ขึ้นต้นด้วย 10.0.100) เพื่อใช้ในกรณีที่เครื่อง Windows อาจมีการติดตั้งโปรแกรม Oracle VM VirtualBox ซึ่งทำให้เกิดมี network adaptor มากกว่า 1 อันทำให้มี IP มากกว่า 1 เลข (ดูด้วย ipconfig /all)

คำอธิบาย IP Address Suggestion
IP Address Suggestion – When recording the IP address of the machine, the plugin will record the first viable IP address in the system. In setups with multiple network adapters (including virtual adaptors), this may record the wrong address. You may enter any regular expression that will match the desired IP address. For example “192.168.1.” will attempt to find an address matching the 192.168.1 subnet. “192.168.(24|25).” will match the 192.168.24 or 192.168.25 subnets. If no match is found, the first viable IP address is used.

pgina04

ที่แท็บ Plugin Order ในส่วนแรก Authentication ตั้งให้ RADIUS Plugin อยู่ก่อน Local Machine

จากนั้นให้ตั้งค่าที่เครื่องบริการ FreeRADIUS ดังนี้

pgina05

แก้ไขเพิ่มเติมเมื่อ 22 มี.ค. 2560

เพื่อให้ส่งค่า port = 1813 (ประมาณบรรทัดที่ 176 ใน section home_server localhost {…})

FreeRADIUS Version 2.2.8 แก้ไขไฟล์ /etc/freeradius/proxy.conf อาจด้วยคำสั่ง vi หรือ nano ตามชอบ

FreeRADIUS Version 3.0.16 แก้ไขไฟล์ /etc/freeradius/3.0/proxy.conf

เพื่อให้มีค่า realm NULL (ประมาณบรรทัดที่ 672) ที่กำหนดค่า Accounting Port เพียงอย่างเดียวส่งไปยังเครื่อง Firewall

pgina06
รูปก่อนแก้ไข

pgina07
รูปหลังแก้ไข

ในรูปตัวอย่างเครื่อง Firewall คือ radius.hatyai.psu.ac.th และต้องรู้ค่า secret ที่ตั้งเพื่อใช้สำหรับเครื่อง FreeRADIUS และ Firewall ในที่นี้คือ yoursecret (อันนี้ต้องมีการติดต่อกับ network administrator ของมหาวิทยาลัยเพื่อร่วมกันตั้งค่านี้)

(25 ก.ค. 2561 เพิ่มเนื้อหา)

FreeRADIUS Version 2.2.8 แก้ไขที่แฟ้ม /etc/freeradius/sites-available/default
FreeRADIUS Version 3.0.16 แก้ไขที่แฟ้ม /etc/freeradius/3.0/sites-available/default

ประมาณบรรทัดที่ 325 Pre-accounting ใน module ชื่อ preacct

preacct {
               preprocess
               เพิ่ม
}

หากยังไม่มีบรรทัดเหล่านี้ ให้เพิ่มด้วยต่อท้ายบรรทัด preprocess

# append update for pGina no attribute Framed-IP-Address
if (NAS-IP-Address != 127.0.0.1) {
       update request {
             Framed-IP-Address = "%{NAS-IP-Address}"
       }
}

(จบส่วนเพิ่มเนื้อหา)

pgina08
แล้ว restart FreeRADIUS ใหม่
sudo service freeradius stop
sudo service freeradius start

จากนั้นรอให้ทางฝั่งผู้ดูแล Firewall ตั้งค่าโปรแกรมที่ดึงข้อมูลที่ FreeRADIUS ของเราส่งไปนำไปใส่ใน Firewall Rule อนุญาตเครื่องไคลเอ็นต์ไม่ต้อง login ซ้ำ

อ้างอิง
http://pgina.org/docs/v3.1/radius.html

Tags: freeradius login authentication pGina radius accounting realm windows authentication

Post navigation

← วิธีการใช้ Google Classroom อย่างละเอียด
สร้างโปรแกรมทดสอบเว็บแอพพลิเคชันอัตโนมัติด้วย Selenium WebDriver : ตอนที่ 1 การติดตั้ง Web Driver →

ipv6 ready

Recent Posts

  • Protected: Zoom PSU (6/10): การกู้ไฟล์วิดีโอ บน Cloud Storage ของ Zoom March 17, 2023
  • วิธีการติดตั้ง Chat GPT บน Windows February 23, 2023
  • เขียน JavaScript RegExp กับข้อมูล sensitive ให้แสดง 4 ตัวอักษรสุดท้าย February 21, 2023
  • PSU Internet was Affected by Submarine Cable February 21, 2023
  • Nessus Essentials February 20, 2023
August 2015
M T W T F S S
 12
3456789
10111213141516
17181920212223
24252627282930
31  
« Jul   Sep »

Authors

Categories

Archives

Most Viewed Posts

  • สร้าง Form ลงทะเบียนออนไลน์ด้วย Google Form (รูปแบบใหม่) ให้ตอบรับผ่านทางอีเมลโดยอัตโนมัติ พร้อมปิด Form อัตโนมัติเมื่อครบเต็มจำนวน (232,281)
  • วิธีการหา Driver ขั้นเทพ เมื่อในเว็บไซต์ไม่มีให้โหลด (141,213)
  • วิธีแก้ไข Excel เปิดไฟล์ CSV แล้วอ่านภาษาไทยไม่ออก (140,546)
  • รู้จักฟังก์ชัน Excel ตอนที่ 2 เรื่อง ตระกูลท่าน Count (COUNTIF, COUNTIFS) (122,825)
  • วิธีการใช้ Google Sheets เป็นฐานข้อมูล (114,209)
  • ASP.NET MVC Part 1 : ทำความรู้จักกับ ASP.NET MVC (76,535)
  • การ Save ภาพแผนที่จาก Google Earth เป็นภาพละเอียดคุณภาพสูง (73,121)
  • [GAFE] ใช้ Google Forms เพื่อ Upload ไฟล์ได้แล้ว (62,641)
  • ข้อแตกต่างระหว่างการลงนามเอกสารด้วย Electronic Signature กับ Digital Signature (53,560)
  • การเก็บพิกัด GPS ด้วย Android device (50,044)
  • วิธีลดขนาดไฟล์ photo ให้เล็กลงก่อนอัปโหลดขึ้นเว็บไซต์ (49,026)
  • สร้างแบบฟอร์มลงทะเบียนออนไลน์ด้วย Google Form ให้ตอบรับผ่านทางอีเมลโดยอัตโนมัติ (48,114)
  • เทคนิคการใช้ Word ในการทำบรรณานุกรม (47,887)
  • ทำ bootable USB drives ด้วยโปรแกรม Rufus for Windows (47,163)
  • Windows – วิธีการถอน Windows Key ลิขสิทธิ์ประจำเครื่อง (46,784)

Copyright © 2023 CoP PSU IT Blog. All Rights Reserved. The Magazine Basic Theme by bavotasan.com.