 |
|
|
|
ThaiCERT:
Thai Computer Emergency Response Team
ศูนย์ประสานงานการรักษาความปลอดภัยคอมพิวเตอร์ ประเทศไทย |
|
| |
| |
|
ชื่อเรื่อง: การติดตั้งและใช้งาน
OPIE (One-Time Password In Everything)
เรียบเรียงโดย: เสาวภา ปานจันทร์,
ดร. บรรจง หะรังษี และ เลอศักดิ์
ลิ้มวิวัฒน์กุล
เรียบเรียงเมื่อ: 7 มิถุนายน 2547
กล่าวนำ
OPIE (One-Time Password In Everything) เป็นวิธีการพิสูจน์ตัวตนที่สามารถทำให้ผู้ใช้มั่นใจได้ว่า
ระบบของตนจะได้รับความปลอดภัยจากบุคคลที่ไม่ได้รับอนุญาต มากกว่าวิธีการแบบใช้ชื่อผู้ใช้และรหัสผ่านแบบธรรมดา
การพิสูจน์ตัวตนแบบ One
Time Password (OTP) หรือการใช้รหัสผ่านเพียงครั้งเดียว ถูกพัฒนาขึ้นโดย Bellcore
(ในปัจจุบันเป็น Telcordia) เป็นฟรีซอฟต์แวร์ที่รู้จักกันในนามของ S/Key ในปีค.ศ.
1994 S/Key ได้กลายเป็นซอฟต์แวร์เพื่อการค้า ดังนั้น U.S. Naval Research Laboratory
(NRL) จึงได้พัฒนา OTP อีกตัวออกมา ซึ่งเรียกว่า OPIE หลักการทำงานของ OPIE และ
S/Key เหมือนกันคือการใช้ challenge/response แต่แตกต่างกันตรงที่อัลกอริทึมที่ใช้ในการคำนวณ
response ของ OPIE ใช้ MD5 ส่วน S/Key ใช้ MD4
เอกสารฉบับนี้เป็นผลการทดลอง จากการนำ OPIE2.4 มาติดตั้งเพื่อใช้งานจริง ซึ่งใช้
ระบบปฏิบัติการ Red Hat Linux 9.0 จุดประสงค์ของเอกสารฉบับนี้คือการศึกษาระบบการทำงานของ
OPIE เพื่อการนำไปประยุกต์ใช้ในระบบจริงและปรับใช้ตามความเหมาะสมขององค์กร
ภายในเอกสาร เอกสารฉบับนี้เริ่มกล่าวถึงศัพท์ที่ควรทราบในการใช้
OPIE หลักการทำงานและวิธีการติดตั้งโปรแกรม
OPIE บนระบบปฏิบัติการ Red Hat Linux 9.0 และวิธีการใช้งาน
OPIE ตามรูปแบบการพิสูจน์ตัวตนแบบ One Time Password ในท้ายของเอกสารจะกล่าวถึงคำสั่งที่ใช้ในการใช้งานรวมถึงข้อควรระวังที่ได้พบระหว่างการติดตั้งและทดสอบการใช้งาน
สำหรับรายละเอียดของการพิสูจน์ตัวตนโดยละเอียดสามารถหาอ่านเพิ่มเติมได้ในเอกสารเผยแพร่เรื่องความรู้เบื้องต้นเกี่ยวกับการพิสูจน์ตัวตน
ศัพท์ที่ควรทราบในการใช้ OPIE
| sequence
number |
เป็นส่วนหนึ่งของ challenge ซึ่งเป็นเลขลำดับที่ใช้ในการนับครั้ง
ที่ทำการเข้าระบบ และเลขลำดับจะเริ่มนับจากมาก ไปน้อย (499, 498,...) |
| seed |
เป็นส่วนหนึ่งของ challenge ซึ่งจะประกอบด้วยตัวอักษร 2 ตัว และตัวเลข 4
ตัว
เช่น lo2182
|
| secret
pass phrase |
เป็นประโยค หรือตัวอักษรอะไรก็ได้ที่มีความยาวตั้งแต่ 1-127 ตัวอักษร โดยที่ผู้ใช้เป็นคนสร้างขึ้น
และไม่ควรให้ผู้อื่นรู้
เช่น we are the champion
|
| challenge |
เป็นการรวมกันระหว่าง sequence number และ seed
เช่น 498 lo2182
|
| response |
คำภาษาอังกฤษ 6 คำ ซึ่งได้จากการคำนวณโดยใช้ secret pass phrase และ challenge
ใช้ใส่แทนรหัสผ่านในการพิสูจน์ตัวตนแบบ การใช้รหัสผ่าน
เช่น THIS GEE MOS HIRE LAYS LUKE
|
หลักการทำงานของ OPIE
ถ้ามีการใช้งาน OPIE หน้าจอล็อกอินระหว่างการใช้งานพิสูจน์ตัวตนแบบรหัสผ่านตามบัญชีผู้ใช้และแบบรหัสผ่านครั้งเดียว
(One Time Password) มีข้อสังเกตความแตกต่างของหน้าจอล็อกอินก่อนการใช้งานระบบดังนี้
แสดงหน้าจอของการเข้าสู่ระบบแบบวิธีการใส่ชื่อผู้ใช้และการใส่พาสเวิร์ด ซึ่งเป็นระบบที่นิยมใช้กันโดยทั่วไป

