Tải bản đầy đủ (.pdf) (18 trang)

Luận án - Xây dựng phần mềm báo điểm tuyển sinh qua mạng pdf

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.42 MB, 18 trang )






Luận án
Xây dựng phần mềm
báo điểm tuyển sinh
qua mạng


Trang
49
CHƯƠNG III : CƠ CHẾ BẢO MẬT DỮ LIỆU
3.1.Lựa chọn cổng lắng nghe.
Mặc định thì slapd sẽ lắng nghe tất cả các địa chỉ IP thế hệ IV và thế hệ VI.
Việc thiết lập cặp địa chỉ IP và cổng lắng nghe cho slapd là đơn giản. Ví dụ,
chúng ta dùng lệnh sau:
Slapd –h ldap://127.0.0.1
Chỉ cho phép ldap lắng nghe trên địa chỉ 127.0.0.1 (địa chỉ localhost). Việc
này sẽ không cho phép việc truy cập từ xa đến các server có dịch vụ thư mục.
Các server có thể được cấu hình để lắng nghe trên một địa chỉ giao diện đặc
biệt. Chúng ta không cần giới hạn việc truy cập của những mạng có thể truy
cập được nhờ giao diện đó đến server. Để giới hạn có lựa chọn việc truy cập từ
xa, chúng ta nên sử dụng IP Firewall (Bức tường lửa IP).
3.2. Cơ chế truyền dữ liệu (IP Firewall).
Cơ chế truyền dữ liệu được sử dụng để giới hạn việc truy cập dựa trên điạ
chỉ IP của máy khách và địa chỉ mạng được sử dụng để giao tiếp với máy
khách.
Mặc định slapd(8) sẽ lắng nghe trên cổng 389/TCP (cổng 389: thuần văn
bản) đối với LDAP dùng giao thức TCP và cổng 636/TCP (cổng 636: SSL đã


bảo mật) đối với LDAP dùng giao thức SSL. Lưu ý các phiên làm việc của
LDAP dùng giao thức TCP có thể được bảo vệ bằng TLS thông qua việc sử
dụng StartTLS. StartTLS là cơ chế tìm dấu vết chuẩn (Standard Track) để bảo
vệ các giao dịch LDAP với TLS.
*



*
Tài liệu phần này lấy ở trang web mục :
10. Security Considerations
10.1 Network Security


Trang
50
Cấu hình của Bức tường lửa IP phụ thuộc vào từng loại bức tường lửa được
sử dụng, do đó chúng tôi không cho ví dụ về vấn đề này. Để biết thêm chi tiết
hãy xem tài liệu đi kèm với Bức tường lửa IP mà bạn sử dụng.
 Bảo vệ tính toàn vẹn và tính riêng tư
Cơ chế bảo mật tầng vận chuyển (TLS) có thể được sử dụng để bảo vệ tính
toàn vẹn và tính riêng tư. Phần mềm OpenLDAP hỗ trợ cả StartTLS và ldaps://.
Một số các cơ chế Xác Thực Đơn Giản và Tầng bảo mật (SASL) ví dụ như
DIGEST-MD5 và GSSAPI, cũng hỗ trợ việc bảo vệ tính toàn vẹn và riêng tư.
Xem chương Cách sử dụng SASL để biết thêm chi tiết.
3.3 Trình bao bọc TCP.
Phần mềm OpenLDAP cũng hỗ trợ trình bao bọc TCP (TCP Wrappers).
Trình bao bọc TCP cung cấp một hệ thống dựa trên các nguyên tác truy cập
dùng để kiểm soát các truy cập TCP/IP đến máy server. Ví dụ, nguyên tác
host_options(5):

Slapd: 10.0.0.0/255.0.0.0 127.0.0.1
/etc/host.allow
/etc/host.deny
Nguyên tác này chỉ cho phép các kết nối đến từ mạng có địa chỉ là 10.0.0.0
và địa chỉ localhost (127.0.0.1) được phép truy cập dịch vụ thư mục. Lưu ý các
địa chỉ IP được sử dụng như slapd không hỗ trợ việc truy cập ngược (có nghĩa
là đổi tên miền thành địa chỉ IP). Hơn nữa, trình bao bọc TCP đòi hỏi các kết
nối đã được chấp nhận. Khi quy trình đặc biệt được sử dụng chỉ để từ chối một
kết nối thì nên sử dụng Bức tường lửa IP thay thế cho trình bao bọc TCP
*


