1. Trang chủ >
  2. Kỹ thuật >
  3. Điện - Điện tử - Viễn thông >

Phần II: Máy chủ pháo đài

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 (613.59 KB, 124 trang )


Tìm hiểu về an toàn và bảo mật trên mạng



Các dạng đặc biệt của máy chủ pháo đài.

Việc lựa chọn máy.

Vị trí của máy chủ pháo đài trên mạng.

Lựa chọn phục vụ cung cấp bởi máy chủ pháo đài.

Không cho phép account người sử dụng trên máy chủ pháo

đài.

Xây dùng một máy chủ pháo đài.

Điều hành máy chủ pháo đài.

Bảo vệ máy móc và dự trữ.

Một máy chủ pháo đài là sự hiện diện công khai của bạn trên mạng.

Xem xét nó như một hành lang của một toà nhà. Người ngoài có thể không

thể đi lên theo bậc thang hoặc vào trong thang máy, nhưng họ có thể đi bộ tự

do trong hành lang và yêu cầu cái mà họ cần. (Dù có hay không họ sẽ có

được cái mà họ yêu cầu phụ thuộc vào điều khoản an toàn của toà nhà).

Giống như hành lang trong toà nhà của bạn, một máy chủ pháo đài có để

ngăn chăn những phần tử có tiềm năng không thân thiện. Pháo đài là một hệ

thống mà bất kỳ người bên ngoài nào –là bạn hay là kẻ thù – đều cần kết nối

theo cách thông thường với việc truy cập một hệ thống hay một dịch vụ nằm

trong tường lửa của bạn.

Nói chung, một pháo đài được phơi bày ở mức độ cao, bởi vì sự tồn

tại của nó được biết đến trên mạng. Với lý do này, những người xây dựng

tường lửa và những nhà quản lý cần tập trung các nỗ lực bảo mật cho pháo

đài. Bạn sẽ chú ý đặc biệt đến bảo mật của máy chủ khi xây dựng ban đầu và

trong quá trình điều hành. Bởi vì một máy chủ pháo đài là máy chủ được lộ

ra nhiều nhất, nó cũng cần trở thành máy chủ được củng cố nhất.



Tìm hiểu về an toàn và bảo mật trên mạng



Trong phần này chúng ta chỉ bàn về pháo đài đơn, nhưng nên nhớ

rằng có thể có đa pháo đài trong cấu hình tường lửa. Số lượng này phụ thuộc

vào các kích cỡ yêu cầu riêng và các tài nguyên. Nhưng mỗi cái được dựng

lên theo một nguyên lý chung, sử dụng các kỹ thuật chung.

Các pháo đài được sử dụng với nhiều kiến trúc và đường vào tường

lửa khác nhau, hầu hết thông tin trong phần này sẽ là phù hợp kể cả khi bạn

đang xây dựng một pháo đài để sử dụng với một bức tường lửa dựa trên gói

tin lọc, sự uỷ nhiệm, hay một tiếp cận lai. Các nguyên lý và các thủ tục cho

việc xây dựng một pháo đài được mở rộng cho việc bảo mật bất cứ máy chủ

nào. Bạn muốn sử dụng chúng, hay biến thể của chúng, cho máy chủ khác

đang trong tình trạng bảo mật nguy cấp, và có thể cho các máy chủ trong

tình trạng nguy cấp khác (chẳng hạn, máy chủ chính trong mạng nội bộ của

bạn).



1.



Các nguyên lý chung



Đây là hai nguyên lý cơ bản cho việc thiết kế và xây dựng một pháo

đài: giữ cho nó đơn giản, và được chuẩn bị để đề phòng pháo đài bị làm tổn

hại.

Giữ cho nó đơn giản

Pháo đài của bạn càng đơn giản, nó sẽ càng dễ bảo mật hơn.

Bất kể dịch vụ nào pháo đài sử dụng cũng có hỏng hóc phần mềm hay

lỗi cấu hình trong đó, và mỗi hỏng hóc hay lỗi có thể đưa đến các vấn đề về

an toàn. Để bảo mật được tốt nhất nó sẽ cung cấp tập nhỏ nhất các dịch vụ

