Thứ Sáu, 24 tháng 1, 2014

Sách sưu tầm p2

Sưu Tầm Thủ Thuật
traitimbinhyen_nova@yahoo.com

http://vietdown.org Nguyễn Anh Tú
+ Có thể lập lịch trình tải file (bản 4.0).
+ Miễn phí hoàn toàn
*Khuyết:
+ Kém trực quan hơn Mass Downloader.
+ Khi tải file, mỗi file tải về cần một cửa sổ theo dõi riêng.
+ Bạn phải xem các quảng cáo "miễn phí" (vì ñây là trình miễn phí mà).
Mass Downloader 1.2 (tải về tại http://www.tlnet.com.vn/weblh/ ): Trình tăng tốc này luôn tìm cách ñạt ñược
tốc ñộ tải file cao nhất và sử dụng một lúc ñến 10 dòng dữ liệu ñể tải file về.
*Ưu:
+ Rất trực quan với các thông số về thời gian, tốc ñộ và các biểu ñồ theo dõi tốc ñộ tải file
+ Hỗ trợ Resume trong mọi trường hợp.
+ Tích hợp vời IE và NN (nhấn phím ALT+Click vào tên file ñể tải về).
+ Lập lịch tải file về.
+ Tất cả tích hợp trong một cửa sổ duy nhất.
*Khuyết:
+ Kém về tốc ñộ tải về so với Download Accelerator.
+ Thiếu một số tính năng so với DA.
-Lời khuyên của tôi là bạn có thể cài cả hai trình này vào máy mà không ảnh hưởng chi ñến nhau. Nếu
muốn dùng DA bạn nhấp thẳng vào tên file, còn nếu bạn thích dùng MD thì giữ phím ALT trong khi nhấp.

3) Trình tăng tốc duyệt Web bằng NetSonic Pro 2.5 :
-Nguyên tắc tăng tốc của NetSonic khá ñơn giản và hiệu quả là duyệt ñón ñầu từc là trong lúc chúng ta
ñang xem các trang Web thì nó tải về các kết nối tới trang Web này ñể hiện ra tức thì khi chúng ta cần tời. Nó
lưu các trang Web thường lui tới ñể hiển thị nhanh những phần cố ñịnh và sẽ refresh những phần khác biệt sau
ñó. Nó còn tối ưu ñược hai thông số hệ thống quan trọng nhất là MaxMTU và Receive Window Size.
-Bản NetSonic miễn phí có tại http://www.web3000.com/ , nhưng thiếu nhiều tính năng quan trọng như tải
về trước hình ñồ họa tốt nhất bạn nên tìm bản NetSonic Pro 2.5 (có rất nhiều tại các site download trên
Internet)






















Sưu Tầm Thủ Thuật
traitimbinhyen_nova@yahoo.com

http://vietdown.org Nguyễn Anh Tú
NHỮNG CÁCH BẢO VỆ HOSTING VÀ SERVER

I. .htaaccess:
1. Các trang báo lỗi:
Trong quá trình làm việc với client, nếu có lỗi xảy ra (vi dụ như không tìm thấy file) thì Apache sẽ báo
lỗi bằng một trang có sẵn hiển thị mã số của lỗi ñó, rất không ñẹp và khó hiểu. Với .haccess thì bạn có thể tự
tạo các trang báo lỗi hay hơn. ðể làm ñược ñiều này thì trong file .htaccess bạn thêm dòng sau:
ErrorDocument errornumber /file.html
Trong ñó errornumber là mã số của lỗi phát sinh, sau ñây là những lỗi hay gặp:
401 - Authorization Required (cần password ñể truy nhập)
400 - Bad request (request bị sai)
403 - Forbidden (không ñược vào)
500 - Internal Server Error (lỗi server)
404 - Wrong page (lỗi trang, không tìm thấy )
còn file.html là trang web mà ban muốn hiện thị khi lỗi phát sinh. Ví dụ: ErrorDocument 404 /notfound.html
hoặc: ErrorDocument 500 /errorpages/500.html
2. Không cho hiện danh sách file trong thư mục:
Trong trường hợp bạn không muốn cho người khác thấy ñược danh sách file trong thu mục không có
file index, thêm lệnh sau vào .htaccess: Options -Indexes
3. Chỉ ñịnh các IP ñược/không ñược truy cập vào trang web:
Thêm lệnh sau: deny from 203.239.110.2 ñể cấm ip 203.239.110.2 hoặc allow from 203.239.110.20 ñể cho
phép ip 203.239.110.20. Nếu bạn chỉ viêt ip dưới dạng 203.239.110 thì sẽ cấm/cho phép tất cả ip trong giải từ
203.239.110.1 ñến 203.239.110.254. Còn: deny from all : sẽ cấm tất cả mọi truy cập ñến các trang web trong
thư mục, tuy nhiên các file trong ñó vẫn có thể ñược sử dụng từ bên ngoài thông qua các dang require hay
include.
4. Thay thế trang index:
Dùng dòng lệnh sau: DirectoryIndex index.php index.php3 messagebrd.pl index.html index.htm . Với dòng lệnh
này thì tất cả các file ñược liệt kê sẽ ñược tìm theo thứ tự khi có yêu cầu tới thư mục hiện hành, trang nào ñược
tìm thấy ñầu tiên sẽ thành trang index của thư mục.
5. Redirection:
Có thể redirect truy cập từ xa một cách ñơn giản bằng lệnh sau: Redirect /location/from/root/file.ext
http://www.othersite.com/new/file/location.xyz hoặc Redirect /olddirectory
http://www.newsite.com/newdirectory
6. Bảo vệ thư mục bằng password :
-Trong file .htaccess có thể viết thêm:
+AuthUserFile /mnt/web/guide/somewhere/somepath/.htpasswd
AuthGroupFile /dev/null
AuthName Somewhere.com's Secret Section
AuthType Basic

<Limit GET POST>
require valid-user
</Limit>

+Trong ñó quan trọng nhất là file .htpassword, có dạng như sau:
username:v3l0KWx6v8mQM
bob:x4DtaLTqsElC2
với phần trước là tên user, phần sau là password ñã ñược mã hoá bằng DES (có thể dùng john ñể giải mã ).
Bạn có thể tạo ra file .htpasswd này bằng một công cụ có sẵn trong *nix là trình htpasswd, vi dụ:

root@vnofear$htpasswd -c .htpasswd username
Adding password for username.
Sưu Tầm Thủ Thuật
traitimbinhyen_nova@yahoo.com