**

*
Tài liệu phần này lấy ở trang web mục
10. Security Considerations
10.1 Network Security


Trang
51
3.4. Các nhân tố tăng cường tính bảo mật (SSF)
Các máy chủ sử dụng nhân tố tăng cường tính bảo mật (SSF) để chỉ ra sức
mạnh tương đối của việc bảo vệ. SSF mức độ 0 có nghĩa là không có cơ chế
nào được sử dụng. SSF mức độ 1 có nghĩa là cơ chế bảo vệ tính toàn vẹn được
sử dụng. SSF có mức độ lớn hơn 1 tương đương với chiều dài mã hóa khóa. Ví
dụ như DES có chiều dài là 56, 3DES có chiều dài 112 và AES là 128, 192
hoặc 256.
Số lượng các điều khiển hệ thống phụ thuộc vào nhân tố tăng cường tính

bảo mật SSF được sử dụng cùng với TLS và SASL trong một phiên làm việc
của LDAP.
Các điều khiển bảo mật sẽ vô hiệu hóa các hoạt động khi không có một cơ
chế bảo vệ thích hợp được sử dụng. Ví dụ :
Security ssf=1 update_ssf=112
Lệnh này đòi hỏi cơ chế bảo vệ toàn vẹn đối với tất cả các hoạt động và sự
bảo vệ mã hóa. Do đó 3DES sẽ thích hợp cho các thao tác cập nhật (ví dụ như
thêm, sửa và xóa). Xem file slapd.conf để biết thêm chi tiết.
3.5.Các phương thức chứng thực
3.5.1.Phương thức đơn giản
Phương thức chứng thực đơn giản của LDAP gồm có 3 kiểu hoạt sđộng:
 Kiểu vô danh
 Kiểu không chứng thực
 Kiểu chứng thực tên user và mật khẩu.
Sử dụng kiểu truy cập kiểu vô danh bằng cách cung cấp một tên user cho
hoạt động nối kết đơn giản. Sử dụng kiểu truy cập không chứng thực chỉ cần

**

*
Tài liệu phần này lấy ở trang web mục
10. Security Considerations
10.2. Integrity and Confidentiality Protection
10.3. Authentication Methods


Trang
52
cung cấp một tên user và không cần mật khẩu. Sử dụng kiểu truy cập chứng
thực bằng cung cấp một tên user và mật khẩu đúng quy cách.

Một nối kết vô danh sẽ cung cấp một chứng thực vô danh. Mặc định cơ chế
nối kết vô danh là hoạt động, chúng ta có thể vô hiệu hóa nó bằng cách thiết
lập:
“disallow bind_anon” trong file cấu hình slapd.conf.
Một nối kết không chứng thực sẽ cung cấp một chứng thực vô danh. Mặc
định cơ chế nối kết vô danh là không hoạt động, chúng ta có thể kích hoạt nó
bằng cách thiết lập:
“allow bind_anon_cred” trong file cấu hình slapd.conf. Bởi vị một
số các chương trình ứng dụng LDAP do lỗi đã tạo ra yêu cầu nối kết không
chứng thực khi người sử dụng cố ý sử dụng truy cập chứng thực. Điều này có
nghĩa là các trình ứng dụng đó không kiểm tra mật khẩu người sử dụng. Do đó,
cơ chế nối kết không chứng thực không nên được kích hoạt.
Một nối kết chứng thực sẽ tạo ra một người sử dụng được chứng thực. Tên
user đó sẽ được gắn cho phiên làm việc đó. Mặc định nối kết cần tên user và
một khẩu được kích hoạt. Tuy nhiên, do kiểu nối kết này không có cơ chế bảo
vệ mật khẩu (có nghĩa là mật khẩu được định là trống). Cho nên chỉ dùng kiểu
nối kết này khi hệ thống đã được kiểm soát chặt chẽ hoặc là khi các phiên làm
việc LDAP được bảo vệ bằng các phương tiện khác như TLS và IPSEC. Khi mà
người quản trị đã hoàn toàn dựa vào TLS để bảo vệ mật khẩu, thì cơ chế kiểu
chứng thực không được bảo vệ nên bị vô hiệu hóa. Việc này có thể làm được
bằng cách thiết lập:
*