รูปที่ 1 การเข้าสู่ระบบโดยการใช้พาสเวิร์ด
แสดงหน้าจอของการเข้าสู่ระบบแบบวิธีการใส่ response แทนการใช้พาสเวิร์ด ซึ่งเป็นวิธีการแบบ
OPIE

รูปที่ 2 การเข้าสู่ระบบโดยการใช้ response
การคำนวน reponse ถือเป็นหัวใจของการพิสูจน์ตัวตนโดยใช้รหัสผ่านเพียงครั้งเดียวในการล็อกอินเข้าสู่ระบบ
สามารถอธิบายการคำนวนค่า response ได้ตามแผนภาพข้างล่างนี้

รูปที่ 3 OPIE System
จากรูปที่ 3 แสดงการทำงานของ OPIE ซึ่งในขั้นตอนแรกเมื่อเข้าสู่ระบบ ผู้ใช้ต้องใส่ชื่อผู้ใช้และ
response ซึ่ง response จะได้จาก secret pass phrase และ challenge (เมื่อทำการติดตั้ง
OPIE แล้วโปรแกรมก็จะทำการสร้าง challenge ให้เอง) โปรแกรมจะนำทั้งสองส่วนนี้มารวมกันแล้วนำมาคำนวณโดยผ่านอัลกอริทึม
MD5 จากนั้นก็จะได้ response ออกมาเพื่อใช้ในการ login และทุกๆครั้งที่ทำการ login
โดยใช่ response จะทำให้ response ชุดนั้นๆโดนลบออกไป และการใช้ response จะต้องใช้โดยเรียงตามลำดับตาม
sequence number
และเมื่อมีการล็อกอินครั้งต่อไป รหัสผ่านสำหรับการล็อกอินจะเปลี่ยนไปดังการทำงานตามแผนภาพ

รูปที่ 4 OPIE System (ต่อ)
จากรูปที่ 3 และรูปที่ 4 แสดงให้เห็นการล็อกอินเข้าสู่ระบบแบบการใช้ OPIE โดยลำดับที่
498 เมื่อทำการ login ไปแล้ว response ก็จะถูกลบออกไป ครั้งต่อไปก็จะ login โดยใช้ลำดับที่497
และก็จะใช้ response อีกชุดหนึ่ง ซึ่งทำให้การล็อกอินเข้าสู่ระบบจะใช้รหัสผ่านเพียงครั้งเดียวและจะไม่ซ้ำในการล็อกอินครั้งต่อไป
ตัวอย่างการคำนวน response ด้วยการใช้คำสั่ง opiekey บนระบบปฏิบัติการตระกูลยูนิกซ์
ซึ่งค่าที่ต้องใช้ในการคำนวนคือค่า Challenge และคำสั่งจะถาม secret passphase
เพื่อใช้ในการคำนวนค่า response เพื่อใช้สำหรับการล็อกอินเข้าสู่ระบบ
# opiekey 498 lo2182
Using the MD5 algorithm to compute response.
Reminder: Don't use opiekey from telnet or dial-in sessions.
Enter secret pass phrase:
THIS GEE MOS HIRE LAYS LUKE
บนระบบปฏิบัติการวินโดวส์สามารถใช้โปรแกรม winkeys ในการคำนวน response ได้เช่นเดียวกันดังรูป