với đặc quyền Ýt nhất mà nó có thể có, trong khi vẫn hoàn thành được vai

trò của nó.

Được chuẩn bị để đề phòng pháo đài bị làm tổn thương



Tìm hiểu về an toàn và bảo mật trên mạng



Bất chấp các cố gắng nhất của bạn để bảo đảm việc bảo mật của pháo

đài, các cuộc tấn công vẫn có thể xảy ra. Đừng chủ quan về chúng. Chỉ bằng

việc lượng trước điều tệ hại nhất, và lập kế hoạch cho nó, bạn sẽ chắc chắn

ngăn chặn được nó. Thường xuyên đặt câu hỏi: “Điều gì sẽ xảy ra nếu pháo

đài bị tổn hại?” trong suy nghĩ của bạn trong mọi lúc.

Tại sao chóng ta nhấn mạnh vào điểm này? Lý do đơn giản là: pháo

đài là một máy chắc chắn bị tấn công bởi vì nó là máy để lộ nhiều nhất ngoài

mạng Internet. Nó cũng là máy tác động ngược lại các hệ thống trong của

bạn vì thế giới bên ngoài có thể không trao dổi trực tiếp với hệ thống trong

của bạn mà trao đổi thông qua chính nó. Cố gắng đảm bảo pháo đài sẽ không

bị tấn công vào, nhưng luôn nghĩ đến câu hỏi:”Điều gì sẽ đến khi nó xảy

ra?”. Trong trường hợp pháo đài bị tấn công, bạn không muốn cuộc tấn công

này dẫn đến làm tổn hại toàn bộ bức tường lửa. Bạn có thể ngăn chặn nó

bằng cách không cho phép các máy nội bộ uỷ thác cho pháo đài nhiều hơn

những vấn đề cần thiết cho pháo đài thực hiện. Bạn sẽ cần xem xét một cách

cẩn thận mỗi một dịch vụ mà pháo đài cung cấp cho các máy nội bộ, và định

rõ, trên một nền tảng dịch vụ – bởi - dịch vụ, mức độ tin cậy và đặc quyền

mỗi dịch vụ thực sự cần.

Mét khi bạn đã có các quyết định này, bạn có thể sử dụng các kỹ thuật

để áp đặt chúng. Chẳng hạn, bạn có thể cài đặt các kỹ thuật điều khiển truy

cập chuẩn (mật khẩu, các thiết bị xác thực, ...) trong các máy chủ nội bộ,

hoặc bạn có thể đặt lọc gói tin giữa pháo đài và các máy nội bộ.



2.



Các dạng đặc biệt của pháo đài



Hầu hết trong chương này sẽ thảo luận về các pháo đài mà chúng là

các máy chủ được bảo vệ hay các máy chủ cung cấp các dịch vụ trên một



Tìm hiểu về an toàn và bảo mật trên mạng



mạng được bảo vệ. Có rất nhiều loại khác nhau của pháo đài, tuy nhiên,

chúng có cấu hình tương tự nhau nhưng có những yêu cầu đặc biệt riêng.



2.1 Các máy chủ hai giao diện phi lộ trình (Nonrounting

dual_homed host)

Một máy chủ hai giao diện (dual-homed host) không tìm đường có

các kết nối đa mạng, nhưng không qua sự đi lại giữa chúng. Do đó một máy

chủ có thể là chính một bức tường lửa, hoặc có thể là một phần của một

tường lửa phức tạp hơn. Với phần quan trọng nhất, các máy lưỡng đích

không tìn đường được định hình như các pháo đài khác, nhưng cần có sự

phòng ngừa thêm, sẽ thảo luận sau đây, để tạo sự chắc chắn là chúng thực sự

không tìn đường. Nếu một máy chủ phi lộ trình là một bức tường lửa đầy đủ

của bạn, bạn cần một đặc thù riêng trong cấu hình của nó và theo các chỉ dẫn

của pháo đài chuẩn với sự thận trọng đặc biệt.



2.2. Các máy nạn nhân (Victim machines)

Bạn có thể muốn chạy các dịch vụ mà chúng rất khó được cung cấp

một cách an toàn với cả bằng sự uỷ nhiệm hay loc gãi tin, hoặc các dịch vụ

