วันจันทร์ที่ 13 ธันวาคม พ.ศ. 2553

Linux, Secure Shell : ระบุเวลาในการใช้งาน SSH

ในกรณีที่ต้องการระบุเวลาในการใช้งาน SSH เช่น ต้องการอนุญาตให้ user1 สามารถ Login ผ่าน SSH ได้เฉพาะวันที่จันทร์ - ศุกร์ เวลา 08.00 - 15.00 เท่านั้น ส่วนวันและเวลานอกนั้นไม่อนุญาตให้ Login ได้ เป็นต้น ซึ่งในกรณีนี้จะใช้ความสามารถของ PAM เข้ามาช่วย

ระบบที่ใช้ทดสอบ
OS : Ubuntu Linux 10.04.1 x64 LTS

โจทย์ที่ต้องการ
อนุญาตให้ user1 สามารถ login ผ่าน SSH ได้ตามเวลาที่กำหนด คือ วันจันทร์ - ศุกร์ เวลา 08.30 - 15.00 เท่านั้น

เริ่มด้วยแก้ไขไฟล์ /etc/pam.d/sshd โดยเพิ่ม

account required pam_time.so

จากนั้นแก้ไขไฟล์ /etc/security/time.conf โดยเพิ่ม

sshd;*;user1;MoTuWdThFr0830-1755

จากนั้นทำการ restart SSH

root@Linux:~# /etc/init.d/ssh restart

จากนั้นทำการทดสอบใช้งาน จะพบว่า user1 ไม่สามารถ login ได้ ส่วน user อื่นยังสามารถใช้งานได้ตามปกติ

ตัวอย่าง Log ที่เกิดขึ้นจากการ login ของ user1 นอกเวลาที่กำหนดไว้

Dec 13 18:06:34 Linux sshd[3471]: Failed password for user1 from 172.17.12.51 port 62763 ssh2

ข้อสังเกตุ
หาก user1 ได้ทำการ login ในเวลาที่กำหนด แต่ยังคง Session ไว้จนเกินเวลาที่กำหนด ระบบจะไม่ตัด Session นั้นทิ้ง

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

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