รูปที่ 5 โปรแกรม winkey
หารายละเอียดเพิ่มเติมของโปรแกรมเสริมการใช้งาน OPIE ได้ที่ http://www.inner.net/pub/opie/contrib/
วิธีการติดตั้งโปรแกรม
OPIE บนระบบปฏิบัติการ Red Hat Linux 9.0
- ดาวน์โหลดโปรแกรม OPIE ได้จาก http://www.inner.net/pub/opie
[1] ซึ่ง OPIE ที่ใช้กับ Red Hat Linux9.0 คือ opie-2.4.tar.gz ซึ่งเป็นเวอร์ชันล่าสุดปรับปรุงเมื่อวันที่
19 มกราคม ค.ศ. 2001
- ขยายไฟล์ที่ดาวน์โหลดออกมาเพื่อใช้งาน โดยพิมพ์คำสั่งดังนี้
# tar zxvf opie-2.4.tar.gz
- เมื่อใช้คำสั่ง ls จะแสดงผลดังนี้
# ls
anaconda-ks.cfg install.log install.log.syslog opie-2.4
แสดงชื่อไฟล์ทั้งหมดหลังจากขยายไฟล์แล้ว จะเห็นได้ว่ามีไดเรกทอรี opie-2.4 เพิ่มขึ้นมา
- เข้าไปในไดเรกทอรี opie-2.4 โดยพิมพ์คำสั่งดังนี้
# cd opie-2.4
- เมื่อพร้อมใช้แล้ว พิมพ์คำสั่ง configure
# ./configure
- ใช้คำสั่ง make install เพื่อติดตั้ง OPIE เพื่อใช้งานกับระบบ พิมพ์คำสั่งดังนี้
# make install
หมายเหตุ การใช้คำสั่ง make install เป็นการติดตั้งทั้ง
client และ server ในตัวเดียวกันถ้าต้องการติดตั้งเฉพาะ
client ใช้คำสั่ง
# make client-install
และถ้าต้องการติดตั้งเฉพาะ server ใช้คำสั่ง
# make server-install
ทำการติดตั้งโปรแกรม opielogin ซึ่งจะแทนที่โปรแกรม login และ opieftpd แทน ftpd
ของระบบโดยอัตโนมัติ
- ทดสอบว่า OPIE ได้ถูกติดตั้งและสามารถใช้งานได้ โดยพิมพ์คำสั่ง
login แล้วควรจะแสดงผลดังนี้
# login
login: Dumbo
otp-md5 498 lo2182
Response or Password:
Response:
หารายละเอียดการติดตั้งและพารามิเตอร์ของการคอมไพล์ OPIE เพิ่มเติมได้ในไฟล์ INSTALL.txt
วิธีการใช้ OPIE ในการล็อกอินเข้าสู่ระบบ
- ก่อนที่ผู้ใช้แต่ละคนจะใช้ OPIE ได้ จะต้องเพิ่มรายชื่อผู้ใช้คนนั้นๆ เข้าไปในไฟล์ของ
/etc/opiekeys ก่อน โดยผู้แลระบบเท่านั้นโดยใช้คำสั่ง opiepasswd
# opiepasswd -c Dumbo
เพื่อเป็นการเพิ่มบัญชีผู้ใช้ที่สามารถล็อกอินเข้าสู่ระบบโดยใช้
OPIE ได้
Adding Dumbo:
Only use this method from the console; NEVER from remote. If you are using
telnet, xterm, or a dial - in, type ^C now or exit with no password.
Then run opiepasswd without the -c parameter.
Using MD5 to compute responses.
Enter new secret pass phrase: we are the champion
Again new secret pass phrase: we are the champion
ID Dumbo OTP key is 499 lo2182
AMY BACH CHAW BAND MORN MAT
หมายเหตุ
we are the champion จะไม่แสดงผลบนหน้าจอ เนื่องจากเป็นรหัสลับ
- สามารถตรวจสอบได้ว่าชื่อผู้ใช้ที่เพิ่มเข้าไป ถูกบันทึกอยู่ในไฟล์ /etc/opiekeys
หรือไม่ โดยใช้คำสั่ง
# cat /etc/opiekeys
ซึ่งจะแสดงผล ดังนี้
| fie 0489 lo8930 |
efa8a875ad909bec |
May 13,2004 13:39:47 |
| katn 0496 lo6912 |
e3ed23aa9828a41e |
May 13,2004 13:41:38 |
| Dumbo 0499 lo2182 |
6aa70356de2493e7 |
May 31,2004 13:17:02 |
จากผลที่แสดงข้างต้น อธิบายได้ว่า
- ในคอลัมน์แรกจะเป็นชื่อผู้ใช้และ challenge ซึ่ง challenge ที่ปรากฏอยู่นี้แสดงให้เห็น
sequence number ที่ถูกใช้ไปครั้งล่าสุด
- คอลัมน์กลางเป็น secret pass phrase ที่ถูกเข้ารหัสไว้ด้วยวิธีการของ OPIE
- คอลัมน์สุดท้ายจะแสดงวันเดือนปีที่ ผู้ใช้คนนั้นๆเพิ่มเข้าสู่ระบบ
- สามารถขอดู challenge โดยใช้คำสั่ง opieinfo
ในขณะที่ทำงานอยู่บน root โดยพิมพ์คำสั่งดังนี้
# opieinfo Dumbo
จะแสดงผลดังนี้
498 lo2182
คำสั่ง opieinfo ใช้เพื่อแสดง
challenge ลำดับต่อไปที่จะใช้ในการล็อกอินเข้าสู่ระบบ ซึ่งสามารถนำ challenge
นี้ไปคำนวณ เพื่อหาค่า response ได้ แต่ในการคำนวณหาค่า response นี้ จะต้องใช้
secret pass phrase ในการคำนวณด้วย
- การหา response สามารถทำได้ 2 แบบ คือการคำนวณครั้งต่อครั้ง
และการให้แสดงออกมาเป็นบัญชี (list) โดยใช้คำสั่ง
opiekey (เมื่อทำงานอยู่บน root)
การหา response แบบครั้งต่อครั้ง โดยพิมพ์คำสั่ง ดังนี้
# opiekey 498 lo2182
Using the MD5 algorithm to compute response.
Reminder: Don't use opiekey from telnet or dial-in sessions.
Enter secret pass phrase:
THIS GEE MOS HIRE LAYS LUKE
การหา response แบบให้แสดงผลเป็นรายการ โดยพิมพ์คำสั่งดังนี้
# opiekey -n 5 498 lo2182
Using the MD5 algorithm
to compute response.
Reminder: Don't use opiekey from telnet or dial-in sessions.
Enter secret pass phrase:
494: NAVY SEAR NE ELK JOKE MUSH
495: BLOT MARC TIM ICY CLUE LASS
496: ADA FIB BOMB IDLE SLUG ORAL
497: LIE TIME UP GORE NAT RIFT
498: THIS GEE MOS HIRE LAYS LUKE
เมื่อได้ response ออกมาแล้ว ผู้ใช้ควรจดบันทึกไว้เพื่อใช้ในการเข้าระบบครั้งต่อไป
เลขลำดับจะลดลงครั้งละหนึ่ง ตามจำนวนครั้งในการเข้าสู่ระบบ โดยจะเรียงจากมากไปหาน้อย
(499, 498,...)
- เมื่อผู้ใช้ต้องการเข้าสู่ระบบ โดยใช้วิธีแบบ OPIE จะแสดงผลดังนี้
localhost login: Dumbo
otp-md5 498 lo2182 ext
Response or Password:
Response: THIS GEE MOS HIRE LAYS LUKE
Last login; Thu May 21 10:41:52 on tty1
- การลบชื่อผู้ใช้ออกจากรายชื่อบัญชีผู้ใช้ของการใช้ OPIE นั้นต้องลบรายชื่อภายในไฟล์
/etc/opiekeys โดยตรง
คำสั่งต่างๆที่ใช้ใน OPIE
- opiepasswd
เป็นคำสั่งที่ใช้สำหรับเพิ่มรายชื่อผู้ใช้ ในการเข้าระบบแบบ OPIE ซึ่งมีการใช้พารามิเตอร์ต่างๆดังนี้
| -v |
แสดงเวอร์ชั่นของOPIE และแสดงวันที่ของการปรับปรุง |
| -h |
แสดงพารามิเตอร์ที่สามารถใช้งานได้ในคำสั่งนั้น |
| -c |
ตั้งค่าสถานะเพื่อให้ทำงานที่ console เพื่อความปลอดภัยในการทำงานของระบบ |
| -d |
ตั้งค่าเพื่อให้ผู้ใช้ที่ถูกระบุไว้ไม่สามารถเข้าสู่ระบบโดยการใช้
OPIE |
| -n |
เพื่อระบุค่าเริ่มต้นของ sequence number (ค่าที่ถูกกำหนดมาคือ 499) |
| -s |
เพื่อกำหนดค่า seed number เนื่องจาก OPIE จะกำหนดค่าการสร้าง seed number
โดยใช้ตัวอักษร 2 ตัวแรกของชื่อผู้ใช้และสุ่มค่าตัวเลขอีก 5 ตัว |
ตัวอย่างการใช้คำสั่ง
opiepasswd -c Dumbo
คำสั่งนี้ใช้สำหรับเพิ่มชื่อผู้ใช้เข้าในไฟล์ /etc/opiekeys และระบุว่าตอนนี้ผู้ใช้กำลังทำงานอยู่บนเครื่อง
console และผู้ใช้ที่ถูกเพิ่มเข้าไปคือ Dumbo
- opieinfo
เป็นคำสั่งที่ใช้เพื่อขอดู challenge ลำดับต่อไปที่จะใช้ในการเข้าสู่ระบบ ซึ่งมีการใช้พารามิเตอร์ต่างๆดังนี้
| -v |
แสดงเวอร์ชั่นของOPIE และแสดงวันที่ของการปรับปรุง |
| -h |
แสดงพารามิเตอร์ที่สามารถใช้งานได้ในคำสั่งนั้น |
| <username> |
ระบุชื่อผู้ใช้ ที่ต้องการให้แสดงค่าของ challenge ลำดับต่อไปที่จะใช้ในการเข้าสู่ระบบ
(ค่าที่ถูกกำหนดมาคือ ชื่อผู้ใช้ที่ทำการ run คำสั่งอยู่) |
ตัวอย่างการใช้คำสั่ง
opieinfo Dumbo
คำสั่งนี้ใช้สำหรับขอดู challenge ของผู้ใช้ที่ชื่อ Dumbo
- opiekey
เป็นคำสั่งที่ใช้ในการคำนวณเพื่อหาค่า response เพื่อที่จะนำมาใส่แทนการใส่รหัสผ่านแบบธรรมดา
ซึ่งในการคำนวณหาค่า response เราต้องใช้ challenge และ secret pass phrase
| -v |
แสดงเวอร์ชั่นของOPIE และแสดงวันที่ของการปรับปรุง |
| -h |
แสดงพารามิเตอร์ที่สามารถใช้งานได้ในคำสั่งนั้น |
| -4, -5 |
อัลกอริทึมที่ใช้ในการคำนวณ ใน OPIE จะถูกกำหนดค่าให้ใช้
MD5 |
| -n <ตัวเลข> |
เพื่อระบุค่าของจำนวน response ที่ต้องการให้สร้าง |
| -x |
กำหนดให้แสดงเป็นเลขฐาน16 แทน response |
ตัวอย่างการใช้คำสั่ง
opiekey
-n 5 498 lo2182
คำสั่งนี้เป็นการขอให้โปรแกรมคำนวณ response ให้จำนวน 5 ตัว โดยมี challenge คือ
498 lo2182
ข้อควรระวังของการใช้ OPIE
- เมื่อผู้ใช้ได้ถูกเพิ่มเข้าไปในบัญชีของรายชื่อผู้ใช้ซึ่งอยู่ในพาธของ /etc/opiekeys
แล้ว ถ้าต้องการจะเปลี่ยนแปลงโดยใช้คำสั่ง opiepasswd อีกครั้งจะไม่สามารถทำได้
# opiepasswd -c Dumbo
Adding Dumbo:
Only use this method from the console; NEVER from remote. If you are using
telnet, xterm, or a dial - in, type ^C now or exit with no password.
Then run opiepasswd without the -c parameter.
Using MD5 to compute responses.
Enter new secret pass phrase:
Again new secret pass phrase:
ID Dumbo OTP key is 499 lo2182
AMY BACH CHAW BAND MORN MAT
เมื่อทำการเปลี่ยนแปลงโดยใช้คำสั่ง opiepasswd จะทำให้ seed number ซึ่งประกอบด้วย
ตัวอักษร 2 ตัวและตัวเลข 4 ตัว จะเหลือแค่ตัวเลข 2 ตัว แสดงผลดังนี้
# opiepasswd -c Dumbo
Updating Dumbo:
You need the response from an OTP generator.
New secret pass phrase:
otp-md5
499 lo15
Response:
เมื่อใช้คำสั่ง opiekey เพื่อคำนวณหาค่า Response จะไม่สามารถคำนวณได้
และ OPIE จะฟ้องออกมาว่า ไม่สามารถคำนวณได้เนื่องจาก seed number ต้องมีความยาวมากกว่า
5 ตัวอักษร ดังนี้
# opiekey 499 lo15
Using the MD5 algorithm to compute response.
Seeds must be greater than 5 characters long.
- opiekey จะไม่สามารถคำนวณ response ให้ผู้ใช้ได้เมื่อเลขลำดับเป็น 0
# opiekey 0 lo2182
Using the MD5 algorithm to compute response.
Sequence number 0 is not positive.
แต่ว่าถ้าในกรณีที่ผู้ใช้ ใช้คำสั่งเพื่อให้แสดงผลเป็นรายการจะสามารถทำได้
# opiekey -n 5 1 lo2182
Reminder: Dont use opiekey from telnet or dial-in sessions.
Enter secret pass phrase:
0: HACK TUNA BUFF SOWN LIP VET
1: NEW RUNS MOB LAWS WALE NOOK
- ถ้าในการติดตั้งบนระบบปฏิบัติการ
Red Hat Linux 9.0 ได้เกิดข้อผิดพลาดขึ้นหลังจากคำสั่ง make install ซึ่งจะแสดงผลดังนี้
opieinfo.o
( . text+0xbd): In function 'main' :
: undefined reference to 'errno'
collect2: ld returned 1 exit status
make: *** [ opieinfo ] Error 1
การแก้ไขคือ การเข้าไปแก้ไขในตัวโค้ดของโปรแกรม โดยพิมพ์คำสั่งดังนี้
# cd opie-2.4
# vi opieinfo.c
เพิ่ม #include <errno.h>
#include "opie_cfg.h"
#include <stdio.h>
#include <errno.h>
<---------
#if HAVE_UNISTD_H
#include <unistd.h>
#endif /* HAVE_UNISTD_H
*/
#if HAVE_PWD_H
#include <pwd.h>
#endif /* HAVE_PWD_H */
#include "opie.h"
...
- เพื่อความปลอดภัยในการใช้งาน OPIE โดยระยะไกล ควรใช้โปรโตคอลที่มีการรหัสแทนการใช้
telnet เช่น ssh
บทสรุป
การพิสูจน์ตัวตนแบบการใช้ OPIE ทำให้ผู้ใช้สามารถมั่นใจได้ว่าระบบของตนจะไม่สามารถถูกละเมิดได้โดยง่ายเนื่องจาก
- การใช้ response แทนรหัสผ่าน ทำให้ยากต่อการจำ เพราะฉะนั้นผู้ที่ลักลอบจำพาสเวิร์ดก็จะทำได้ยาก
- การเปลี่ยนชุดของ response ที่ใช้ในการล็อกอินทุกครั้ง ทำให้ผู้ที่ดักจับหรือรู้
responseในครั้งหนึ่งครั้งใด ก็ไม่สามารถเอาไปใช้ในครั้งอื่นๆได้
เอกสารอ้างอิง
[1] OPIE Website, http://www.inner.net/pub/opie
[2] OPIE Manual, OPIE
- One Time Password in Everything, FreeBSD Manual Page
[3] Hal Pomeronz, One-Time Passwords, http://www.deer-run.com/~hal/ns2000/otp.pdf,
2000
[4] OPIE One-Time Passwords, http://www.cs.ait.ac.th/laboratory/security/opie.shml,
May 2001
[5] Dru Lavigne, One-Time Password, http://list.freebsd.org/pipermail/freebsd-bugs/2003-November/003899.html,
2 June 2003
[6] สิริพร จิตต์เจริญธรรม, เสาวภา ปานจันทร์ และ เลอศักดิ์ ลิ้มวิวัฒน์กุล, ความรู้เบื้องต้นเกี่ยวกับการพิสูจน์ตัวตน,
http://www.thaicert.nectec.or.th/paper/authen/authentication_guide.php,
2 พฤษภาคม 2547
[7] กิติศักดิ์ จิรวรรณกูล, การใช้ Secure Shell ในการเข้าถึงระบบจากระยะไกล, http://www.thaicert.nectec.or.th/paper/basic/Secure_Shell.php
, 25 ตุลาคม 2545