mà quá mới mà bạn không biết các vấn đề bảo mật có liên quan của chúng.

Với mục đích này, một máy nạn nhân (hay vật cúng tế) có thể là hữu Ých.

Đây là một máy không có cái mà bạn quan tâm đến, và không có truy nhập

tới các máy mà một người xâm nhập có thể sử dụng. Nó chỉ cung cấp tập tối

thiểu các ứng dụng mà bạn cần đến. Nếu có thể, nó chỉ cung cấp một dịch vụ

không an toàn hay chưa thử nghiệm, để tránh các tương tác bất ngờ.

Các máy nạn nhân được cấu trúc như các pháo đài chuẩn, không kể

chúng thường được đặt để cho phép người sử dụng truy nhập. Người sử

dụng thường sẽ muốn bạn có nhiều hơn các dịch vụ và các chương trình mà



Tìm hiểu về an toàn và bảo mật trên mạng



bạn có thể có trong pháo đài chuẩn. Bạn không muốn người sử dụng trở nên

thoải mái trên một máy chủ nạn nhân; họ sẽ trở thành phụ thuộc vào nó, và

nó sẽ không làm việc lâu hơn như đã thiết kế. Nhân tố chính cho một máy

nạn nhân là nó có sẵn, và nếu nó bị làm tổn hại cũng không ai quan tâm.



2.3. Các pháo đài nội bộ (Internal bastion host)

Trong hầu hết các cấu hình, pháo đài chính có các giao dịch đặc biệt

với các máy nội bộ nào đó. Chẳng hạn, nó có thể trao đổi thư tín điện tử tới

một máy dịch vụ thư tín nội bộ, kết hợp với một máy dịch vụ định danh nội

bộ, hoặc qua các tin mạng người sử dụng tới máy dịch vụ tin nội bộ. Các

máy này là các pháo đài có hiệu lực cấp hai, và chúng có cấu hình giống với

pháo đài hơn là giống các máy chủ nội bộ chuẩn. Bạn có thể cần bỏ đi các

dịch vụ cho phép trong chúng, nhưng bạn cần thực hiện một tiến trình định

cấu hình tương tự.



3.



Việc lựa chọn máy (Choosing a Machine)



Bước đầu tiên trong việc xây dựng một pháo đài là quyết định loại

máy sẽ sử dụng. Bạn muốn tính tin cậy (nếu pháo đài bị hạ, bạn đánh mất

hầu hết các lợi Ých của việc kết nối mạng máy tính), tính chịu đựng, và tính

cấu hình. Phần này xem xét loại hệ điều hành bạn cần chạy, tốc độ mà một

pháo đài cần, và cấu hình phàn cứng cần được cung cấp.



3.1. Hệ điều hành nào?

Pháo đài phải là cái mà bạn quen thuộc. Bạn đang tiến hành xây dựng

một máy và hệ điều hành bao quát; đây không phải là lúc để học một hệ

thống mới hoàn chỉnh. Vì một pháo đài có cấu hình đầy đủ là một môi

trường rất hạn chế, bạn sẽ muốn có thể phát triển nó trong một máy khác, và

nó giúp cho việc giải quyết tốt để có thể trao đổi ngoại vi với các máy khác



Tìm hiểu về an toàn và bảo mật trên mạng



