1
I HC BÁCH KHOA HÀ NI
VIN CÔNG NGH THÔNG TIN VÀ TRUYN THÔNG ĐỒ ÁN MÔN HỌC
XÂY DỰNG CÁC ỨNG DỤNG PHÂN TÁN
CƠ CHẾ ĐĂNG NHẬP MỘT LẦN - SINGLE SIGN ON Sinh viên thc hin : Phùng Vũ Nhật Duy
Lp Truyn Thông Mng K53
ng dn : PSG.TS Nguyễn Linh Giang HÀ NI 11 - 2012
2 MỤC LỤC
I. Cơ sở lý thuyết 3
1. Cơ chế đăng nhập một lần - Single Sign On 3
1.1. Khái niệm 3
1.2. Lợi ích 4
1.3. Các mô hình Single Sign On 4
2. Xác thực Kerberos 5
2.1. Khái niệm 5
2.2. Cách hoạt động 7
phí.
1.3. Các mô hình Single Sign On
a. Mã đăng nhập một lần
p mt ln (One-time password token OTP token) là mng thc mà
i mi li dùng s c cp mt password mi. Np
truyn thi dùng ch có mt password c nh và rt d tr thành nn nhân ca tn công nghe lén,
thì v có giá tr mt ln và s không tn ti lâu.
m duy nht c password rt phc tp và có th gây phin phc khi
i dùng thc hip.
b. Mô hình SAML
SAML (Security Assertion Markup Language) là gii pháp da trên ngôn ng XML (eXtensible
Markup Language) cho vii thông tin xác thc gia nhà cung cp dch v và doanh nghip. Khi
i dùng gi mt dch v hoc tài nguyên, nhà cung cp xác thc s cp chng thi dùng. Sau
p dch v s da vào thông tin chng th cung cp quyn truy cp dch v hay tài
i dùng.
c. Smart card
Mô hình Smart card (Th thông minh) s dng các thông tin chng thc cha trong th xác thc
s dng các loi th này cn phi có các thit b chuyên dng.
Th bo him y t ti Pháp
5
d. Kerberos
Kerberos là mt giao thc chng thc mc phát trin trong d án Athena ca hc vin công
ngh Massachusetts (MIT). Tên ca giao thc ly t tên cu Cerberus canh
instance và TTMK53.COM là realm.
c. Key Distribution Center (KDC)
Kerberos không xây dng các giao thc chng thc phc tp cho mi máy ch mà hong da trên
mt máy ch chng thc tp trung KDC (Key Distribution Center). i khóa, cung
cp khóa (vé) cho vic chng thi dùng và bo mt truyn thông bi khoá phiên trong vé. KDC gm 3
phn:
Máy ch chng thc AS (Authentication Server) bit khoá mt ca tt c
trên ms d liu tp trung.
Máy ch cp khoá TGS (Ticket Granting Server) cung cp vé dch v i dùng truy
nhp vào các máy ch trên mng.
d liu (Database) ca nó
d. Authentication Server (AS)
Khi 1 user (client) mun tham gia vào mt realm ca Kerberos thì thay vì user phi xác thc
vi AS. Khi nhn yêu cu tham gia h thng Kerberos ca user, AS kim tra nhân dnh ca ngi
yêu cu có nm trong c s d liu ca mình không. Nu có thì AS gi 2 gói tin sau ti ngi s
dng:
Gói tin A: "Khóa phiên TGS/client" c mt mã hóa vi khóa bí mt ca ni s dng.
Gói tin B: Ticket-Granting-Ticket (TGT)
e. Ticket-Granting-Ticket (TGT): c cp bi AS, bao gm ID máy client, a ch mng ca client, thi
hn cc mã hóa vi khóa bí mt ca TGS.
7 f. Ticket Granting Server (TGS)
TGS là b phn nhn vé chp thun TGT t user.TGS có nhim v kim tra các vé TGT có giá tr
không bng cách kic mã hóa bi key vi key ca TGT server Kerberos không.Nu
Truyn thông vn khu cp, nhm ly v d liu chng
th y v chng thc cho các máy ch khác mà không phi nhp li khoá bí
mt ca client. Khoá bí mt cc s dng cho c vic mã hoá và gii mã.
1. i dùng U p vào h thng, username và password vào máy client. Bng thu
máy client s chuyi mt khu thành khoá mt (secret key) ca i dùng U. Client gi yêu
cu xin cp TGT ti AS
2. AS s truy l d liu, ly khoá bí mt ca U, gii mã phn d liu tin chng thc, kim tra
có hp l không. Nu có, AS gi li dùng U:
Gói tin A: Khóa phiên TGS/clientClient/TGS Session Key) c mã hóa vi khóa mt ca
ni s dng.
Gói tin B: Ticket-Granting-Ticket (TGT): ID ca ch mng ca client, thi hn ca
vé và Khóa phiên TGS/client c mã hóa vi khóa bí mt ca TGS.
3. Khi máy client nhc hai gói tin A và B, nó s gii mã gói tin A vi khóa m
password ci dùng. Nu password ci dùng nhp vào client không trùng vi password trong
AS, mã mt ci dùng s không th gic li, nu password trùng
kh i dùng s dùng khóa mt (secret key) c gi
. (máy client s không th gic mã hóa bi khóa mt ca TGS).
9
Giai đoạn 2: Truyền thông với máy chủ cấp vé dịch vụ TGS, lấy về service ticket truy nhập máy chủ S
4. Khi yêu cu dch v, máy client s gi 2 gói tin ti Ticket Grant Server
Gói tin C: Cha Ticket-Granting-Ticket (t gói tin B) và ID ca dch v yêu cu .
Gói tin D: Authenticator (B d liu chng thc) c mã hoá bng Khóa phiên TGS/client, gm
ID i dùng và tem thi gian. Authenticator ch s dng mt ln và có hiu lc trong mt thi
gian ngn.
mt trong hai bên tham gia truyn thông.
11 2.3. Đánh giá ƣu nhƣợc điểm
a. Ƣu điểm
Theo c m: ci dùng, ca nhà qun tr, nhà phát trin h thng, kh a
Kerberos là:
Tăng sự tiện dụng cho người dùng: i dùng không cn php nhiu ln khi s dng h
thn phi nh quá nhiu mt khu cho các dch v trong h thng. Tt c ch là
mt tài khon cho ht thy các dch v trong h thng.
Hỗ trợ các nhà phát triển hệ thống: SSO cung cp mt framework chng thc chung cho các nhà
phát trin. Vì th h không cn phn chng thc khi xây dng h thng n
các yêu cu gn h thc chng thu này s làm cho các nhà phát trin hoàn toàn
yên tâm v an ninh ca h thc xây dc công vic nng nhc là xây dng an
toàn bo mt cho h thng mi.
Làm đơn giản hoá công tác quản trị: Theo truyn thng, mi ng d d lii dùng
riêng phc v chng thc lp ca nó, nên khi các h thng tham gia vào mng, s
i dùng s t nhanh làm quá ti công vétác qun tr. Vi SSO, mi h thng s
d d lii dùng tp trung vì th công tác qun tr c tp trung hoá, s ng
i dùng git nhiu.
Tăng cường bảo mật: H th chng tho mt truyn thông
trên mng. Gim thiu s ln nhp mt kh an toàn cho h thng vì vi s
ng mt khu nhing ghi mt khu ra xung quanh, d l.
b. Nhƣợc điểm
Sau khi cài đặt dịch vụ xong, sẽ hiện ra thông báo nâng cấp lên domain bằng dcpromo.exe
Sau đó, tạo một domain mới trong một forest mới. Chọn next để tiếp tục
Điền tên domain: TTMK53.bk.vn. Chọn next để tiếp tục 14
Tiếp theo, lựa chọn function Window Server 2008 cho forest. Chọn next để tiếp tục cài đặt DNS,
sau đó là thông báo đường dẫn đến các thư mục của hệ thống, tóm tắt thông tin cài đặt. Sau khi cài đặt
xong, sẽ hiện ra thông báo cài đặt hoàn thành
Để Window Server có khả năng chứng thực, cần download và cài đặt Windows Server 2003
Resource Kit Tools tại địa chỉ: . Trong
bộ công cụ này, có sẵn 2 phần mềm dùng để chứng thực Kerberos là kerbtray và klist.
Sử dụng phần mềm để chứng thực user admin: vào chế độ dòng lệnh CMD, gõ lệnh “klist tickets”
và “klist tgt” để xem thông tin ticket
15
Xem thông tin ticket (vé) cho principal qua giao diện, thông tin
gồm tên dịch vụ, thời gian tồn tại của vé, các cờ báo hiệu và loại mã hóa
sau:
- Kích hot site1 va to : #sudo a2ensite site1
- Cu hình SSL cho site1: #sudo nano site1-ssl, ti tên mic cha localhost ging file
site1
18
- Khng li server: #sudo /etc/init.d/apache2 restart
- Vào chnh sa file host, gõ lnh : #sudo nano /etc/hosts
- trình duya ch www.example.com , nu hin ra n
u hình thành công cho tên min EXAMPLE.COM
b. Cấu hình bind9 để tạo dịch vụ DNS
- t bind9 : #sudo apt-get install bind9 dnsutils
- Các file cu hình trong /etc/bind/
u khin
named.conf.options: file tùy chnh
named.conf.default-nh
- c cu hình DNS
kí tên min qun 2 file dành cho zone thun và zone nghch
Mô t ni dung ti file zone thun
Mô t ni dung tc
- n qun 2 file dành cho zone thuc: vi tên mic
t ta ch 192.168.1.11, vào file named.conf.local
- c qun tr bi ti p ch i dùng root trên KDC, gõ
lnh: #sudo kadmin.local , tt s lnh chsau:
i dùng: kadmin: addprinc [username]
i dùng: kadmin: delprinc [username]
Xem danh sách các principal: kadmin: listprincs
…
22 - n có cu hình nh, nu không h thng s không nhc KDC
trong quá trình ly vé chng thc.
- Sau khi to principal mi, có th kim tra bng câu lnh: #kinit [username]/[instance], h thng s yêu
cu nhp password ca principal. Sau khi nhp password, thông tin v TGT s c thu th
trong cache. Lnh kinit có nhiu tham s -l tùy chnh v thi hn ca vé. Ví d khi user
xin vé vi thi hn 30 phút, gõ lnh: kinit –l 30m
23
- Vi lnh klist ta s c thông tin v Ticket-Granting-Ticket (TGT) cho user
- Tin ích kdestroy xóa khóa xác thc trong cache ca h thng b 0 vào cache, sau
cache
Cu trúc : kdestroy [-q] [-c cache_name] [-4] [-5]
-q : chy lnh mà không phát ting báo hiu
p mt li li ích to ln trong v bo mt vi
i dùng. Do hn ch s i dùng có th c các cuc tn công
nghe lén trên mng. Hin nay, có nhiu mô hình trin khai c xác thc Kerberos
ca hc vi chng thc mnh cho các ng dng mng
phân tán; nó cho phép các thc th truyn thông trong mng chng thc ln nhau mà vm bo an toàn,
chng nghe lén hay tng (replay attack). Kerberos có th trin khai trên c môi
án này, tuy phn trin khai th nghim vn c s
ng rng s hoàn thi na phn thc nghim trong thi gian ti.
c cy Nguyễn Linh Giang, thi ý và có nhng dn c
th án này.
Hà nội, tháng 11 năm 2012