ติดตั้ง libpam-radius-auth บน ubuntu

เป็นการตั้งค่าให้ linux ubuntu ทำการ authen กับ user ผ่าน radius
ทดสอบกับ ubuntu 10.04

ติดตั้งด้วยคำสั่ง sudo apt-get install libpam-radius-auth
แก้ไขแฟ้ม /etc/pam_radius_auth.conf  ไปบรรทัดประมาณที่ 25
# server[:port] shared_secret      timeout (s)
127.0.0.1       testing123             10
other-server    other-secret       3
ให้แก้ไขชื่อ server, shared_secret ให้ถูกต้องกับ radius ตามต้องการ
ค่า timeout ตั้งให้นานหรือเร็วขึ้นตามความเหมาะสมกับระบบที่ใช้งาน
ต้องสร้าง user บนลินุกซ์ให้มี home ใช้งานก่อน จึงจะสามารถใช้งานได้
สมมติว่า user ชื่อ superman ใช้คำสั่งว่า
sudo useradd -m -s /bin/bash superman
แก้ไขแฟ้ม /etc/pam.d/common-auth ไปบรรทัดประมาณที่ 17
บรรทัดข้อความเดิมว่า
auth    [success=1 default=ignore]      pam_unix.so nullok_secure
ให้แทรกบรรทัดข้อความเพิ่มว่า
auth    sufficient      pam_radius_auth.so
กลายเป็นบรรทัดข้อความเดิมว่า
auth    sufficient      pam_radius_auth.so
auth    [success=1 default=ignore]      pam_unix.so nullok_secure
ทดสอบ login เข้าใช้งานด้วย user ผ่าน radius ได้เลย
ในกรณีที่ใช้กับ pam_radius_auth.so โดยไม่มีการสร้าง home ของ user มาก่อน
เราสามารถสร้าง home ให้ใช้งานชั่วคราวได้
ให้สร้างแฟ้ม /etc/pam.d/pam-useradd.sh มีข้อมูลดังนี้
#!/bin/bash
if [ -z "$(grep "^${PAM_USER}:" /etc/passwd)" ] ; then
  useradd -m -b /tmp -s /bin/bash ${PAM_USER}
fi

แล้วแก้ไขแฟ้ม /etc/pam.d/common-auth ไปบรรทัดประมาณที่ 17
บรรทัดข้อความเดิมว่า
auth    sufficient      pam_radius_auth.so
auth    [success=1 default=ignore]      pam_unix.so nullok_secure
ให้แทรกบรรทัดข้อความเพิ่มว่า
auth    optional        pam_exec.so /bin/sh /etc/pam.d/pam-useradd.sh
กลายเป็นบรรทัดข้อความเดิมว่า
auth    optional        pam_exec.so /bin/sh /etc/pam.d/pam-useradd.sh
auth    sufficient      pam_radius_auth.so
auth    [success=1 default=ignore]      pam_unix.so nullok_secure

ต่อไปแก้ไขแฟ้ม /etc/pam.d/common-session ไปบรรทัดประมาณที่ 17
บรรทัดข้อความเดิมว่า
session [default=1]                     pam_permit.so
ให้แทรกบรรทัดข้อความเพิ่มว่า
session    required    pam_mkhomedir.so
กลายเป็นบรรทัดข้อความเดิมว่า
session [default=1]                     pam_permit.so
session    required    pam_mkhomedir.so

ทดสอบ login เข้าใช้งานด้วย user ผ่าน radius ได้เลย
หากเป็น user เคยมี home บน server นี้แล้ว ก็จะเข้าใช้งานได้ทันที
แต่ถ้ายังไม่เคยมี home บน server นี้ การ login ครั้งแรกจะไม่สำเร็จ ให้ login ซ้ำอีกครั้ง จึงจะเข้าใช้งานได้
มีปัญหากับ screensaver เมื่อ screensaver ทำงานแล้ว  unlock ไม่ได้ ระบบแจ้งว่ารหัสผ่านผิด
ต้องเลิกใช้ screensaver ด้วยการถอดโปรแกรม gnome-screensaver ออกด้วยคำสั่ง
sudo apt-get remove gnome-screensaver