mà bạn sở hữu. (đây là một phần của vấn đề phần cứng, nhưng nó không

làm tốt cho bạn có thể cắm đĩa UNIX – formatted SCSI vào trong một máy

thuộc dòng Macintosh SCSI: giữa các phần cứng thì có giao diện, nhưng dữ

liệu không đọc được.

Bạn cần một máy đáng tin cậy trong phạm vi của những dịch vụ

Internet mà bạn muốn cung cấp cho những người sử dụng, với nhiều kết nối

tích cực đồng thời. Nếu site của bạn hoàn toàn được tạo ra bằng MS-DOS,

Windows, hoặc những hệ thống Macintosh, thì bạn có thể tìm thấy cho chính

bạn nền tảng cần khác (có thể là UNIX, có thể là Windows NT, có thể cái

khác) để sử dụng như máy chủ pháo đài của bạn. Bạn có thể không có khả

năng cung cấp hoặc truy nhập tất cả các dịch vụ mà bạn mong muốn, bởi vì

những công cụ thích đáng (các dịch vụ uỷ quyền, các hệ thống lọc gói tin,

hoặc những dịch vụ bình thường thậm chí cho những dịch vụ cơ bản như

SMTP và DNS) có thể không sẵn có trên đó.

UNIX là hệ điều hành phổ biến nhất trong việc đề nghị các dịch vụ

Internet, và các công cụ là có sẵn một cách phổ biến để tạo máy chủ pháo

đài trên các hệ thống UNIX. Nếu bạn đã có những máy UNIX, thì bạn cần

phải xem xét cẩn trọng UNIX cho máy chủ pháo đài của bạn. Nếu bạn

không có những nền tảng thích hợp cho một máy chủ pháo đài và cần phải

học một hệ điều hành mới theo cách nào đó, chúng tôi khuyến cáo bạn thử

với UNIX, vì ở đó bạn sẽ tìm thấy nhiều nhất các công cụ để xây dựng máy

chủ pháo đài.

Nếu tất cả người dùng của bạn, các máy IP- có khả năng là cái khác

với máy UNIX (chẳng hạn những hệ thống VMS), bạn có một quyết định

khó khăn để thực hiện. Bạn có thể có khả năng sử dụng một máy mà bạn đã

quen thuộc nh một máy chủ pháo đài và có những lợi thế của sự quen thuộc



Tìm hiểu về an toàn và bảo mật trên mạng



và tính có thể hoán đổi cho nhau được. Mặt khác, những công cụ mở rộng và

vững chắc cho việc xây dựng máy chủ pháo đài sẽ không sẵn sàng cho bạn

lựa chọn, và bạn sẽ phải ứng biến. Bạn có thể có được sự bảo mật nào đó

qua sự mập mờ (đừng tin tưởng vào nó; hệ điều hành của bạn có lẽ không

mập mờ như bạn nghĩ), trừ phi bạn có thể mất như nhiều hoặc nhiều hơn nếu

không có lược sử mà những máy chủ pháo đài dựa trên UNIX đề nghị. Với

UNIX, bạn có lợi thế của việc học qua những những lỗi của người khác cũng

nh của chính mình.

Hầu hết trong phần này giả thiết rằng bạn sẽ sử dụng một loại máy

UNIX nào đó như một máy chủ pháo đài. Đó là vì đa số các máy chủ pháo

đài là những máy UNIX, và một số chi tiết là phụ thuộc nhiều vào hệ điều

hành. Các nguyên lý cũng sẽ tương tự nếu bạn chọn sử dụng hệ điều hành

khác, nhưng các chi tiết sẽ thay đổi đáng kể.

Nếu bạn có một máy UNIX, phiên bản nào của UNIX mà bạn nên

chọn? Một lần nữa, bạn muốn cân bằng giữa cái mà bạn đã quen thuộc với

các công cụ có sẵn cho các phiên bản. Nếu site của bạn đã sử dụng một

phiên bản của UNIX, bạn có lẽ sẽ sử dụng phiên bản đó. Nếu site của bạn có

sự quen thuộc nào đó với vài phiên bản của UNIX, và những công cụ thích

hợp (được thảo luận trong chương này) là có sẵn cho tất cả chúng, hãy sử

dụng một phiên bản phổ biến Ýt nhất mà bạn vẫn thích. Làm cho bạn hài

lòng nhất và giảm đến hết cỡ khả năng xảy ra mà người tấn công có các

phương thức tiền biên dịch có thể việc tấn công vào máy chủ pháo đài của

bạn. Nếu bạn không quen thuộc với UNIX, hãy chọn bất kỳ phiên bản nào

bạn thích, miễn là nó sử dụng hợp lý rộng rãi. Như một quy tắc, nếu sự lựa

chọn của bạn là một phiên bản của UNIX có một nhóm người sử dụng liên

quan đến nó, thì nó đủ nổi tiếng để có thể tin cậy được.



Tìm hiểu về an toàn và bảo mật trên mạng



Mặc dầu các nhà cung cấp UNIX rất khác nhau trong việc mở rộng

của họ về các vấn đề bảo mật, sự khác nhau trong vấn đề bảo mật thực tế

giữa những phiên bản khác nhau của UNIX là Ýt hơn. Đừng giả thiết rằng

sự công khai được đưa ra cho các lỗ hổng bảo mật phản ánh số các lỗ hổng

bảo mật; nó là một phản ánh chính xác hơn tính phổ biến của hệ điều hành

và sự hài lòng của một nhà cung cấp để chấp nhận và đặt các vấn đề bảo

mật. Hài hước thay, những hệ điều hành với đa số các vấn đề tào lao gây rắc

rối có thể là cái an toàn nhất, vì chúng đã trở nên phù hợp.

Những khả năng UNIX hữu Ých

Mỗi hệ điều hành có những khả năng đặc biệt nhất định hoặc những

đặc tính mà có thể hữu Ých trong việc xây dựng một máy chủ pháo đài.

Chúng ta không thể mô tả tất cả những khả năng này cho tất cả các hệ thống,

nhưng chúng ta sẽ thông tin cho bạn một số Ýt đặc tính đặc biệt của UNIX

vì nó là một nền tảng máy chủ pháo đài chung.

setuid / setgid

Mỗi người dùng UNIX có một số xác định người sử dụng (uid) trong

việc bổ sung cho tên đăng nhập của anh ta hay cô ta, và thuộc về một hoặc

các nhóm nhiều những người sử dụng, cũng được xác định bằng các số

(gids). Hạt nhân UNIX sử dụng uid và các gids của một người sử dụng riêng

để xác định những file nào mà người sử dụng truy cập tới. Thông thường,

những chương trình UNIX chạy với các cho phép truy cập file của người sử

dụng, người thực hiện chương trình. Khả năng setuid cho phép cho một

chương trình sẽ được cài đặt để nó luôn luôn chạy với sự cho phép của

người chủ chương trình, kể cả khi có người sử dụng đang chạy chương trình.

Khả năng setgid cũng tương tự; nó cho phép chương trình cấp cho thành



Tìm hiểu về an toàn và bảo mật trên mạng



viên tạm thời trong một nhóm tới những người sử dụng (trong khi chạy

chương trình) mà không phải là những thành viên bình thường của nhóm đó.

chroot

Cơ chế chroot cho phép cho một chương trình có thể đảo ngược sự

thay đổi cảnh quan của nó của hệ thống file bằng việc thay đổi ý tưởng của

chương trình tại nơi gốc của hệ thống file. Mỗi lần một chương trình chroots

tới một phần đặc biệt của hệ thống, phần đó trở thành toàn bộ hệ thống file

cho đến khi chương trình được kết nối; phần còn lại của hệ thống file ngừng

tồn tại, từ điểm chương trình của cảnh quan.

Những thay đổi môi trường, nh những cái mà được tạo bởi

setuid/setgid và chroot, được thừa kế bởi bất kỳ những tiến trình phụ thuộc

nào mà một chương trình khởi động. Một phương thức chung của việc hạn

chế những chương trình trên một máy chủ pháo đài có thể sẽ chạy những

chương trình ở dưới các chương trình “gói”; các chương trình gói thực hiện

bất cứ cái gì mà setuid/ setgid, chroot, hoặc môi trường thay đổi công việc

khác là cần thiết, và khởi động chương trình thực tế.

3.2. Cần một máy tốc độ như thế nào

Máy chủ pháo đài không phải cần là một máy nhanh. Có một vài lý

do, không nói về giá cả, cần một máy chủ pháo đài mạnh để thực hiện công

việc của nó, thì quả thật không cần thiết. Các dịch vụ được yêu cầu trong

máy chủ pháo đài không cần nhiều tài nguyên nh vây.

Nhiều người sử dụng những máy 2 - 5 MIPS ( Cho ví dụ, hãy SUN3, MicroVax II, Hoặc 80386 ... dựa trên nền tản nền tảng UNIX) cho máy

chủ pháo đài của họ. Trung bình chỉ cần như vậy. Máy chủ pháo đài thật sự

không có nhiều công việc để làm. Cái hạn chế tốc độ của nó là sự có hạn bởi



Xem Thêm
Tải bản đầy đủ (.doc) (124 trang)

×