*

**

*

Tài liệu phần này lấy ở trang web mục
10. Security Considerations
10.3. Authentication Methods


Trang
53
“disallow bind_simple_unprotected” trong file slapd.conf(5).
Thuộc tính simple_bind của chỉ thị bảo mật cho phép điều khiển các mức
độ của sự bảo vệ riêng tư mà cần thiết trong cơ chế chứng thực tên người sử
dụng và mật khẩu.
Cơ chế nối kết cần tên user và mật khẩu có thể hoàn toàn bị vô hiệu hóa bằng
cách thiết lập “disallow bind_simple”.
3.5.2. Sự lựa chọn cơ chế bảo mật SASL
Cơ chế bảo mật SASL hỗ trợ nhiều kiểu bảo mật khác nhau.
Một vài cơ chế bảo mật khác như PLAIN và LOGIN cung cấp những cơ chế
bảo mật có quy mô không lớn hơn kiểu chứng thực đơn giản của LDAP. Chúng
ta không nên sử dụng những cơ chế bảo mật này cũng như kiểu chứng thực đơn
giản trừ khi chúng ta có các cơ chế bảo vệ khác hỗ trợ tốt hơn. Những cơ chế
này chỉ nên được sử dụng chung với cơ chế bảo mật tầng vận chuyển (TLS).
Chính vì vậy trong tài liệu này chúng tôi cũng không đề cập chi tiết đến việc sử
dụng cơ chế bảo mật PLAIN và LOGIN.
Cơ chế DIGEST-MD5 là cơ chế chứng thực bắt buộc đối với LDAP phiên
bản 3. Mặc dù cơ chế chứng thực DIGEST-MD5 không mạnh bằng cơ chế
chứng thực như Kerberos và khóa công khai nhưng nó cũng cung cấp một số cơ
chế bảo vệ đặc biệt để chống lại một số kiểu xâm nhập. Không giống như cơ
chế CRAM-MD5, nó chống lại các tấn công trên những văn bản được bị lựa
chọn. Cơ chế CRAM-MD5 không tương thích với cơ chế DIGEST-MD5.
*





*

*

**

*
Tài liệu phần này lấy ở trang web mục
10. Security Considerations
10.3. Authentication Methods
11. Using SASL
11.1 SASL Security considerations


Trang
54
Cơ chế KERBEROS_IV tối ưu hóa cơ chế chứng thực KERBEROS phiên
bản IV để cung cấp các dịch vụ chứng thực. Cơ chế chứng thực dựa trên nền
GSSAPI thường được dùng chung với cơ chế chứng thực KERBEROS phiên
bản V. Cơ chế KERBEROS được đánh giá là một cơ chế an toàn và phân tán.
Nó thích hợp cho cả hệ thống của một công ty nhỏ lẫn công ty nhỏ.
Cơ chế EXTERNAL tối ưu hóa các dịch vụ chứng thực được cung bởi các
dịch vụ mạng ở tầng thấp hơn ví dụ như TLS. Khi được sử dụng chung với công
nghệ khóa công khai X.509, cơ chế EXTERNAL trở nên mạnh hơn.
Ngoài ra, còn có các cơ chế chứng thị khác như OTP (cơ chế mật mã chỉ
được sử dụng một lần) và cơ chế SRP ( cơ chế mật mã an toàn từ xa). Những cơ
chế này không được đề cập trong tài liệu này









*
Ghi chú :
Tài liệu viết phần này được lấy ở trang Web mục :
11. Using SASL
11.1 SASL Security considerations





Trang
55
CHƯƠNG IV : GIỚI THIỆU PHẦN MỀM “BÁO ĐIỂM TUYỂN SINH QUA
MẠNG “
4.1 Giao diện :

4.2 Cách thức kết nối vào LDAP server
 Kết nối với ldap server
