Tìm hiểu và triển khai hệ thống xác thực sử dụng OpenLDAP
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP.HCM KHOA CÔNG NGHỆ THÔNG TIN ĐỒ ÁN CHUYÊN NGÀNH Tìm hiểu triển khai hệ thống xác thực sử dụng OpenLDAP Chuyên ngành: QUẢN TRỊ MẠNG Giảng viên hướng dẫn : Ths NGUYỄN NHƯ HOA TP Hồ Chí Minh, tháng năm 2013 Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa LỜI CẢM ƠN Trước tiên em xin gửi lời cám ơn chân thành sâu sắc tới thầy cô giáo trường Đại học Công Nghiệp nói chung thầy cô giáo khoa Công nghệ Thông tin, nói riêng tận tình giảng dạy, truyền đạt cho em kiến thức, kinh nghiệm quý báu suốt thời gian qua Đặc biệt em xin gửi lời cảm ơn đến cô Nguyễn Như Hoa, cô tận tình giúp đỡ, trực tiếp bảo, hướng dẫn em suốt trình làm đồ án chuyên ngành Trong thời gian làm việc với cô, em không ngừng tiếp thu thêm nhiều kiến thức bổ ích mà học tập đƣợc tinh thần làm việc, thái độ nghiên cứu khoa học nghiêm túc, hiệu quả, điều cần thiết cho em trình học tập công tác sau Sau xin gửi lời cảm ơn chân thành tới gia đình, bạn bè động viên, đóng góp ý kiến giúp đỡ trình học tâp, nghiên cứu hoàn thành đồ án chuyên ngành Trang Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa NHẬN XÉT CỦA GVHD Trang Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa NHẬN XÉT CỦA GVPB …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… …………………………………………………………………………… Trang Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa LỜI MỞ ĐẦU LDAP phương tiện chứa liệu công nghệ Đúng ra, LDAP protocol (Light Weight Access Protocol) có ứng dụng cho protocol nhằm mục đích lưu trữ liệu Các dịch vụ ứng dụng khả LDAP rộng rãi khu vực xác thực người dùng (authentication authorisation) Mường tượng DNS có chứa thông tin Một cách tổng quát mà nói, LDAP thường phân chia theo O (Organisation tổ chức) OU (Organisation Unit - phân bộ) Trong OU có OU OU có CN (Common Name), nhóm giá trị thường gọi DN (Distinguished Name - tên gọi phân biệt) Mỗi giá trị chứa LDAP thuộc dạng tên:giá trị, thường gọi LDAP Attribute (viết tắt attr, attr nhận diện LDAP Object Những điểm hình thành gọi LDAP schema có tiêu chuẩn thống ứng dụng phát triển LDAP Đây lý LDAP ưa chuộng cho công tác lưu trữ tích hợp với phận authentication / authorisation chúng dùng LDAP system (bất kể công ty sản xuất) cty sản xuất tuân thủ tiêu chuẩn chung Nếu có hỏi, không dùng CDSL để chứa account người dùng mà phải đụng tới LDAP Câu trả lời là: dùng CSDL cho mục đích Tuy nhiên, CSDL không linh động CSDL có điểm khác LDAP phận độc lập dùng để lưu liệu, hệ thống cần thông tin user account (chẳng hạn), share chung (hoặc nhiều LDAP có thông tin) Thử hình dung hệ thống có 100 UNIX server server phải bảo trì /etc/passwd file Làm cách để đồng hóa 100 /etc/passwd file cách bảo đảm, gọn gàng? Ngoài hệ thống NIS (và NIS+) cho mục đích này, ngày nhiều hệ thống tích hợp sử dụng LDAP không giới hạn platform LDAP đóng vai trò quan trọng việc ứng dụng SSO (single sign on) Điều có nghĩa người đăng nhập vào hệ thống, người truy cập đến servers / services / tài nguyên cho phép mà không cần phải xác thực Trang Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa lại Thử hình dung việc logon mail.yahoo.com, sau nhảy đến yahoo 360, yahoo mailing list mà không cần phải xác thực tài khoản Thử hình dung yahoo có dịch vụ khác yahoo account cần chứa nơi dịch vụ để dùng chung LDAP chứa account để xác thực người dùng Thử hình dung yahoo có 1000 servers 1000 /etc/passwd file để bảo trì ) Ngoài ra, LDAP tạo đặc biệt cho hành động "đọc" Bởi thế, xác thực người dùng phương tiện "lookup" LDAP nhanh, hiệu suất, tốn tài nguyên, đơn giản query user account CSDL Trang Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa MỤC LỤC Trang Báo cáo đồ án chuyên ngành I GVHD : ThS Nguyễn Như Hoa GIỚI THIỆU TỔNG QUAN Giới thiệu tổng quan Linux Giới thiệu Linux Linux Vào năm đầu thập kỷ 90, Linus Tovarlds - sinh viên đại học tổng hợp Helsinki (Phần Lan) - qua trình mày mò nghiên cứu cách làm việc máy tính PC có trang bị xử lý 386 hệ điều hành Minix (là hệ điều hành Unix cỡ nhỏ) Do có hạn chế hệ điều hành này, Linus viết lại số phần mềm để thêm chức cho Hệ điều hành đời với tên gọi Linux - (chữ viết tắt Linus Unix) Ông ta công bố kết miễn phí Internet ông ta ngờ điều khiến cho Linux có phát triển chóng mặt trở thành hệđiều hành tiên tiến nhất, ổn định phổ biến phạm vi toàn giới a Khái niệm Linux Linux tạo thành module hoạt động độc lập với nhau, người dùng tự xây dựng kernel (nhân) cho hệ điều hành cách thêm module cần thiết vào Vì hệ thống Linux có tính linh hoạt cao Windows Thường Linux Trang Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa sử dụng làm máy chủ nhiều làm máy trạm việc cấu hình cho Linux phức tạp nhiều thường phải dùng command line để cấu hình giao diện đồ hoạ Windows Hệ thống chạy Linux thường nhanh ổn định chạy Windows Sở dĩ Linux chưa dùng nhiều cho máy tính cá nhân hỗ trợ giao diện đồ hoạ chưa tốt Tuy nhiên, số phiên hệ điều hành dạng Linux có giao diện đồ hoạ tương đối tốt (như Centos, Solais, Fedora, v.v ) b Các phiên hệ điều hành Linux c Những ưu, nhược điểm HĐH Linux Những ưu điểm: Vấn đề quyền Trong bối cảnh kinh tế giới có xu hướng toàn cầu hóa vấn đề cộm Ở Việt Nam, vấn đề vi phạm quyền phần mềm phổ biến (nước ta dẫn đầu giới số lượng phần mềm dùng quyền) Trang Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa Trước tình hình đó, việc tự xây dựng cho phần mềm thương hiệu Việt Nam trở nên vấn đề cấp bách Phần mềm mã nguồn mở xem giải pháp hữu hiệu cho toán quyền nước ta Phần mềm mã nguồn mở mặt có chi phí rẻ so với phần mềm truyền thống, mặt khác dễ nâng cấp, cải tiến (do cung cấp mã nguồn kèm theo) Chính thế, phát triển phần mềm mã nguồn mở tận dụng công nghệ tiên tiến có sẵn giới, cải tiến cho phù hợp với người Việt Nam, tiết kiệm nhiều công sức so với việc phát triển từ đầu Linux HĐH mã nguồn mở vậy!! Kỹ thuật bật Linux Kinh tế: đặc điểm bỏ qua Linux (ít nước ta nay) Tuy nhiên Linux chưa tất HĐH nhiều ưu điểm khác mà không hệ điều hành có Chính đặc điểm nguyên nhân khiến cho Linux ngày trở nên phổ biến không Việt Nam mà giới Linh hoạt, uyển chuyển : Có thể chỉnh sửa Linux ứng dụng cho phù hợp với Việc Việt hóa Windows xem bạn đồng ý hỗ trợ Microsoft Tuy nhiên với Linux bạn làm điều cách đơn giản hơn.( tham khảo thêm Sản phẩm Việtkey Linux đoạt giải TTVN 2002) Mặt khác Linux cộng đồng lớn người làm phần mềm phát triển môi trường, hoàn cảnh khác nên tìm phiên phù hợp với yêu cầu bạn vấn đề khó khăn Tính linh hoạt Linux thể chỗ tương thích với nhiều môi trường Hiện tại, Linux dành cho server,máy tính để bàn nhân Linux (Linux kernel) nhúng vào thiết bị điều khiển Trang 10 Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa Khởi động dịch vụ LDAP server Tự viết file LDIF để xây dựng kiến trúc cho LDAP Server Soạn file /tmp/DIT.ldif với thông tin bên Đưa nội dung file DIT.ldif vào kiến trúc LDAP server lệnh ldapadd Xem tìm kiếm nội dung vừa import lệnh ldapsearch Xóa user testuser lệnh ldapdelete Trang 49 Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa Ko tồn Xây dựng kiến trúc LDAP Server dựa thông tin có sẵn hệ thống sử dụng migration script Cài đặt tool MigrationTools chuyển đến thư mục MigrationTools-47 Chỉnh sửa file cấu hình chung migrate_common.ph Chạy script migrate_base.pl để tạo file LDIF chứa thông tin base Xem nội dung file Trang 50 Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa Đưa nội dung file base.ldif vào kiến trúc LDAP ldapadd kiểm tra kết với ldapsearch Trang 51 Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa Chạy script migrate_passwd.pl để tạo file LDIF chứa danh mục user cho LDAP dựa danh sách user có hệ thống (chứa file /etc/passwd) Đưa nội dung file allusers.ldif vào kiến trúc LDAP ldapadd kiểm tra kết với ldapsearch Trang 52 Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa Tạo account có tên ldapuser hệ thống đưa account vào LDAP # Tạo user tên ldapuser , thuộc nhóm users đặt pass cho user # Lấy thông tin “ldapuser” từ etc/passwd ghi /tmp/ldapuser.info # Dùng script migrate_passwd.pl để tạo LDIF file từ /tmp/ldapuser.info Trang 53 Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa # Đưa thông tin ldapuser LDIF file vào kiến trúc LDAP # Kiểm tra thông tin ldapuser kiến trúc LDAP Cấu hình LDAP Server sử dụng công cụ LDAP Admin Trên máy window Download chạy công cụ LDAP adminitrator Sau cài đặt ta khởi động lên chọn File new New profile Trang 54 Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa Đặt tên cho profile next Trang 55 Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa Gõ vào địa host DN trỏ tới Gõ vào địa trỏ tới, nhập mật Trang 56 Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa Sau kết nối thành công, tìm hiểu giao diện tính mà công cụ LDAP Admin cung cấp Cấu hình Client để xác thực qua LDAP Server Chạy lệnh xin cấp phát IP máy client Địa Ip máy client linux sau cấp phát Chạy lệnh yast2 để kiểm tra việc xác thực Trang 57 Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa Chọn LDAP Client cấu hình tương tự window Trang 58 Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa Quay lại LDAP Browser để truy cập Kết sau đăng nhập thành công Trang 59 Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa Trang 60 Báo cáo đồ án chuyên ngành IV GVHD : ThS Nguyễn Như Hoa KẾT LUẬN Trong lĩnh vực công nghệ thông tin, xu hướng sử dụng Open Source ngày tăng Với ổn định, miễn phí, cập nhật vá lỗi nhanh… Do Linux chọn làm hệ thống server giới lớn Ngày có nhiều doanh nghiệp tổ chức phủ sử dụng phần mềm mã nguồn mở Linux… Điều chứng minh rõ ràng giá lợi mà phần mềm mang lại cho người sử dụng Trong giai đoạn Đại Suy Thoái kinh tế quay trở lại sử dụng phần mềm có quyền giá cao triển vọng kinh tế trở nên sáng sủa Không có thế, phần mềm mã nguồn mở miễn phí mang nhiều lợi ích khác cho công việc kinh doanh, số lợi ích chí lớn phần mềm giá rẻ Đối với Doanh nghiệp Việt Nam, ý thức trọng áp dụng CNTT vào Doanh nghiệp chưa cao, đặc biệt vấn đề quyền chưa trọng đầu tư Nhưng điều thay đổi tương lai gần Vì Việt Nam hội nhập với kinh tế giới, nên yêu cầu áp dụng CNTT quyền sử dụng cần thiết Sau hoàn thành đề tài “Quản lý xác thực tập trung với dịch vụ LDAP” cho Doanh nghiệp Chúng em nhận thấy với ưu điểm kể xu hướng phát triển, việc áp dụng đề tài vào Doanh nghiệp tất yếu tương lai Nó đáp ứng đầy đủ yêu cầu cho Doanh nghiệp Khuyết điểm cần khắc phục Đề tài “Quản lý xác thực tập trung với dịch vụ LDAP” với mong muốn áp dụng cho vào DN Việt Nam, giúp DN tiết kiệm chi phí quyền Tuy nhiên, không giống dịch vụ thương mại khác, phần mềm mã nguồn mở thiếu hỗ trợ có cố quan trọng mà quản trị viên xử lý Để triển khai mô hình DN lớn, OpenLDAP chưa thể so sánh với Active Directory HĐH Windows Tuy có công cụ hỗ trợ giao diện, thiếu Trang 61 Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa chuyên nghiệp, thân thiện cho người sử dụng, dùng command line công cụ quản trị hệ thống Đề tài triển khai mức xây dựng ban đầu, thiếu chuyên sâu quản trị, để làm chủ hoàn toàn đòi hỏi người quản trị viên cần nhiều am hiểu kiến trúc HĐH Linux, có kiến thức lập trình shell, script …để tự tạo công cụ quản lý hỗ trợ từ cộng đồng mạng, mang lại chủ động quản trị Trang 62 Báo cáo đồ án chuyên ngành GVHD : ThS Nguyễn Như Hoa DANH MỤC TÀI LIỆU THAM KHẢO http://home.roadrunner.com/~computertaijutsu/ldap.html http://tailieu.tv/tai-lieu/cai-dat-va-cau-hinh-openldap-pam-3280/ http://kythuatmang.vn/threads/203-Cai-dat-OpenLDAP-LAM-trenCentOS-6.html http://www.nhatnghe.com/forum/archive/index.php?t-303027.html Trang 63 [...]... giữa client và server • LDAP client và server thực hiện theo các bước sau: o Client mở một kết nối TCP đến LDAP server và thực hiện một thao tác bind Thao tác bind bao gồm tên của một directory entry ,và uỷ nhiệm thư sẽ được sử dụng trong quá trình xác thực, uỷ nhiệm thư thông thường là pasword nhưng cũng có thể là chứng chỉ điện tử dùng để xác thực client o Sau khi thư mục có được sự xác định của... trên cùng một đối tượng o Xác thực đơn giản và tầng bảo mật (Simple Authentication and Security Layer SASL) là một mô hình hổ trợ cho nhiều phương thức xác thực Bằng cách sử dụng mô hình SASL để thực hiện chứng thực LDAP có thể dễ dàng thích nghi với các phương thức xác thực mới khác, SASL còn hổ trợ một mô hình cho client và server có thể đàm phán trên hệ thống bảo mật diển ra ở các tầng thấp(dẫn đến... server và thực hiện một thao tác bind Thao tác bind bao gồm tên của một directory entry ,và uỷ nhiệm thư sẽ được sử dụng trong quá trình xác thực, uỷ nhiệm thư thông thường là pasword nhưng cũng có thể là chứng chỉ điện tử dùng để xác thực client Sau khi thư mục có được sự xác định của thao tác bind, kết quả của thao tác bind được trả về cho client Client phát ra các yêu cầu tìm kiếm Server thực hiện... thực hiện tìm kiếm và dừng tìm kiếm ngay khi nhận được kết quả đầu tiên Thao tác tìm kiếm (LDAP search operation) yêu cầu 8 tham số: Tham số đầu tiên là đối tượng cơ sở mà các thao tác tìm kiếm thực hiện trên đây, tham số này là DN chỉ đến đỉnh của cây mà chúng ta muốn tìm Tham số thứ hai là phạm vi cho việc tìm kiếm, chúng ta có 3 phạm vi thực hiện tìm kiếm: o Phạm vi “base” chỉ ra rằng bạn muốn tìm. .. quả, đơn giản và dễ dàng để cài đặt Trong khi chúng sử dụng các hàm ở mức cao Điều này trái ngược với giao thức “heavyweight” như là giao thức truy cập thư mục X.500 (DAP) Giao thức này sử dụng các phương thức mã hoá quá phức tạp LDAP sử dụng các tập các phương thức đơn giản và là một giao thức thuộc tầng ứng dụng LDAP đã phát triển với phiên bản LDAP v2 được định nghĩa trong chuẩn RFC 1777 và 1778, LDAP... trị khai báo rằng một thuộc tính có thể giữ một hay nhiều giá trị Ví dụ như: thuộc tính givenName có thể chứa nhiều giá trị, khi một người muốn thêm vào nhiều tên (ví dụ như là Jim và James chẳng hạn) và cũng có một số thuộc tính chỉ chứa duy nhất một giá trị những nhà quản trị hệ thống đặt ra phạm vi giới hạn của dữ liệu để ngăn chặn các user sử dụng vượt qua giới hạn cho phép Bảo Trì các hệ thống. .. rename ) Những thao tác này cho phép chúng ta thực hiện cập nhật thông tin trên thư mục o Thao tác xác thực và điều kiển(authentiaction and control) : bind, unbind, abandon Thao tác bind cho phép client tự xác định được mình với thư mục, thao tác này cung cấp sự xác nhận và xác thực chứng thư; unbind cho phép client huỷ bỏ phân đoạn làm việc hiện hành; và cuối cùng là thao tác abandon cho phép client... GVHD : ThS Nguyễn Như Hoa Thao tác tìm kiếm với phạm vi subtree Tham số thứ ba derefAliases , cho server biết rằng liệu bí danh aliases có bị bỏ qua hay không tham khảo đến khi thực hiện tìm kiếm, có 4 giá trị mà derefAliases có thể nhận được: - nerverDerefAliases - nghĩa là thực hiện tìm kiếm và không bỏ qua bí danh (aliases) trong lúc thực hiện tìm kiếm và áp - dụng với cả đối tượng cơ sở derefInsearching... đó gởi trả cho client cũng bằng một thông điệp LDAP • Ví dụ: Khi LDAP client muốn tìm kiếm trên thư mục, client tạo LDAP tìm kiếm và gởi thông điệp cho server Sever tìm trong cơ sở dữ liệu và gởi kết quả cho client trong một thông điệp LDAP Thao tác tìm kiếm cơ bản • Nếu client tìm kiếm thư mục và nhiều kết quả được tìm thấy, thì các kết quả này được gởi đến client bằng nhiều thông điệp Trang 17 Báo... "back door" để xâm nhập vào hệ thống của bạn thì bạn cũng không thể biết được Đối với người dùng bình thường như chúng ta vấn đề này có vẻ như không quan trọng nhưng đối với một hệ thống tầm cỡ như hệ thống quốc phòng thì vấn đề như thế này lại mang tính sống còn Các nhân viên an ninh không được phép để lộ một kẽ hở nào, dù là nhỏ nhất vì nó liên quan đến an ninh của cả một quốc gia .Và một lần nữa các phần ... server software Ứng dụng xác thực dùng LDAP Việc xác thực thư mục LDAP điều cần thiết thiếu Các trình xác thực sử dụng để thiết lập quyền khách hàng cho lần sử dụng Tất công việc tìm kiếm, truy vấn,... nhiều phương thức xác thực Bằng cách sử dụng mô hình SASL để thực chứng thực LDAP dễ dàng thích nghi với phương thức xác thực khác, SASL hổ trợ mô hình cho client server đàm phán hệ thống bảo mật... server thực thao tác bind Thao tác bind bao gồm tên directory entry ,và uỷ nhiệm thư sử dụng trình xác thực, uỷ nhiệm thư thông thường pasword chứng điện tử dùng để xác thực client Sau thư mục có xác