http://vietdown.org Nguyễn Anh Tú
New password:
password
Re-type new password:
password

Khi truy cập vào thư mục ñược bảo vệ bởi .htpasswd, browser sẽ hiện ra một cửa sổ yêu cầu bạn nhập
username và password.
*Lưu ý trước khi sử dụng .htaccess bạn nhớ kiểm tra xem host server có hỗ trợ .htaccess hay không.
Chú ý: các bạn có thể soạn file .htaccess bằng notepad
II. Bảo vệ ứng dụng Web ASP:

ðiều này tưởng chừng như ñơn giản nhưng chẳng ñơn giản chút nào cả! Nếu như bạn nghĩ: ối giời! Web lỗi thì
ăn nhằm gì ñến pass host chứ! Thì bạn ñã…trật rồi ñấy! Nếu như tôi biết ứng dụng web của bạn bị lỗi gì và
chèn vào ñó một số mã nguy hiểm hay backdoor chẳng hạn thì mọi chuyện sẽ thay ñổi!
1. An toàn trước khả năng bị tấn công CSS (Cross-Site Scripting)
Kiểu tấn công CSS ñiển hình nhất xảy ra khi tin tặc cố tình chèn một ñoạn văn bản có chứa script ñộc hại vào
các form nhập dữ liệu. Nội dung nhập vào có thể chứa các thẻ <OBJECT> hoặc <SCRIPT> cùng các ñoạn mã
hết sức nguy hiểm. Trình duyệt, khi truy nhập site, cho rằng các srcipt này do máy chủ gửi tới, hoàn toàn vô hại
nên sẽ chạy nó ở cấp ñộ bảo mật bình thường, gây ra hậu quả tai hại cho máy tính của người sử dụng .

ðể bảo vệ khỏi bị tấn công theo kiểu CSS, cần chú ý ít nhất những ñiểm sau:

- Cập nhật thường xuyên các bản sửa lỗi bảo mật mới nhất của IIS và Windows.
- Lọc các ký tự ñặc biệt do người sử dụng nhập vào như < > " ' % ( ) & + -
- Lọc ñể loại bỏ các ký tự ñặc biệt, kết xuất trên cơ sở thông tin nhập vào của
người sử dụng. Xem kỹ các dữ liệu từ:

- Request.Form Collection
- Request.QueryString Conllection
- Request Object
- Database
- Cookie
- Các biến Session và Application

ðể có thể lọc ñược, cần xác ñịnh cụ thể lược ñồ mã hoá ký tự trên các trang Web,
trong thẻ META, ở phần header. Ví dụ:

<head> <META http-equiv="Content-Type" Content="text/html; charset=ISO-8859-1">
</head>

2. Ứng dụng có thể không cần sử dụng các cookie thường trực
Cookie thường trực là những tệp, ñược các ứng dụng Web gửi tới máy tính người sử dụng và vẫn tồn tại trên ổ
cứng của máy tính ngay cả khi họ không còn duyệt site. Chúng lưu một số thông tin về người sử dụng ñể các
ứng dụng Web tuỳ biến nội dung cho phù hợp với từng ñối tượng người sử dụng hoặc cho phép họ bỏ qua giai
ñoạn ñăng ký ñăng nhập. Các cookie không thường trực ñược lưu trong bộ nhớ máy tính của người sử dụng và
chỉ tồn tại trong thời gian người sử dụng duyệt site. IIS dựa vào các cookie không thường trực ñể xác ñịnh một
phiên ASP. Không có nó, IIS không thể duy trì bất kỳ các thông tin về phiên làm việc, chẳng hạn như các biến
phiên.

Nếu site của bạn sử dụng cookie thường trực, không nên yêu cầu IIS lưu trữ chúng trong tệp log của IIS. Nếu
tệp log lưu lại tất cả các thông tin ñăng nhập của người sử dụng thì rất có nhiều khả năng, do một thoả hiệp
nào ñó, những thông tin này có thể ñược tiết lộ ra ngoài.

Sưu Tầm Thủ Thuật
traitimbinhyen_nova@yahoo.com

http://vietdown.org Nguyễn Anh Tú
3. Sử dụng SSL cho tất cả các trang nhạy cảm ñược chuyển trên mạng Internet
SSL mã hoá nội dung của các thông ñiệp TCP/IP ñể nó không bị nhòm ngó trên ñường truyền. SSL, hoặc
một giải pháp mã hoá khác VPN chẳng hạn, rất cần thiết khi gửi các thông tin nhạy cảm (như số thẻ tín dụng)
qua mạng. Cơ hội thâm nhập ñường truyền và lấy cắp các thông tin bí mật là thấp song không phải không thể
có.Người sử dụng sẽ không ñặt niềm tin vào site của bạn nếu các thông tin nhạy cảm không ñược mã hoá.

Tuy nhiên, mặt trái của SSL là làm chậm lại hiệu năng thực hiện của ứng dụng. Mức sử dụng tài nguyên hệ
thống CPU ñòi hỏi trong tiến trình mã hoá và giải mã cho một trang SSL có thể cao hơn từ 10 ñến 100% so với
các trang không ñược bình thường. Nếu máy chủ của bạn có lưu lượng các trang SSL cao, bạn có thể phải cân
nhắc tới việc sử dụng thêm một bộ tăng tốc SSL phần cứng.

4. Yêu cầu người sử dụng ñăng nhập mỗi khi sử dụng ứng dụng
Nguyên tắc này áp dụng cho các ứng dụng có yêu cầu thủ tục ñăng nhập. ðiều này có nghĩa là việc ñăng
nhập tự ñộng dựa trên cookie là không ñược phép. Mặc dù người sử dụng có thể thấy phiền hà nhưng nếu cho
họ ñăng nhập tự ñộng dựa trên cookie sẽ có rất nhiều nguy hiểm (và như ta ñã thấy ở phần trước, sử dụng các
cookie thường trực không phải lúc nào cũng phù hợp).

Một biện pháp tiếp theo cần thiết ñể bảo vệ mật khẩu là huỷ tính năng Autocomplete của IE trên các trường
mật khẩu. ðiều này có thể thực hiện bằng cách thêm thuộc tính AUTOCMPLET ="OFF" cho thẻ <FORM> hoặc
<INPUT>. Ví dụ:
<input type="password" name="pwd" size=16 maxlength=16 AUTOCOMPLETE="OFF">