$conn = ldap_connect("127.0.0.1");
$r = ldap_bind($conn);
$noidung =
array("cn","ho","ten","sn","ngaysinh","phai","khoi","nganh","truong","nganh2","truo

ng2","kv","doituong","dm1","dm2","dm3","phat1","phat2","phat3","dtc","tt");

$result = ldap_list($conn,"ou=hien2005,dc=dongnai", $query,$noidung) or
die("Không thể thực hiện việc vấn tin !!!");
$info = ldap_get_entries($conn, $result);
if (ldap_count_entries($conn, $result) > 0) {
?>


Trang
56
<tr>
<td style="background-color: #000000;color:white"
align="center"><b>SBD</b></td>
<td style="background-color: #000000;color:white" align="center"><b>Họ và
tên</b></td>
<td style="background-color: #000000;color:white" align="center"><b>Ngày
sinh</b></td>
<td style="background-color: #000000;color:white"
align="center"><b>Phái</b></td>
<td style="background-color: #000000;color:white"
align="center"><b>Khối</b></td>
<td style="background-color: #000000;color:white"
align="center"><b>Ngành</b></td>
<td style="background-color: #000000;color:white"
align="center"><b>Trường</b></td>
<!
<td style="background-color: #000000;color:white"
align="center"><b>Ngành 2</b></td>
<td style="background-color: #000000;color:white"

align="center"><b>Trường 2</b></td>
>
<td style="background-color: #000000;color:white" align="center"><b>Khu
vực</b></td>
<td style="background-color: #000000;color:white" align="center"><b>Đối
tượng</b></td>
<td style="background-color: #000000;color:white" align="center"><b>Điểm
1</b></td>
<td style="background-color: #000000;color:white" align="center"><b>Điểm
2</b></td>


Trang
57
<td style="background-color: #000000;color:white" align="center"><b>Điểm
3</b></td>
<td style="background-color: #000000;color:white"
align="center"><b>ĐTC</b></td>
<td style="background-color: #000000;color:white" align="center"><b>Kết
quả</b></td>
<td style="background-color: #000000;color:white"
align="center"><b>SBD</b></td>
</tr>

<?php
for ($i=0; $i < $info["count"]; $i++) {
echo "<tr>";
echo "<td align='center'>".$info[$i]["cn"][0]."</td>";
echo "<td>".$info[$i]["sn"][0]."</td>";
echo "<td align='center'>".$info[$i]["ngaysinh"][0]."</td>";

echo "<td align='center'>";
if ($info[$i]["phai"][0]) echo "Nữ"; else echo "Nam";
echo "</td>";
echo "<td align='center'>".($info[$i]["khoi"][0])."</td>";
echo "<td align='center'>".($info[$i]["nganh"][0])."</td>";
echo "<td align='center'>".($info[$i]["truong"][0])."</td>";
/*
if ($info[$i]["nganh2"][0] != 0)
echo "<td align='center'>".$info[$i]["nganh2"][0]."</td>";
else echo "<td align='center' bgcolor='#c0c0c0'>&nbsp;</td>";
if ($info[$i]["truong2"][0] != "0")
echo "<td align='center'>".$info[$i]["truong2"][0]."</td>";
else echo "<td align='center' bgcolor='#c0c0c0'>&nbsp;</td>";


Trang
58
*/
echo "<td align='center'>".($info[$i]["kv"][0])."</td>";

if ($info[$i]["doituong"][0] != 0)
echo "<td align='center'>".$info[$i]["doituong"][0]."</td>";
else echo "<td align='center' bgcolor='#c0c0c0'>&nbsp;</td>";

echo "<td align='center'>".(double)(($info[$i]["dm1"][0])/10)."</td>";
echo "<td align='center'>".(double)(($info[$i]["dm2"][0])/10)."</td>";
echo "<td align='center'>".(double)(($info[$i]["dm3"][0])/10)."</td>";
echo "<td align='center'>".(double)(($info[$i]["dtc"][0])/10)."</td>";
if ($info[$i]["tt"][0] != 0)
echo "<td align='center' bgcolor='yellow'><font

color='red'><b>Đỗ</b></font></td>";
else echo "<td align='center' bgcolor='#c0c0c0'>&nbsp;</td>";


echo "<td align='center'>".$info[$i]["cn"][0]."</td>";
}
ldap_close($conn);
echo "</table>";
} else {
if ($_GET["id"] == 1 || $_GET["id"] == "") {
echo "<center><p align='center' style='font-size:22px;font-
weight:bold'>Không tìm thấy kết quả cho thí sinh có số báo danh là:
".$_POST["sbd"].".";
echo "<br>Có thể bạn đã nhập nhầm số báo danh.<br>Vui lòng nhập
lại.</p></center>";
} else {


Trang
59
echo "<center><p align='center' style='font-size:30px;font-
weight:bold'>Không tìm thấy kết quả.<br>Có thể dữ liệu bạn nhập vào chưa chính
xác.<br>Vui lòng nhập lại theo hướng dẫn.</p></center>";
}
}
echo "<br>";

/*
if (ldap_errno($conn) == 4) {
echo "<p style='text-align:justify'><font size='4px' color='#ff0000'><b>Lưu

ý:<b>&nbsp;&nbsp;</font><font color='#000000' size='4px' style='font-
weight:bold'>Tiêu chuẩn tìm kiếm do bạn cung cấp quá tổng quát nên kết quả tìm
kiếm hiện có hơn 200 người.<br>Để đảm bảo việc phục vụ tốt nhất cho nhiều người
chúng tôi chỉ liệt kê 200 người.<br>Xin đừng lo lắng nếu không tìm thấy kết quả, bạn
chỉ cần nhập chính xác và đầy đủ thông tin hơn.</font></p>";
}*/
// tat ket noi
//ldap_close($conn);
4.3 Cách sử dụng Chương trình :
Màn hình chính :
 Ở màn hình Chính sẽ có 2 tình huống xảy ra
+ Tình huống thứ nhất : Thí sinh nhớ SBD
 Khi thí sinh nhớ số báo danh ( SBD) sẽ nhập SBD vào ô Số báo danh
 Sau đó nhấn vào ô Xem thông tin







Trang
60









 Khi đó bảng thông tin sẽ hiện ra theo SBD mình đã nhập



Trang
61
- Nếu như nhập sai thông tin thì sẽ có bảng báo lỗi


Trang
62
+ Tình huống thứ hai : Thí sinh quên SBD
 Thí sinh nhấp chuột vào dòng : “Nhấn vào đây nếu bạn không nhớ số báo
danh” của màn hình Chính
 Sẽ hiện lên cửa sổ yêu cầu thí sinh nhập thông tin như sau :











Nếu nhập đúng sẽ hiện lên bảng báo kết quả truy cập được :




Trang
63
Nhập sai các thông tin hoặc thông tin không chính xác sẽ có bảng báo lỗi

 Nếu không nhớ hết các thông tin trên thì thí sinh nhập ít nhất 1 trong các thông
tin mà thí sinh nhớ vào ô tương ứng. Với mỗi thông tin của thí sinh sẽ xuất
hiện 1 bảng kết quả tìm được


Trang
64
Chương V : KẾT LUẬN

5.1 Kết quả đạt được và chưa đạt được:
5.1.2 Kết quả đạt được
Chương trình đã xây dựng hệ thống xem điểm tuyển sinh qua mạng, giúp cho
thí sinh biết điểm thi một cách nhanh chóng , đỡ mất thời gian và công sức
5.1.3 Kết quả chưa đạt được :
Chương trình chỉ thực hiện được báo điểm qua mạng nhưng chưa có hướng
dùng để nghiên cứu nhằm phát triển hệ thống báo điểm được hoàn thiện hơn
5.2. Hướng phát triển của Đề tài :
+ Xây dựng mô hình quản lý đăng nhập tập trung
+ Xây dựng các hệ thống mail server quản lý người dùng bằng LDAP


Trang
65

DANH MỤC TÀI LIỆU THAM KHẢO

Tài liệu tham khảo :
Tài liệu để nghiên cứu làm đề tài đều lấy trong trang Web
 http:// www.openldap. org/

×