5. Log out người sử dụng ra khỏi hệ thống ngay khi họ rời site
-Giả sử một người sử dụng ñang xem một trang web trên site của bạn, sau ñó họ truy cập một site mới
nhưng cuối cùng lại quyết ñịnh quay trở lại trang của bạn bằng cách ấn phím BACK. Trong trường hợp này, ứng
dụng phải yêu cầu người sử dụng ñăng nhập lại một lần nữa. Phát hiện những tình huống tương tự như tình
huống vừa rồi của người sử dụng phải dựa hoàn toàn vào các script chạy ở phía trình duyệt mà không thể dựa
vào server vì nó không biết người sử dụng ñã ở những ñâu. Cách giải quyết ñầy ñủ nhất cho vấn ñề này là sử
dụng một giải pháp bảo mật Proxy Server như của Netegrity SiteMinder (http://www.netegrity.com).Giải pháp
Proxy Server sẽ giám sát mọi yêu cầu Web từ trình duyệt và ghi lại mọi ñịa chỉ trình duyệt ñã truy nhập ñể ứng
dụng có thể kiểm tra.
-Một cách thức không ñầy ñủ trong việc kiểm tra các giới hạn site có thể thực hiện bằng cách thiết lập
Request.ServerVariables("HTTP_REFERER"). Nếu người sử dụng có gắng truy nhập bất kỳ trang nào khác với
trang ñăng nhập, từ một URL của một site khác, thì họ sẽ bị từ chối. Tuy nhiên, phương pháp này không thể
ngăn
ngừa một người sử dụng rời bỏ site của bạn ñể tới một site khác nhưng sau ñó lại quay trở lại site của bạn và
tiếp tục phiên làm của họ.
6.Cắt kết nối khi người sử dụng không tương tác với site trong một khoảng thời gian nhất ñịnh
-Có hai giải pháp cho vấn ñề này, một giải pháp ở phía máy chủ và một giải pháp sử dụng script ở phía trình
duyệt. Trong giải pháp thứ nhất, chúng ta sử dụng IIS Manager và ñặt giới hạn phiên ASP là một khoảng thời
gian mong muốn nào ñó (giá trị mặc ñịnh là 20 phút). Trong ứng dụng, lưu trữ thông tin truy nhập vào một
biến phiên làm việc và kiểm tra nó trên mọi trang người sử dụng duyệt qua. Nếu thông tin truy nhập không
thuộc về một biến phiên, người sử dụng ñã bị cắt kết nối với site và ứng dụng cần ñịnh hướng họ sang trang
truy nhập hệ thống. Hơn nữa, mặc dù chưa phải có thể tin cậy tuyệt ñối, bạn cũng có thể viết mã ñể xử lý cắt
kết nối người sử dụng trong sự kiện Session_OnEnd ở tệp Global.asa.
-Giải pháp phía client sử dụng chút ít JavaScript. Chèn thêm ñoạn mã sau vào ñầu của mọi trang Web kết
xuất bởi ứng dụng:

<script Language="JavaScript">
window.setTimeout("window.navigate('Logout.asp')", 900000); </script>

'Logout.ASP' là trang ñể cắt kết nối người sử dụng với ứng dụng. 9000000 là khoảng thời tối ña tính bằng mily
giây người sử dụng vẫn duy trì phiên làm việc của họ trong trường hợp không có tương tác nào với site.
Sưu Tầm Thủ Thuật
traitimbinhyen_nova@yahoo.com

http://vietdown.org Nguyễn Anh Tú


7. Ứng dụng không cho phép login ñồng thời
Yêu cầu này có nghĩa là tại một thời ñiểm, người sử dụng không thể truy nhập ứng dụng với 2 phiên làm
việc khác nhau. ðây cũng là nguyên tắc áp dụng cho phần lớn các ứng dụng client/server và máy trạm khác.

Trong môi trường IIS/ASP, việc ñáp ứng yêu cầu này không có gì khó khăn. 2 sự kiện Session_OnStart và
Session_OnEnd trong Global.asa có thể sử dụng ñể kiểm tra phiên truy nhập hiện thời của người sử dụng. Bạn
cũng có thể áp dụng một giải pháp của cơ sở dữ liệu ñể huỷ một phiên làm việc ñang tồn tại khi một phiên làm
việc mới ñược bắt ñầu.
8. Mã nguồn ứng dụng không chứa chú thích của người phát triển
Bất cứ cấp bảo mật nào cũng có thể thất bại. Trong những trường hợp khi ñã truy nhập ñược vào các tệp
mã nguồn của Website thì những chú thích của người phát triển sẽ là những trợ giúp ñắc lực cho tin tặc, nguy
hiểm nhất là trong trường hợp mã nguồn có chứa những "viên ngọc" như tên và mật khẩu dùng trong quá trình
chạy thừ ứng dụng. Yêu cầu này chỉ áp dụng cho những tệp script, chằng hạn như các trang ASP, không áp
dụng cho các ñoạn mã trong các ñối tượng COM ñã ñược biên dịch.

Trước ñây, những ñiểm yếu về bảo mật chưa ñược khắc phục của IIS làm cho các script ASP trên một số
site rất dễ bị ñọc trộm. Nhiều tin tặc biết rằng học có thể ñọc các script này bằng cách thêm chuỗi "::$DATE"
vào cuối yêu cầu truy xuất trang. ðể tránh các rủi ro có thể xảy ra, cần loại bỏ mọi chú thích trên trang ASP,
HTML hoặc mã JavaScript. Bạn có thể thực hiện bằng tay nhưng cách nhanh nhất là viết một chương trình ñể
loại bỏ các chú thích từ các loại tệp khác
nhau.
9. Không lưu trữ thông tin kết nối cơ sở dữ liệu trong global.asa
Thông tin kết nối cơ sở dữ liệu gồm tên server , tên cơ sở dữ liệu, thông tin truy nhập SQL Server. Vì là một
tệp văn bản, những thông tin trong global.asa có thể bị lộ và rơi vào tay những ñối tượng sử dụng không ñúng
mục ñích. Những thông tin này nên ñược lưu trữ ở những nơi khác. Hai cách phổ biến là lưu trữ nó trong một
tệp hoặc trong một Register.

Lưu trữ thông tin kết nối cơ sở dữ liệu trong một tệp và sau ñó có thể ñọc ñược bằng File System Object
hoặc XML Parser là cách an toàn hơn lưu trong global.asa. Một giải pháp lưu thông tin trên tệp khác là sử dụng
tệp UDL vì nó cho phép lưu tất cả các chi tiết về kết nối. Chuỗi kết nối ADO sẽ trở thành "FILE Name =C:\
Path_That_IUSR_<machinename>_Can_Get_To\MyDataLink.UDL" trong ñó tài khoản dịch vụ IIS,
IUSR_<machinename>phải có quyền truy nhập ñể ñọc ñược tệp này.

Lưu các thông tin kết nối dưới hình thức ñược mã hoá trong registry là cách an toàn nhất. ðiều này yêu cầu
ứng dụng phải viết các thông tin mã hoá vào trong registry và các thành phần COM phải thu về và giải mã nó ở
thời gian chạy.

ðối với IS 5, nếu sử dụng thành phần COM+, còn có một lựa chọn registry khác. COM+ cho phép mỗi thành
phần có Constructor ñược thiết lập trong Component Services Manager. Vì không mã hoá thông tin, cách này
cho phép người quản trị site kiểm soát việc truy nhập cơ sở dữ liệu và thay ñổi nó vào bất cứ lúc nào.
10. Các tệp audit log của cơ sở dữ liệu nên ghi nhận tất cả các thay ñổi ñối với dữ liệu
Các tệp audit log của cơ sở dữ liệu cung cấp các thông tin quá khứ về những thay ñổi ñối với dữ liệu trong
các bảng. Một cách thông thường là tạo các trigger của cơ sở dữ liệu ñể ghi lại tất cả các thao tác Insert,
Update và Delete. Tuy nhiên, ghi nhận tất cả thay ñổi ñối với mọi bản ghi có thể làm tăng kích cỡ cơ sở dữ liệu
của bạn lên nhiều lần. ðể giảm khối lượng dữ liệu lưu, cần phải cân nhắc kỹ những thay ñổi dữ liệu ở các bảng
nào cần ñược ghi nhận. Mặc dù có thể tạo các bảng và viết trigger bằng tay, nhưng ñể giảm nhẹ khối lượng
công việc, chúng ta có thể sử dụng giải pháp tự ñộng. Một số sản phẩm và script miễn phí tại ñịa chỉ
http://www.sqldevpro.com/articles/MagicAuditingCode.htm có thể giúp bạn thực hiện ñiều này.



Sưu Tầm Thủ Thuật
traitimbinhyen_nova@yahoo.com

http://vietdown.org Nguyễn Anh Tú
11. Sử dụng các thủ tục lưu sẵn (stored procedure) ñể truy nhập cơ sở dữ liệu
- Giới hạn việc truy nhập cơ sở dữ liệu, chỉ cho phép thực hiện thông qua các thủ tục lưu sẵn có nhiều
ưu ñiểm về bảo mật và hiệu năng thực hiện. Cách tiếp cận này nên ñược tính ñến ngay từ khi bắt ñầu phát
triển ứng dụng ñể việc triển khai về sau ñược dễ dàng hơn.
- Sử dụng thủ tục lưu sẵn an toàn hơn sử dụng ADO Recoredset hoặc các lệnh SQL bởi vì qua nó cho
phép chỉ có người sở hữu cơ sở dữ liệu, dbo, mới có quyền quyền truy nhập tới bảng của tất cả những người sử
dụng khác. Người sử dụng có quyền thi hành trên các thủ tục lưu sẵn nhưng không có quyền ñọc hoặc sửa ñổi
dữ liệu trong các bảng một cách trực tiếp. Chỉ có dbo và người quản trị mới ñược phép sử dụng Query Analyzer
hoặc Crystal Reports ñể làm việc với dữ liệu. Vì vậy, yêu cầu này có nghĩa là nếu Crystal Reports hoặc các công
cụ tương tự khác ñược sử dụng trên Website, việc thu nhận dữ liệu phải ñược triển khai qua các thủ tục lưu
sẵn.
- Với cách tiếp cận này, chúng ta cần tạo 4 thủ tục cho mỗi bảng cho các lệnh Select, Insert, Update
and Delete. Bạn cũng có thể tạo một lớp bao (wrapper class) ñóng vai trò là giao diện của thủ tục trong tầng
truy nhập cơ sở dữ liệu của ứng dụng.

Dưới ñây là thí dụ về thủ tục chèn dữ liệu vào bảng Authors trong cơ sở dữ liệu của một nhà xuất bản:

CREATE PROCEDURE dp_authors_ins @au_id varchar(11), @au_lname varchar(40),
@au_fname varchar(20), @phone char(12) = NULL OUTPUT , @address varchar(40) =
NULL , @city varchar(20) = NULL , @state char(2) = NULL , @zip char(5) = NULL ,
@contract bit AS IF @phone IS Null SET @phone = ('UNKNOWN')

INSERT INTO authors WITH (ROWLOCK) ( au_id, au_lname, au_fname, phone, address,
city, state, zip, contract) VALUES (@au_id, @au_lname, @au_fname, @phone,
@address, @city, @state, @zip, @contract)

SELECT @phone = phone FROM authors WHERE au_id = @au_id

GO

ðọc và thay ñổi dữ liệu có hơi khác với cách tiếp cận thủ tục lưu sẵn. Thay vì làm việc với các recorset ADO
hoặc tạo các câu lệnh SQL ñể thi hành trên server, tất cả việc truy nhập cơ sở dữ liệu ñều thông qua ñối tượng
ñiều khiển ADO. Các ñối tượng ñiều khiển ADO sẽ thi hành thủ tục lưu sẵn này.
III. Những ñiều cần biết khi chọn host:

Duy trì Web server có thể là một việc rất tốn kém về tiền bạc và thời gian. Thế nhưng với khoản phí hàng
tháng, một nhà cung cấp host sẽ ñảm bảo mọi vấn ñề kỹ thuật, giúp cho công ty bạn có thể chú tâm vào việc
phát triển nội dung. Trang Internet ngày nay kỳ này xin ñăng 21 ñiều bạn cần biết khi chọn host.
1. Hãy nghĩ ñến ngày mai cũng như ngày hôm nay
Khi site của bạn trở nên phức tạp hơn, nó có thể cần thực hiện script ở trên server, hỗ trợ cơ sở dữ liệu,
thương mại ñiện tử hay cung cấp ñủ băng thông ñể truyền âm thanh và hình ảnh. Bạn sẽ không tìm thấy những
hỗ trợ ñó trên các site host miễn phí. Ðiều quan trọng là bạn phải ñánh giá một cách thực tế những nhu cầu
của site của bạn không chỉ ở hiện tại mà cả trong tương lai.
2. Hãy ñể tâm ñến các vấn ñề bảo mật
Một host cung cấp hàng rào bảo vệ giúp phòng tránh mọi sự tấn công và các hành vi tin tặc khác diễn ra
hàng ngày làm ngừng hoạt ñộng nhắm vào server của bạn. Thực sự bạn có muốn ngày nào cũng mất thời gian
ñể xem lại những lần truy cập server, cập nhật phần mềm vŕ phục hồi những thiệt hại do các tuyến phòng thủ
của bạn thường xuyên bị chọc thủng?

3. Quyết ñịnh loại host nào là tốt nhất cho bạn
Mức thứ nhất của host sẽ ñặt site của bạn cùng nhiều site khác lên một máy chủ trong một domain ảo có
thể ñịnh vị site bạn tręn máy ñó . ðây chính là kiểu nuôi chung (shared hosting). Khi nội dung nhiều lên hay khi
chuyển trang Web từ dạng tĩnh sang trang tương tác, bạn nên chuyển site của mình sang máy có nhiều nguồn
Sưu Tầm Thủ Thuật
traitimbinhyen_nova@yahoo.com

http://vietdown.org Nguyễn Anh Tú
tài nguyên hơn và có ít site dùng chung nguồn tài nguyên ñó hơn . Bước tiếp theo là một máy dành riêng cho
site của bạn. Nhà cung cấp host sẽ sở hữu, duy trì và sao lưu máy chủ ñồng thời cung cấp tất cả các hạng mục
về bảo mật vật lý cho site, lưu ñiện và các vấn ñề khác về ñiều hành trung tâm dữ liệu.

Mức cao nhất của host là sắp ñặt các máy chủ ở cùng một chỗ. Trong trường hợp này bạn sở hữu toàn bộ
phần cứng của mình nhưng về mặt vật lý nó ñược ñặt lại chỗ của bên host ñể tận dụng ñược ưu thế của nhà
cung cấp: Bạn có thể chọn dải băng tần mŕ bạn cần và nhà cung cấp sẽ cho bạn một ñường kết nối riêng vào
Internet. Ðây là một tuỳ chọn hết sức hấp dẫn nhưng với phần lớn các nhà cung cấp, ñiều này có nghĩa là bạn
phải tự thực hiện các khoản mục về bảo an và tường lửa của riêng bạn; bạn sẽ không ñược sự bảo vệ từ tường
lửa của bên cung cấp hosting. Trừ khi bạn là chuyên gia về các vấn ñề bảo an, còn không thì bạn sẽ muốn ký
kết hợp ñồng với bên cung cấp host hay một nhà tư vấn về bảo an ñể có ñược sự bảo vệ thích hợp cho site và
máy chủ của bạn.

4. Nhu cầu dịch vụ nhanh chóng và hiệu năng
Việc site của ban có ñạt ñược thành công và danh tiếng hay không phụ thuộc vào cấp ñộ host. Một site
phục vụ chậm do các server bị quá tải sẽ không thu hút ñược người xem. Một site khó duy trì sẽ không thể ñáp
ứng hết nhu cầu hoặc khiến bạn phải làm việc vất vả hơn ñể làm mọi thứ mà bạn cần làm. Chẳng hạn, có thể
bạn muốn lập một hộp e-mail ñặc biệt dành ñể quảng cáo hay tranh luận. Một vài mục nhập nhanh vào một
trang HTML hay một bảng của các tài khoản thư hợp thức có thể là tất cả những gì bạn cần, nhưng nếu như
bạn phải ñợi cho bộ phận kỹ thuật của bên cung cấp host làm việc ñó thì bạn có thể ñể tuột mất cơ hội của
mình.

5. Các ứng dụng của bạn phải phù hợp với mức của nhà cung cấp host
Một số ứng dụng và một số kiểu site là rất khó thực hiện với host. Nếu một dịch vụ ñược xây dựng với một
vùng ñĩa lớn và một số máy chạy nhanh thì nó có thể ñủ phục vụ rất nhiều trang tĩnh. Nhưng nếu một site ñặt
ra những ñòi hỏi lớn ñối với CPU thě nó sẽ chạy chậm hơn trong môi trường ñó, vŕ tồi tệ hơn sẽ làm giảm tốc
ñộ của các site khác. Các diễn ñàn thảo luận ñòi hỏi ñặc biệt khắt khe ñối với các máy chủ hosting, bởi vě
chúng cần bộ nhớ dung tích lớn, khả năng truy cập nhanh vào cơ sở dữ liệu tranh luận. Nếu bạn dự ñịnh cho
một diễn ñàn lớn, sôi ñộng thì hãy tìm nhà cung cấp biết cách thực hiện chúng.

Site mà bạn mong muốn có thể còn ñặt ra những ñòi hỏi ñặc biệt ñối với máy chủ hosting. Luồng dữ liệu
âm thanh với hình ảnh yêu cầu kết nối nhanh tới mạng trục, hệ thống ñĩa lưu trữ tốn kém và các server mạnh
có phần mềm phù hợp. Kinh nghiệm cung cấp host ña phương tiện cũng cần thiết, vì vậy bạn nên tìm một bên
cung cấp host có kinh nghiệm, họ sẽ tạo các công cụ thuận tiện cho bạn.

6. Chọn hệ ñiều hành.
Hãy ñể các ứng dụng dẫn dắt bạn; hãy chạy chúng trên hệ ñiều hành mà theo bạn là hiệu quả nhất. Một
nhà cung cấp host cung cấp cả Microsoft Windows và Unix sẽ ñưa ra những lời khuyên khách quan. Ðừng cho
rằng cần có Windows NT ñể chạy site của bạn với những phần mở rộng Frontpage. ðã có ít nhất một nhà cung
cấp host, Eas Street Online Services (www.easystreet.com), gặt hái ñược thành công lớn trong việc viết lại
những phần mở rộng ñể chạy tốt hơn tręn Unix so với trên Windows NT.

7. Ðọc kỹ các giấy tờ
Chúng tôi ñă dành rất nhiều thời gian ñể ñảm bảo rằng mình hiểu những ñiều khoản và ñiều kiện của mỗi
nhà cung cấp dịch vụ mà chúng tôi ký kết. Bạn cũng nên làm như vậy. Nên có một luật sư xem xét các ñiều
khoản. ðừng bao giờ cho rằng một ñiều khoản trong bản hợp ñồng sẽ không ñược thực thi hay như thế nào ñó
không áp dụng ñối với bạn. Nó có áp dụng ñấy. Phải ñặc biệt quan tâm ñến việc sở hữu bản quyền, trả lời các
khiếu nại về site của bạn, thời hạn của hợp ñồng cung cấp dịch vụ, thông báo về việc gia hạn hay chấm dứt họp
ñồng, những phụ phí và luật hiện hành.
8. Biết cách xử lý các khiếu nại
Vấn ñề khiếu nại rất quan trọng. Nếu ai ñó phàn nàn rằng Site bạn gửi ñi bom thư hay chứa tranh ảnh
khiêu dâm (bất kể tính hiệu lực của lời khiếu nại), nhiều nhà cung cấp dịch vụ sẽ khước từ bạn. Hãy tìm xem
chỗ dựa của bạn là gì? Nếu trong bản hợp ñồng có những ñiều khoản không thể chấp nhận ñược và nhà cung
Sưu Tầm Thủ Thuật
traitimbinhyen_nova@yahoo.com

http://vietdown.org Nguyễn Anh Tú
cấp dịch vụ không muốn thay ñổi chúng, hăy tìm nhà cung cấp khác. Nhớ rằng hợp ñồng ñược lập ra là ñể bảo
vệ cả hai bên và ñảm bảo lợi ích của bạn ñược nêu ra ñầy ñủ.
9. Kiểm tra các tham chiếu
Trước khi bạn gửi gắm site quý giá của mình cho một nhà cung cấp host, hãy hỏi tên các nhà làm Web hiện
ñang ñiều hŕnh các site như site của bạn. Gọi ñiện hay gửi E-mail cho họ, nhưng bằng mọi cách phải nhận ñược
sự phản hồi. Hăy lướt qua các site của họ. Ghi lại những khoảng thời gian ñáp ứng vào giờ cao ñiểm hay giờ rỗi
. Phải ñảm bảo rằng là có thể chấp nhận ñược dịch vụ của họ.
10. Hãy tò mò một chút
Sử dụng những công cụ dựa trên Web ñể biết bạn ñang giao dịch với ai? Tra cơ sở dữ liệu Whois (
http://www.whois.net/ , www.pavietnam.com/index.php?parm=whois ) ñể tìm xem ai sở hữu site ñó. Ghi lại ñịa
chỉ giao dịch. Chạy ứng dụng Traceroute (có sẵn trên phần lớn các site ñược tải xuống) ñể xem ñường dẫn ñến
các máy ñă liệt kê trong tìm kiếm Whois. Nếu Traceroute tìm thấy site ñó thông qua server của LSP khác trong
cùng một domain thì có thể bạn ñang giao dịch với người bán lại chứ không phải là một nhà cung cấp host thực
sự. Chẳng hạn CIHost, một nhà cung cấp host có năng lực tự quảng cáo, dường nư ñang cung cấp dịch vụ truy
cập mạng cho Propagation.net trong khi dùng dịch vụ của tập ñoàn khổng lồ BBN Planet.

Khi sử dụng cơ sở dữ liệu Whois, hãy xem xét kỹ máy trên cái dưới cùng một bậc. Nhập những tên mà bạn
tìm thấy vào công cụ tìm kiếm Deja.com. Chúng tôi thấy rằng mạng Propagation.net ñược kết nối với những site
có bom thư và CIHost ñã ñưa ra những lời chỉ trích trên nhóm tin alt.www.webmaster . Hãy so sánh việc này
với công cụ truy nguyên Verio.net.
11 . Bỏ qua những hiệp hội chuyên nghiệp
Và cũng nên bỏ qua phần lớn ý kiến của các site xếp hạng. Bởi vì thành viên của Hội cung cấp host (Web
Hosting Guild) bao gồm các công ty có danh tiếng nhưng có một số trong ñó nói chung không ñược giới
Webmaster ñánh giá cao. Các site xếp hạng thường tổng họp các lần trước ñây ñược xếp hạng ưu bởi các
webmaster là những người sau ñó rời bỏ host thường vì những lý do tiêu cực.
12. Hãy ñọc những gì mà webmaster nói
Hãy xem nhóm tin alt.www.webmaster , vww.hostinvestigater.com , www.scriptkeeper.com/cgi-
bin/ultimate.cgi và http://www.hostcompare.com/ . Ðiều ñó có thể mất một thời gian ñể "tiêu hoá" tất cả mọi ý
kiến và ñề xuất nhưng kết quả thu ñược cũng xứng ñáng.
13. Biết rõ thính giả của bạn
Càng biết rõ thính giả tiềm năng của bạn, bạn càng có khả năng ước tính chuẩn xác các chi phí và lập ra
một biểu giá thích hợp. Nếu bạn ñă làm chủ một site hãy nghiên cứu các tệp truy cập và các công cụ phân tích
lưu thông của bạn ñể biết cần bao nhiêu băng tần và bao nhiêu tài nguyên Server, từ ñó lựa chọn một cách
tương ứng khi bạn chuyển sang nhà cung cấp host. Nếu bạn lần ñầu ñiều hành một Website hãy sử dụng
khoảng thời gian thử nghiệm ñể làm như vậy rồi ñưa ra những sửa ñổi cần thiết trong bản kế hoạch của mình
trước khi thời hạn lấy lại tiền kết thúc.
14. Chọn một kế hoạch phù hợp với bạn
Những tính toán chi phí không kỹ lưỡng có thể ñặt ra những gánh nặng tài chính không thể lường trước lên
site của bạn. Một số nhà cung cấp host hướng kế hoạch của mình về phía nhiều site nhỏ, trong khi số khác
hướng tới ít site có dung tích lớn hơn. Phí hàng tháng tương ứng với số lượng byte giới hạn, và khoản phụ trội
có thể sẽ rất ấn tượng. Một chút thành công ñôi khi là kẻ thù nguy hiểm nhất ñối với các site nhỏ, bởi vě thu
nhập của các site chuyên quảng cáo thường tăng không tương ứng, trừ khi các nhà quảng cáo trên site bạn trả
chí phí theo số lượng lần truy cập ngược lại, việc tăng nhiều số lần truy cập tới site thương mại ñiện tử có thể
ñồng nghĩa với nhiều ñơn ñặt hàng hơn hoặc thu hút ñược sự quan tâm lớn ñến sản phẩm mới. Một trong hai
trường họp tręn doanh thu cũng sẽ tăng tương ứng.
15. Thận trọng trước khi cam kết
Giá chào thường tính theo hàng tháng, còn hoá ñơn thanh toán thực tế lại mang tới những khoản phụ trội
lớn hơn. Nhưng ñể nhận ra ñược ñiều này thường phải có sự liên lạc giữa các chủ thể, không phải chỉ bằng việc
vào xem site ñó. Chúng tôi cho rằng sẽ hợp lý khi bắt ñầu bằng một dịch vụ ngắn hạn có lẽ là 90 ngày ñể chắc
chắn rằng mọi việc diễn ra như bạn ñă ñịnh. Khi bạn thấy hŕi lòng, hãy gia hạn ñể có giảm giá.
16. Hãy xem hoá ñơn
Chúng tôi ñăng ký 30 ngày dùng thử 9NetAve và lập tức bị lập hoá ñơn cho một năm dịch vụ. Khi chúng tôi
khiếu nại, công ty ñă ñề nghị xin cắt giảm thời hạn tính phí xuống còn 6 tháng, sau ñó là 3 tháng. Ðáp lại,
Sưu Tầm Thủ Thuật
traitimbinhyen_nova@yahoo.com

http://vietdown.org Nguyễn Anh Tú
chúng tôi ñòi lấy lại tiền. Phải mất thêm một cú ñiện thoại nữa mới nhận ñược tiền và chúng tôi ñă quyết ñịnh
không tham khảo nhà cung cấp host ñó nữa.
17. Lập chiến lược rút lui
Cho dù các dự ñịnh có hoàn hảo ñi chăng nữa thě mối quan hệ ñôi khi vẫn trục trặc. Hoặc bạn có ý ñịnh rời
bỏ nhà cung cấp host của mình với vô số lý do. Có một số người rất ñúng mức mà chúng tôi biết ñã trở thành
những khách hàng khủng khiếp ñối với nhà cung cấp host của họ, và một số nhà cung cấp host ñắt hàng cũng
ñã trở chứng thành những phòng khủng bố khách hàng của họ.
18. Lưu trữ tất cả mọi thứ
Dĩ nhiên các trang HTML của bạn ñang ñược lưu trữ vě bạn tạo ra chúng trên máy của mình và tải chúng
lên site của nhà cung cấp host. Hãy nghĩ ñến tất cả các file khác hiện ñặt tręn Server của bạn: những bản ghi
truy cập người sử dụng, cơ sở dữ liệu sản phẩm, ñơn ñặt hŕng của khách, CSDL tranh luận, script của Servel;
phần mềm thương mại như thương mại ñiện từ vŕ các gói diễn ñŕn thảo luận, phần mềm phân tích lưu thông,
và tất cả những thứ mà bạn tải lên site của nhà cung cấp host hay dịch vụ này tải xuống cho bạn.
19. Giảm nhẹ sự chuyển ñổi site của bạn
Nếu bạn nhận thấy rằng site bạn phát triển nhanh hơn cả nhà cung cấp host, thì họ cũng nhận thấy ñiều ñó
và sẽ làm việc với nhà cung cấp host mới ñể chuyển site của bạn với sự phiền nhiễu và hỏng hóc tối thiểu. Ða
số sự chia tay là tốt ñẹp. Nhưng khi không phải vậy, thě hãy chuẩn bị sẵn bản sao của tất cả những thứ mà bạn
có thể nghĩ ñến.
20. Sở hữu một tên miền của riêng bạn
Thậm chí ngay cả khi bạn không có ý ñịnh từ bỏ nhà cung cấp host của mình thì bạn cũng phải chắc chắn
rằng mình có một tên miền riêng. Nếu nhà cung cấp host ñã ñăng ký tęn miền cho bạn, hãy tra Whois ñể biết
chắc rằng bạn hay người trong công ty bạn là người ñăng ký và liên lạc hành chính cho site của bạn. Nếu nhà
cung cấp host ñược nięm yết là ñầu mối kỹ thuật và quản lý thì nó sẽ sở hữu tên miền chứ không phải là bạn và
bạn có thể sẽ phải bỏ tiền ñể mua tên ñó. Hãy làm như vậy từ khi nhà cung cấp host không có ñiều gì giận bạn,
nếu không tên miền của bạn có thể sẽ bị giữ ñể ñòi tiền chuộc.
21 . Hãy giúp các vị khách tìm trang chủ mới của bạn
Có lẽ lý do lớn nhất ñể rời khỏi nhŕ cung cấp host theo các ñiều kiện rộng răi là sao cho site cũ của bạn chỉ
tới site mới trong một khoảng thời gian nào ñó. Người sử dụng hay khách hàng của bạn có thể sẽ ñánh dấu ñịa
chỉ theo tên chứ không phải ñịa chỉ IP của site hay các trang mà họ sử dụng. Nhưng có thể phải mất vài ngày,
thậm chí một tuần ñể ñịa chỉ IP mới ñược truyền bá suốt các Server tên miền của Internet. Và nếu vì một lý do
nào ñó người sử dụng ñược hướng tới ñịa chỉ IP cũ thě nên có những chỉ dẫn tới site mới và huớng dẫn cách
cập nhật các book- mark. Ðừng quên gửi e-mail cho khách hàng và ñưa thông tin lên trang của bạn ñể báo cho
họ về sự thay ñổi có thể xảy ra.

Dịch vụ cung cấp host vẫn còn là một ngành kinh doanh mới mẻ, một ngành kinh doanh ñang tiếp tục tái
tạo ra chính nó. Bạn sẽ phải chuẩn bị cho sự thay ñổi liên tục, sự cải thiện lớn hơn và biến ñổi ñột phá có tính
cơ hội về dịch vụ, hiệu quả giá cả hay hiệu năng. ðừng có dao ñộng mà hãy tiếp tục ñánh giá dịch vụ bạn ñang
có vŕ những gì bạn ñang phải bỏ tiền ñể mua.

22. Hãy lưu trữ các thông tin bí mật của bạn trong host free
Bạn ñừng quá tin tưởng rằng server hay host mình mua luôn luôn bảo mật cao hơn các host free. ðó là một
ý nghĩ sai lầm! Hầu hết các hosting ở VN bị các hacker “qua mặt” một các dễ dàng bằng nhiều các và cách
thường dùng là hack local. Khi bạn giữ các thông tin bí mật của mình trong host riêng thì tình trạng bị hack cao
hơn là khi bạn giữ các thông tin bí mật ở host free. Vì các host free luôn luôn bảo mật tốt và không có hacker
nào ñủ siêng năng ñể hack hết toàn bộ các user và hắn cũng chẳng biết ñược user nào của mình. Khi chọn host
free thì hãy chọn các host ở nước ngoài vì khi ấy host ở nước ngoài bảo mật cao hơn nhiều so với host ở VN.
Chẳng hạn host ở t35 hầu như chưa bị hack dù là một host free còn host của www.dangquang.com ñã từng bị
hack local ở khu vực host free!
23. Hãy cẩn thận với cả những người quen
Bạn ñừng quá tin tưởng với những người quen mà giao pass host hay bất cứ thông tin gì về nó. Chẳng hạn
HVA từng bị một moderator của VHF chơi “lén” bằng cách cài keylog vào máy của admin HVA khi anh chàng
HVA mời người bạn VHF về nhà chơi.

Sưu Tầm Thủ Thuật
traitimbinhyen_nova@yahoo.com

http://vietdown.org Nguyễn Anh Tú
24. Hãy lưu ý ñến các chương trình upload
ðừng nên upload những thông tin quan trọng lên host chính của mình ở DV, vì ở DV bạn có thể “ñược”
chương trình upload lưu lại mật khẩu v.v… hay ai ñó dùng chương trình tìm lại mật khẩu thì sao? Nếu muốn
upload ngoài DV thì nên sau khi up xong hãy Uninstall chương trình upload ñó.

IV. Loại bỏ các ký tự ñặc biệt:

Loại bỏ các kí tự ñặc biệt như /, |, &, là ñiều làm ñau ñầu những người mới bắt ñầu vào nghề viết
ứng dụng web nhằm ngăn chặn tấn công phê chuẩn ñầu vào của hacker. Trong Perl, =~s chưa chắc ñã lọc
ñược hết các kí tự này bởi bạn có thể bị hacker chưa khâm. Một ví dụ khá ñiển hình là trường hợp của
fileseek.cgi ñã ñược thông báo trên bugtraq trước ñây. Fileseek.cgi cố gắng lọc bỏ tất cả các kí tự ' /' nhưng nó
sẽ thất bại nếu hacker dùng ' //'. Fileseek.cgi làm việc như một cái máy, nó loại bỏ ' /' trong ' //', kết quả
trả về là ' /' và hacker sẽ ung dung làm thêm vài cái ' //' ñể leo lên thư mục root ' // // // // /' sau
ñó cat file /etc/passwd.
Một cách ñơn giản ñể loại bỏ các kí tự ñặc biệt là bạn chỉ chấp nhận các kí tự thường, không cần quan
tâm ñến các kí tự ñặc biệt.
#!/usr/local/bin/perl
$_ = $user_data = $ENV{'QUERY_STRING'}; # nhận dữ liệu từ phía người dùng
print "$user_data\n";
$OK_CHARS='-a-zA-Z0-9_.@'; # tập kí tự ñược cho phép
s/[^$OK_CHARS]/_/go; # gỡ bỏ các kí tự không nằm trong tập kí tự trên
$user_data = $_;
print "$user_data\n";
exit(0)
Rất ñơn giản như vô cùng hiệu quả, chúng ta không cần phải quan tâm ñến các kí tự /, |,
* Bạn tham khảo thêm Perl CGI problems (phrack 55/9 - http://www.phrack.org/) ñể biết rõ về các lỗi
liên quan ñến các script viết bằng Perl/CGI.
V. Bảo vệ file và thư mục:

Việc bảo mật tuyệt ñối một thư mục hoặc một tệp là một nhu cầu bức thiết của nhiều người dùng máy
tính, ñặc biệt với những người dùng chung một máy tính. Mặc dù trong hệ ñiều hành DOS, trong hệ ñiều hành
Windows và ñặc biệt là trong hệ ñiều hành mạng ñã có những thủ tục cài ñặt mật khẩu, cài ñặt thuộc tính ẩn
(H), thuộc tính chỉ ñọc (R) vv Nhưng ñó chỉ là những bảo mật cục bộ và mức bảo mật không cao. Các thư
mục hoặc các tệp bảo mật ñược ở chỗ này nhưng không bảo mật ñược ở chỗ khác. Có các thư mục và tệp ñược
Windows bảo vệ chống xoá nhưng lại xoá ñược dễ dàng trong DOS
Vậy có cách nào bảo mật ñược thư mục một cách tuyệt ñối không ? Có. Bạn phải tự làm lấy vì chưa có một
chương trình nào giúp bạn làm ñiều này. Phương án ñể bảo mật tuyệt ñối một thư mục mà chúng tôi ñã lựa
chọn và dùng rất có hiệu quả là ñánh lạc hướng ñịa chỉ lưu trú của thư mục trên ñĩa, làm cô lập các cluster mà
thư mục ñã chiếm giữ, do ñó không thể can thiệp ñược vào thư mục này bằng bất kì cách nào. Vậy làm thế nào
ñể ñánh lạc hướng ñịa chỉ lưu trú thật của thư mục ?.

ðể làm ñược ñiều này bạn cần biết rằng FAT là một bảng ñịnh vị file (File Allocation Table). Bảng này
gồm nhiều phần tử. ðĩa có bao nhiêu cluster thì FAT cũng có bấy nhiêu phần tử (Cluster là một liên cung gồm
nhiều sector nhóm lại). Phần tử thứ n của FAT tương ứng với cluster thứ n trên ñĩa. Một file chiếm bao nhiêu
cluster trên ñĩa thì ñề mục FAT của nó cũng có bấy nhiêu phần tử. Phần tử FAT này chứa số thứ tự của một
phần tử FAT khác. Phần tử chứa FF FF là mã kết thúc file <EOF>. Như vậy một ñề mục FAT của một File sẽ
chứa số thứ tự của các cluster mà file chiếm giữ. ðề mục FAT của một thư mục chỉ có một phần tử chứa mã
<EOF>. Số thứ tự của phần tử này ứng với số thứ tự của cluster chứa ñề mục của các thư mục con và của các

Xem chi tiết: Sách sưu tầm p2


Không có nhận xét nào:

Đăng nhận xét