Change background image
LOVE quotion

Bắt đầu từ 4.53' thứ Hai ngày 17/10/2011


You are not connected. Please login or register

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down  Thông điệp [Trang 1 trong tổng số 1 trang]

Nuts
Nuts Tích cực

Cấp bậc: Tích cực

Bài viết : 300

Danh vọng : 648

Uy tín : 23

So sánh các giao thức VPN: PPTP vs. L2TP vs. OpenVPN vs. SSTP vs. IKEv2

Tìm hiểu về VPN Vpn-pr10

Các kỹ thuật mã hóa VPN được phát triển và chứng nhận bởi National Institute of Standards and Technology, tuy nhiên với vụ Edward Snowden tiết lộ về các bí mật mà NSA đang cố gắng bẻ khóa công nghệ này là một thông tin gây sốc. Điều này đặt dấu chấm hỏi liệu "các công nghệ VPN này có thực sự bảo mật"? Và để trả lời cầu hỏi này, chúng tối nhận thấy đây là thời điểm để viết về chủ đề này.

Chúng ta sẽ bắt đầu bằng cách mổ xẻ những điểm khác biệt giữa các giao thức VPN protocols trước khi đi vào nội dung chính liên quan tới kỹ thuật mã hóa và phân tích việc NSA cố gắng bẻ khóa các công nghệ mã hóa này sẽ tác động tới người dùng như thế nào.

Tìm hiểu về VPN Compar10

NIST

SHA-1, SHA-2, RSA và AES tất cả đều được phát triển và chứng nhận bởi Hiệp hội kỹ thuật và tiêu chuẩn quốc gia Mỹ (tên tiếng Anh là United States National Institute of Standards and Technology (NIST), là một định chế hoạt động mật thiết với NSA để phát triển các mật mã. Giờ chúng ta đều biết các nỗ lực làm yếu hoặc bẻ khóa ngầm các mật mã của NSA, điều này kéo theo câu hỏi về sự minh bạch của thuật toán NIST.

Mặc dù NIST luôn phủ nhận các cáo buộc hành vi sai trái (ví dụ như cố ý làm yếu các tiêu chuẩn mã hóa), họ cũng tăng lòng tin người dùng bằng cách mời gọi sự tham gia của công chúng trong các lượt ra mắt các tiêu chuẩn mật mã mới của họ. Trong khi đó, NSA đã từng bị cáo buộc bởi thời báo New York Times khi cố ý bẻ khóa các tiêu chuẩn mã hóa của NIST bằng các làm gián đoạn các cuộc thử nghiệm đại trà hoặc cài các phần mềm gián điệp không thể phát hiện để làm yếu đi thuật toán.

Vào 17/12/2013, sự bất tín nhiệm càng cao hơn khi RSA Security khuyến nghị người dùng ngưng sử dụng các thuật toán mã hóa cụ thể khi chúng có thể có lổ hổng được cố ý tạo ra bởi NSA.

Ngoài ra, các tiêu chuẩn mã hóa thiết kế bởi NIST, Dual EC DRBG đều đã không còn bảo mật trong nhiều năm rồi. Bằng chứng là Đại học kỹ thuật Hà Lan cũng đã lưu ý điều này năm 2006. Tuy vậy, việc đi theo các tiêu chuẩn NIST vẫn cứ tiếp diễn khi mà cần phải đáp ứng các tiêu chuẩn của NIST để có thể giành các hợp đồng của chính phủ Mỹ.

Do sự quá thông dụng của tiêu chuẩn NIST trên toàn cầu và ở nhiều lĩnh vực liên quan tới tính riêng tư như VPN khiến vấn đề khá nan giải. Nhiều chuyên gia trong ngành cũng chưa có giải pháp để không phụ thuộc vào NIST. Công ty duy nhất tìm hướng đi riêng là là Silent Circle, cũng đành đóng dịch vụ Silent Mail của họ thay vì chấp nhận bị thâu tóm bởi NSA, và chính thức rút lui khỏi tiêu chuẩn NIST vào tháng 11/ 2013.

Thông qua bài viết này cũng cảm ơn sự đóng góp của BestVPNLiquidVPN đã bắt đầu thử nghiệm các mật mã không liên quan tới NIST. Tuy nhiên, đây cũng là VPN duy nhất đang chọn hướng đi riêng này mà chúng tôi biết. Do đó, tính tới thời điểm hiện tại việc sử dụng chuẩn mã hóa 256-bit AES vẫn được xem là tối ưu nhất.

Các cuộc tấn công NSA bẻ khóa RSA

Một trong các tiết lộ gần đây của Edward Snowden liên quan tới chương trình tên là ‘Cheesy Name’ được phát triển để dò ra các key mã hóa hay ‘certificates’ mà có khả năng dễ dàng bẻ khóa bởi siêu máy tính tại GCHQ. Điều này cho thấy các chứng chỉ này (gọi là certificate) thường được bảo vệ bởi mã hóa 1024-bit yếu hơn là mọi người nghĩ và có thể dễ dàng giải mã nhanh hơn nhờ vào GHCQ và NSA. Một khi đã được giải mã thành công thì các trao đổi quá khứ và tương lai sẽ bị xâm pham nhờ vào các key vĩnh viễn dùng để giải mã.

Kết quả là, rất nhiều dạng mã hóa dựa vào các key và certificate lâu năm được cho là đã bị bẻ khóa bao gồm cả TLS và SSL. Điều này đánh động tới giao thức HTTPS. Tuy nhiên, vẫn có tin vui là OpenVPN lại không nằm vùng nguy hiểm do sử dụng các key tạm thời. Lý do là mỗi trao đổi lại yêu cầu một key mới nên không yêu cầu certificate.

Nếu hacker lấy được key riêng của certificate, việc giải mã chúng không phải là chuyện đơn giản. Với kiểu tấn công MitM, hacker có thể xác định các kết nối OpenVPN connection nhưng cần xác định riêng kết nối và cả key riêng cũng cần phải được bẻ khóa. Kể từ khi thông tin GHCQ và NSA có thể bẻ khóa mã hóa 1024-bits một số nhà cung cấp VPN đã nâng cấp lên 2048-bits thậm chí là 4096-bits.

Perfect Forward Secrecy

Vẫn còn tin vui là giải pháp cho vấn đề kể trên vẫn có thâm chí cho cả các kết nối TLS và SSL khi trang web thực hiện hệ thống perfect forward secrecy system (PFS) cho phép chỉ mỗi key mã hóa (encryption key) được tạo ra cho mỗi session. Tuy vậy, chỉ có một cái tên thực hiện thành công điều này hiện nay là Google.
PPTP

Được phát triển bởi nhóm thành viên được ủng hộ bởi Microsoft Corporation, Point-to-Point Tunneling (PPTP) tạo hệ thống riêng ảo dựa trên kết nối quay số (dial-up) còn gọi là VPN. Và kể từ khi nó xuất hiện, PPTP được sử dụng rộng rãi như là một chuẩn protocol VPNs. Cũng là VPN protocol đầu tiên được hỗ trợ bởi Windows, PPTP hoạt động dựa vào các chuẩn xác thực như MS_CHAP v2 và là chuẩn phổ biến nhất hiện nay.

Ưu điểm của PTTP là khả năng thiết lập dễ dàng và không tốn nhiều tài nguyên hệ thống. Và đây là lý do mà nhiều doanh nghiệp lựa chọn VPN này như là giải pháp.

Mặc dù sử dụng chuẩn mã hóa 128-bit, nhưng PPTP chỉ có vài lỗ hổng nhỏ trong đó đáng lưu ý là khả năng giải mã MS-CHAP v2 Authentication là lỗi nghiêm trọng nhất. Vì vậy, PPTP có thể bị bẻ khóa trong vòng 2 giây. Mặc dù lổ hổng đã được khắc phục bởi Microsoft nhưng người khổng lồ công nghệ này cũng khuyến nghị người dùng sử dụng các giao thức thay thế khác như SSTP hoặc L2TP.

Do khả năng bảo mật chưa cao nên không quá bất ngờ khi giải mã các gói dữ liệu PPTP là công việc hằng ngày tai NSA. Tuy vậy, rủi ro đáng ngại hơn còn nằm ở chỗ là khả năng có thể giải mã hàng loạt các dữ liệu cũ hơn được mã hóa bởi PPTP khi nhiều chuyên gia khuyến nghị đây là giao thức bảo mật.

Ưu điểm

  • Nhanh.
  • Phần mềm máy trạm trên nhiều hệ điều hành.
  • Thiết lập cấu hình dễ.


Nhược điểm

  • Đã bị bẻ khóa bởi NSA.
  • Không hoàn toàn bảo mật.


L2TP và L2TP/IPsec

Layer 2 Tunnel Protocol không giống các VPN protocol khác khi nó không mã hóa các dữ liệu đi qua nó mà phải nhờ vào một bộ protocol có tên là IPsec để mã hóa dữ liệu trước khi gửi. Tất cả thiết bị tương thích và hệ điều hành đều được cài đặt sẵn chuẩn L2TP/IPsec. Quá trình thiết lập cũng dễ như PPTP nhưng giao thức này lại sử dụng cổng UDP port 500, nên dễ dàng bị tường lửa NAT firewall chặn lại. Dó đó, bạn sẽ cần chuyển tiếp cổng trong trường hợp này.

Không có những lổ hổng lớn đi kèm với mã hóa IPsec encryption. Tuy vậy, Edward Snowden ám chỉ khả năng NSA cũng đã bẻ khóa được trong khi John Gilmore - thành viên sáng lập và chuyên gia an ninh của Electric Frontier Foundation cho rằng NSA đang chủ đích làm yếu đi giao thức này. Ngoài ra, do LT29/IPsec đóng gói tới 2 lần dữ liệu nên được đánh giá là không hiệu quả bằng SSL và kéo theo tốc độ chậm hơn so với các VPN protocols khác.

Ưu điểm

  • Được đánh giá là bảo mật.
  • Cài đặt sẵn trên tất cả OS và thiết bị gần đây.
  • [Thiết lập dễ dàng.


Nhược điểm

  • Chậm hơn so với OpenVPN.
  • Có thể bị mở khóa bởi NSA.
  • Có thể có vấn đề nếu được sử dụng với các tường lửa.
  • Khả năng NSA đã cố tình làm suy yếu giao thức.


OpenVPN

OpenVPN là một dạng VPN mã nguồn mở khá mới hiện nay sử dụng giao thức SSLv3/TLSv1 và OpenSSL library kết hợp với các công nghệ khác. Protocol này có độ tùy chỉnh cao và chạy tốt nhất trên cổng UDP port nhưng vẫn có thể cấu hình để chạy trên các cổng khác.

Một ưu điểm nổi bật của giao thức này là nó sử dụng OpenSSL library hỗ trợ nhiều thuật toán mã hóa như 3DES, AES, Camellia, Blowfish, CAST-128 và nhiều nữa trong đó Blowfish, ES là sử dụng rộng rãi bởi các nhà cung cấp VPN. OpenVPN sử dụng chuẩn mã hóa 128-bit Blowfish được đánh giá là bảo mật nhưng vẫn có một số điểm yếu.

Khi nói về các thuật toán mã hóa, AES là mới nhất và được xem là tiêu chuẩn "vàng" do được biết đến như là không có điểm yếu nào. Do đó, giao thức này được chính phủ và các cơ quan chính phủ Mỹ sử dụng để bảo vệ các dữ liệu mật. Nó cũng có thể xử lý file dung lượng lớn tốt hơn Blowfish nhờ vào khả năng hỗ trợ gói 128-bit so với 64-bit của Blowfish. Tuy vậy, cả hai đều là các thuật toán mã hóa được công nhận NIST và được biết là không có nhiều lổ hổng. Tuy nhiên, vẫn có một số vấn đề mà không được công khai nhiều mà chúng tôi sẽ đề cập tiếp theo dưới đây.

Đầu tiên, tốc độ của OpenVPN phụ thuộc vào thuật toán mã hóa mà nó sử dụng nhưng thông thường nhanh hơn IPsec. Mặc dù OpenVPN được mặc định trong nhiều dịch vụ VPN nhưng lại không được hỗ trợ ở bất kỳ hệ điều hành nào. Một số phần mềm thứ 3 hỗ trợ cho cả Android và iOS.

Về thiết lập, thật không dễ để so sánh OpenVPN với L2TP/IPsec và PPTP, khi mà có khá nhiều dạng phần mềm OpenVPN đang được sử dụng hiện nay. Ngoài việc tải xuống, cài đặt mà thao tác cấu hình cũng cần thiết.

Tuy vậy, nếu nhận xét ở bức tranh tổng thể và với thông tin từ Edward Snowden cung cấp có vẻ như OpenVPN vẫn chưa bị giải mã hay làm yếu được bởi NSA. Khả năng miễn nhiễm trước các cuộc tấn công của NSA chủ yếu là nhờ vào các khóa tạm thời được hoán đổi. Tuy vậy, không ai lường được khả năng của NSA đến đâu nhưng với số liệu và chứng cứ cho thấy OpenVPN khi kết hợp với mật mã mạnh là VPN protocol duy nhất bảo mật hoàn toàn.

Ưu điểm

  • Khả năng vượt hầu hết các firewalls.
  • Tùy chỉnh cao.
  • Do là phần mềm mã nguồn mở nên có thể được dùng để phòng hờ.
  • Tương thích với nhiều thuật toán mã hóa.
  • Bảo mật cao.


Nhược điểm

  • Thiết lập khó hơn.
  • Cần thêm phần mềm thứ 3.
  • Phiên bản desktop thì đáng khen nhưng trên di động cần cải thiện thêm.


SSTP

Được trình làng bởi Microsoft Corporation trong phiên bản Windows Vista SP1, SSTP (secure socket tunneling) giờ còn xuất hiện trên SEIL, Linux và RouterOS nhưng chủ yếu vẫn dành cho phiên bản Windows. Sử dụng SSL v3 nên tính năng khá tương tự với OpenVPN như khả năng giảm thiệu trình trạng NAT firewall. SSTP là một VPN protocol khá ổn định và dễ dùng đặc biệt là ở hệ điều hành Windows.

Tuy nhiên, được sở hữu bởi Microsoft và gã khổng lồ này có lịch sử “bắt tay” với NSA nên độ bảo mật vẫn chưa cao.

Ưu điểm

  • Khả năng vượt hầu hết firewalls.
  • Mức độ bảo mật phụ thuộc vào thuật toán mã hóa nhưng nhìn chung là bảo mật cao.
  • Tích hợp hoàn toàn trong Window.
  • Hỗ trợ bởi Microsoft.


Nhược điểm

  • Do được sở hữu bởi Microsoft Corporation nên không thể sử dụng như phương án dự phòng.
  • Chỉ hỗ trợ hệ điều hành Windows


IKEv2

IKEv2 là viết tắt của cụm từ tiếng Anh-Internet Key Exchange Version 2 - một giao thức dựa theo công nghệ đường hầm IPsec, được phát triển bởi Cisco và Microsoft. Giao thức này hiện xuất hiện trên Windows 7 trở đi cũng như Linux và các nền tảng khác bao gồm cả Blackberry.

Giao thức này còn có tên khác là VPN Connect theo cách gọi của Microsoft Corporation. Nó có tác dụng tạo lại kết nối VPN một cách tự động khi kết nối bị ngắt tạm thời. Trên di động, IKEv2 có cái tên khác là Mobility and Multi-homing protocol là một chuẩn hóa giúp thay đổi mạng một cách dễ dàng. Ngoài ra, nó cũng khá hữu dụng với thiết bị Blackberry vì nó là số ít giao thức hỗ trợ cho nền tảng này. Mặc dù hỗ trợ ít hệ điều hành hơn nếu so với IPsec nhưng IKEv2 lại không thua kém về tính ổn định, bảo mật và hiệu suất.

Ưu điểm

  • Cực kỳ bảo mật - hỗ trợ nhiều mật mã như 3DES, AES, AES 256.
  • Hỗ trợ thiết bị Blackberry.
  • Ổn định đặc biệt khi gặp phải trình trạng rớt mạng hoặc chuyển mạng.
  • Thiết lập dễ dàng ít nhất là cho người dùng cuối.
  • Nhanh hơn so với L2TP, PPTP and SSTP.


Nhược điểm

  • Không hỗ trợ nhiều hệ điều hành.
  • Cổng UDP 500 dễ bị chặn nếu so với các giải pháp SSL như SSTP hay OpenVPN.
  • Không phải là giải pháp mã nguồn mở.
  • Ở tại máy chủ việc thiết lập IKEv2 khá rắc rối có thể kéo theo một số vấn đề tiềm ẩn.


Tìm hiểu về VPN Aaeaaq10

Lưu ý

Để hiểu về mã hóa, bạn phải nắm rõ một số khái niệm quan trọng mà chúng tôi sẽ đề cập dưới đây.

Độ dài khóa mã hóa

Cách thô nhất để xác định mất bao lâu để bẻ khóa được một mật mã là dựa vào độ dài của nó - tức là số lượng số 0 và 1. Dựa trên hình thức này, các kiểu dò khóa thô (còn gọi là dò ép bức) là kiểu tấn công thô nhất, hoạt động bằng cách thử tất cả các cách ghép có thể cho tới khi thành công. Hầu hết các nhà cung cấp VPN đều sử dụng khóa 128-bits và 256-bits. Các cấp độ cao được sử dụng để xác thực dữ liệu và handshaking, nhưng điều đó có nghĩa là mã hóa 256-bits thì tốt hơn so với 128-bits?

Để cho cầu trả lời chính xác hãy đặt các con số lên bàn cân:


  • Để bẻ khóa được mã 128-bits, máy tính cần tới 3.4×1038 bước tính toán.
  • Để bẻ khóa được mã 256-bits, máy tính cần tới 2128 thời gian so với thời lượng cần cho mã 128-bit.
  • Tấn công kiểu ép bứt mã 256-bits cần tới 3.31 x 1065 bước tính toán tương đương tổng số nguyên tử phóng xạ toàn vũ trụ.


Lấy minh họa, máy tính Fujitsu K, siêu máy tính nhanh nhất thế giới 2011 có tốc độ Rmax lên tới 10.51 petaflops thì cũng phải mất tới hơn 1 tỷ năm để bẻ khóa mã 128-bits AES bằng hình thức tấn công ép bức.

NUDT Tianhe-2, siêu máy tính mạnh nhất thế giới 2013 trên thế giới có tốc độ lên tới 33.86 petaflops, gấp 3 lần chiếc Fujitsu K, và nó cũng mất 1/3 của tỷ năm để bẻ khóa 128-bits AES key.

Trước khi sự kiện Edward Snowden thì thế giới vẫn tin rằng mã hóa 128-bits là không thể bẻ khóa bằng hình thức áp bức (by force) được và nó sẽ vẫn như vậy trong trăm năm tới. Tuy vậy, với những tài lực mà NSA có trong tay, không ít các chuyên gia và quản trị mạng đã nâng cấp độ dài khóa mã hóa. Điều cần lưu ý là chính phủ Mỹ hiện đang dùng mã hóa 256-bit để bảo vệ các dữ liệu nhạy cảm (mã hóa 128-bits dùng cho các nhu cầu mã hóa hằng ngày). Với phương thức nào được dùng đi nữa như AES, cũng nảy sinh ra một số vấn đề.

Mật mã

Mật mã thực chất là các thuật toán đại số được sử dụng trong mã hóa nhằm tăng sức mạnh khi các thuật toán thông thường khá yếu và dễ bị khai thác bởi hacker. Có thể nói, Blowfish và AES là hai mật mã thông dụng được sử dụng ở các phần mềm VPN hiện nay. Ngoài ra, RSA được dùng để má hóa và giải mã các mật mã trong khi SHA-1 và SHA-2 được dùng để xác thực dữ liệu dưới dạng dấu #.

Tuy nhiên, AES được cho là mật mã bảo mật nhất cho VPN ngay cả chính phủ Mỹ cũng sử dụng phương thức này. Tuy nhiên, cũng có lý do cho thấy lòng tin vào phương thức này đã không đặt đúng chỗ.

Trước khi kết thúc bài viết này, có một điều mà các bạn nên làm theo là nghe theo lời của Edward Snowden, là mã hóa vẫn còn được việc và các hệ thống mã hóa cần phải được áp dụng để tăng cường tính bảo mật. Do đó, bạn học được gì từ bài viết này? Đơn gian thôi! OpenVPN là protocol bảo mật nhất hiện có và các nhà cung cấp VPN vẫn luôn cải tiến các biện pháp phòng vệ bảo mật của họ. Thật tuyệt vời hơn nữa với các nhà cung cấp này cũng từ bỏ tiêu chuẩn NIST nhưng có 1 số điều mà chúng tôi vẫn cần nhắc bạn nhớ:


  • PPTP là giao thức kém bảo mật nhất. Không những bị bẻ khóa bởi NSA mà Microsoft cũng đã bỏ giao thức này. Đó là lý do mà chúng tôi khuyên người dùng không dùng tới PPTP mặc dù khả năng tương thích với nhiều hệ điều hành. Hơn nữa, các ưu điểm này vẫn được hỗ trợ ở giao thức bảo mật hơn như L2TP/IPsec.

  • Với các mục đích sử dụng không quan trọng, L2TP/IPsec là giải pháp phù hợp mặc dù đã bị làm yếu và có thể bẻ khóa bởi NSA. Với khả năng thiết lập VPN nhanh mà không cần tới phần mềm thứ 3, L2TP/IPsec vẫn nên được cân nhắc đặc biệt là ở các thiết bị di động thiếu vắng hỗ trợ chuẩn OpenVPN.

  • Sẽ cần tới các phần mềm thứ 3 để cài đặt được ở các hệ điều hành. OpenVPN không thể tranh cãi là VPN tốt nhất phù hợp với mọi nhu cầu. Nhanh, bảo mật, đáng tin cậy mặc dù thiết lập sẽ mất chút thời gian hơn nhưng đây là phần mềm có tính bảo mật và bảo vệ sự riêng tư tốt nhất cho người dùng mà chúng tôi nhận thấy.

  • IKEv2 cũng là giao thức có tốc độ nhanh và bảo mật nếu dùng kèm với các giải pháp mã nguồn mở đặc biệt là tính năng tự động kết nối lại khi kết nối bị ngắt ở các thiết bị di động. Ngoài ra, nó cũng là một trong số ít giao thức VPN hỗ trợ thiết bị Blackberry.

  • SSTP có những tính năng khá tương đồng với OpenVPN tuy nhiên chỉ hỗ trợ mỗi Windows. Do đó, khả năng tương thích với Windows ở giao thức này là khá lớn so với các giao thức VPN còn lại. Tuy nhiên, đây cũng là giới hạn mà nhiều nhà cung cấp VPN không hỗ trợ nhiều giao thức này. Ngoài ra, với lịch sử liên quan mật thiết với NSA của Microsoft, SSTP là một giao thức không còn đáng tín cậy đối với chúng tôi.


Tìm hiểu về VPN Protoc10

Tóm lại, hãy dùng OpenVPN mỗi khi có thể, trên thiết bị di động có thêm lựa chọn là IKEv2, về tốc độ hãy chọn L2TP trong khi OpenVPN đang tiếp cận tốt các thiết bị di động, chúng tôi khuyến nghị giao thức này trên cả.

Nguồn vpnMentor
      
DuyHung
DuyHung Xuất sắc

Cấp bậc: Xuất sắc

Giới tính : Nam

Bài viết : 1260

Danh vọng : 2272

Uy tín : 32

DrayTek VPN: Giải pháp nối mạng LAN giữa các chi nhánh - văn phòng

Mạng riêng ảo VPN sử dụng hạ tầng Internet hiện hữu để tạo ra kết nối mạng độc lập và cực kỳ an toàn giữa các chi nhánh, văn phòng thay vì phải triển khai kênh riêng (leased line) vốn đòi hỏi chi phí cao.

Tìm hiểu về VPN Image3-9

VPN cho phép các máy tính ở vị trí địa lý khác nhau có thể kết nối, chia sẻ dữ liệu như trong mạng LAN nội bộ. Các gói dữ liệu truyền qua môi trường Internet được mã hóa nhằm đảm bảo an toàn cũng như bảo mật thông tin.

Kết nối VPN

Về cơ bản có 2 cách thức kết nối VPN:

- Truy cập từ xa Remote Dial-in User: ứng dụng cho nhân viên làm việc từ xa, đi công tác cần truy cập, truyền tải dữ liệu về văn phòng, trụ sở

- Kết nối LAN to LAN: doanh nghiệp có chuỗi cửa hàng, chi nhánh, văn phòng cần trao đổi dữ liệu liên tục, ổn định về trụ sở chính hoặc giữa các văn phòng với nhau.

Ưu điểm VPN

Tiết kiệm chi phí hạ tầng

VPN giúp doanh nghiệp tiết kiệm đáng kể chi phí đầu tư hạ tầng mạng vì sử dụng ngay môi trường Internet hiện hữu truyền tải dữ liệu, tạo kênh kết nối riêng. Xét về mặt chi phí điều này hợp lý hơn so với việc thuê kênh kết nối riêng giá thành cao, đặc biệt với các doanh nghiệp có hệ thống chuỗi cửa hàng, chi nhánh. Ngoài ra, doanh nghiệp giảm việc đầu tư phần mềm, phần cứng chuyên dụng hỗ trợ quá trình kết nối và xác thực tài khoản, với bộ định tuyến DrayTek tích hợp sẵn chức năng VPN rõ ràng đem lại lợi ích hơn hẳn.

Tìm hiểu về VPN Image4-5
VPN sử dụng môi trường mạng Internet tạo kênh kết nối riêng.


Dễ dàng mở rộng hệ thống

Bộ định tuyến DrayTek tích hợp VPN cho phép doanh nghiệp dễ dàng mở rộng hệ thống mạng, chia sẻ dữ liệu dù ở bất kỳ vị trí địa lý nào. Chỉ với một thiết bị, vừa là bộ định tuyến mạng đa WAN, vừa là máy chủ VPN Server, quản trị viên đơn giản cấu hình thông số, lắp đặt và sử dụng.

Rút ngắn thời gian khắc phục sự cố

Quản lý tập trung VPN đang trở thành xu hướng tất yếu khi xây dựng hệ thống mạng. Với nhiều thiết bị, ở vị trí địa lý khác nhau, quản lý tập trung cho phép quản trị viên nhanh chóng xác định và cô lập sự cố, giảm tối đa ảnh hưởng đến hoạt động thông suốt của toàn hệ thống. Sê-ri bộ định tuyến DrayTek tích hợp VPN Vigor2912,
[url=http://www.pcworld.com.vn/tags/?kw=DrayTek Vigor2925]Vigor2925[/url],  Vigor2952, Vigor2960, Vigor3220, Vigor3900 được thiết kế làm việc hiệu quả cùng nhau giúp công tác bảo trì, hỗ trợ kỹ thuật cũng như khắc phục sự cố trở nên dễ hơn bao giờ.

Linh hoạt theo qui mô doanh nghiệp

Sự linh hoạt ở đây không chỉ trong quá trình vận hành mà còn thực sự mềm dẻo đối với yêu cầu sử dụng. Nhân viên làm việc từ xa, nhân viên đi công tác, dù ở bất cứ đâu chỉ cần Internet là có thể tạo kênh kết nối riêng bảo mật về văn phòng, trụ sở. VPN đem đến trải nghiệm hoàn toàn mới về cách thức giao tiếp và chia sẻ dữ liệu an toàn.

Ứng dụng VPN

Trước tiên tham khảo một số tình huống mà doanh nghiệp có thể gặp phải:

- Doanh nghiệp có chuỗi cửa hàng, chi nhánh tại các tỉnh thành. Thông thường, giám đốc điều hành (CEO) muốn xem số liệu phải chờ cuối mỗi ngày dữ liệu từ các cửa hàng, chi nhánh đổ về, vì vậy việc phân tích và đưa ra các quyết định không theo kịp thay đổi hằng ngày của thị trường. CEO từng nghĩ đến kênh thuê riêng leased line nhưng nhận thấy chi phí vận hành khá cao.

Tìm hiểu về VPN Image5-9
VPN giúp hệ thống chuỗi cửa hàng, chi nhánh kết nối và chia sẻ dữ liệu nhanh chóng.

- Nhà máy, trạm quan trắc với các bộ điều khiển (cảm biến áp suất, lưu lượng, nhiệt độ,…) luôn yêu cầu truyền tải dữ liệu về trung tâm điều hành theo thời gian thực. Vấn đề đặt ra cách thức giao tiếp và truyền tải như thế nào để đảm bảo qui chuẩn kết nối, thời gian cũng như chi phí hợp lý.

Tìm hiểu về VPN Image6-2
Kết nối đa điểm, tạo kênh riêng VPN truyền tải dữ liệu từ các bộ điều khiển (cảm biến áp suất, lưu lượng, nhiệt độ) về trung tâm điều hành

- Chuỗi cung ứng, logistics với hệ thống kho bãi rộng khắp, yêu cầu đặt ra đảm bảo kết nối đa WAN, dự phòng đường truyền, truy cập dữ liệu máy chủ ERP ổn định, liên tục với kênh riêng; nhân viên làm việc từ xa dễ dàng kết nối, truyền tải dữ liệu an toàn về văn phòng, trụ sở.

Tìm hiểu về VPN Image7
VPN cho phép doanh nghiệp dễ dàng mở rộng hệ thống mạng, chia sẻ dữ liệu dù ở bất kỳ vị trí địa lý nào

Các tình huống đặt ra kể trên cho thấy kênh kết nối riêng VPN đang trở thành nhu cầu thiết yếu trong hoạt động của doanh nghiệp. Với xu hướng phát triển chuỗi cửa hàng, chi nhánh, kho vận, bộ định tuyến mạng DrayTek tích hợp VPN giúp doanh nghiệp nhanh chóng triển khai hoạt động kinh doanh qua khả năng kết nối mạng, truy cập số liệu dù ở bất kỳ vị trí địa lý với chi phí vận hành hợp lý.

Bộ định tuyến DrayTek tích hợp VPN đáp ứng các yêu cầu:

  • Trao đổi dữ liệu giữa các cửa hàng, văn phòng, chi nhánh, trụ sở.
  • Kết nối an toàn giữa nhân viên làm việc từ xa, nhân viên đi công tác với chi nhánh, trụ sở.
  • Kết nối dữ liệu từ các bộ điều khiển (cảm biến áp suất, lưu lượng, nhiệt độ,…) về trung tâm điều hành.
  • Truyền tải dữ liệu từ các máy bán hàng tự động POS về văn phòng, trụ sở.

 
Hồng Nhân
      
DuyHung
DuyHung Xuất sắc

Cấp bậc: Xuất sắc

Giới tính : Nam

Bài viết : 1260

Danh vọng : 2272

Uy tín : 32

Các công nghệ và giao thức hỗ trợ VPN

Đường hầm và mã hoá

Chức năng chính của một mạng VPN là truyền thông tin đã được mã hoá trong một đường hầm dựa trên hạ tầng mạng được chia sẻ

Đường hầm

Đường hầm là một khái niệm quan trọng của mạng VPN, nó cho phép các công ty có thể tạo ra các mạng ảo dựa trên hệ thống mạng công cộng. Mạng ảo này không cho phép những người không có quyền truy cập vào. Đường hầm cung cấp một kết nối logic điểm đến điểm trên hệ thống mạng Internet hay trên các mạng công cộng khác. Để dữ liệu được truyền an toàn trên mạng, một giải pháp được đưa ra là mã hoá dữ liệu trước khi truyền. Dữ liệu truyền trong đường hầm chỉ có thể được đọc bởi người nhận và người gửi. Đường hầm tạo cho VPN có tính chất riêng tư trên mạng.

Để mô tả chi tiết nguyên lý khi gói tin truyền qua đường hầm ta nghiên cứu một loại đường hầm điển hình là GRE. Đây cũng là giao thức tạo đường hầm được sử dụng trong PPTP là giao thức tạo kết nối VPN Peer to Peer và Remote Access rất phổ biến của Microsoft.

Microsoft sử dụng dịch vụ RRA (Routing and Remote Access) để định tuyến giữa các LAN như hình sau:

Tìm hiểu về VPN 1556210

Định dạng gói tin GRE, đây cũng là giao thức Microsoft dùng để đóng gói dữ liệu như sau:

Tìm hiểu về VPN 1556110

Dữ liệu từ Client đưa đến VPN Getway được đóng gói bởi giao thức PPP (Point - to - Point Protocol) với một PPP Header. Sau đó gói tin được đóng gói bởi GRE với một GRE Header và được truyền trong đường hầm. Tại đầu bên kia của đường hầm, gói tin được giải phóng khỏi GRE Header và PPP Header sau đó được vận chuyển đến đích. Các Header của mỗi gói tin được thể hiện trong hình sau:

Tìm hiểu về VPN 1556310

Một ví dụ về đường hầm GRE sau khi được thiết lập trong mô hình Site - to - Site:

Tìm hiểu về VPN 1556010

Mã hoá

Mã hoá là một đặc điểm cơ bản trong việc xây dựng và thiết kế mạng VPN. Mạng VPN sử dụng hạ tầng của hệ thống Internet và các mạng công cộng khác. Do vậy dữ liệu truyền trên mạng có thể bị bắt giữ và xem thông tin. Để đảm bảo thông tin chỉ được đọc bởi người nhận và người gửi thì dữ liệu phải được mã hoá với các thuật toán phức tạp. Tuy nhiên chỉ nên mã hoá các thông tin quan trọng vì quá trình mã hoá và giản mã sẽ ảnh hưởng đến tốc độ truyền tải thông tin.

Các nhà cung cấp dịch vụ VPN chia VPN thành 3 tập hợp đó là VPN lớp 1, 2 và 3.

VPN lớp 1 được sử dụng để vận chuyển các dịch vụ lớp 1 trên hạ tầng mạng được chia sẻ, được điều khiển và quản lý bởi Generalized Multiprotocol Label Switching (GMPLS).

Hiện nay, việc phát triển VPN lớp 1 còn đang trong giai đoạn thử nghiệm nên VPN Layer 1 không được đề cập đến trong tài liệu này.

Hiểu đơn giản nhất, một kết nối VPN giữa hai điểm trên mạng công cộng là hình thức thiết lập một kết nối logic. Kết nối logic có thể được thiết lập trên lớp 2 hoặc lớp 3 của mô hình OSI và công nghệ VPN có thể được phân loại rộng rãi theo tiêu chuẩn này như là VPN lớp 2 và VPN lớp 3 (Layer 2 VPNs or Layer 3 VPNs).

Công nghệ VPN lớp 2

Công nghệ VPN lớp 2 thực thi tại lớp 2 của mô hình tham chiếu OSI; Các kết nối point-to-point được thiết lập giữa các site dựa trên một mạch ảo (virtual circuit). Một mạch ảo là một kết nối logic giữa 2 điểm trên một mạng và có thể mở rộng thành nhiều điểm. Một mạch ảo kết nối giữa 2 điểm đầu cuối (end-to-end) thường được gọi là một mạch vĩnh cửu (Permanent Virtual Circuit-PVC). Một mạch ảo kết nối động 2 điểm trên mạng (point to point) còn được biết đến như mạng chuyển mạch (Switched Virtual Circuit - SVC). SVC ít được sử dụng hơn vì độ phức tạp trong quá trình triển khai cũng như khắc phục hệ thống lỗi. ATM và Frame Relay là 02 công nghê VPN lớp 2 phổ biến.

Các nhà cung cấp hệ thống mạng ATM và Frame Relay có thể cung cấp các kết nối site - to - site cho các tập đoàn, công ty bằng cách cấu hình các mạch ảo vĩnh cửu (PVC) thông qua hệ thống cáp Backbone được chia sẻ.

Một sự tiện lợi của VPN lớp 2 là độc lập với các luồng dữ liệu lớp 3. Các mạng ATM và Frame Relay kết nối giữa các site có thể sử dụng rất nhiều các loại giao thức được định tuyến khác nhau như IP, IPX, AppleTalk, IP Multicast... ATM và Frame Relay còn cung cấp đặc điểm QoS (Quality of Service). Đây là điều kiện tiên quyết khi vận chuyển các luồng dữ liệu cho Voice.

Công nghệ VPN Lớp 3

Một kết nối giữa các site có thể được định nghĩa như là VPN lớp 3. Các loại VPN lớp 3 như GRE, MPLS và IPSec. Công nghệ GRE và IPSec được sử dụng để thực hiện kết nối point - to - point, công nghệ MPLS thực hiện kết nối đa điểm (any - to - any)

Đường hầm GRE

Generic routing encapsulation (GRE) được khởi xướng và phát triển bởi Cisco và sau đó được IETF xác nhận thành chuẩn RFC 1702. GRE được dùng để khởi tạo các đường hầm và có thể vận chuyển nhiều loại giao thức như IP, IPX, Apple Talk và bất kỳ các gói dữ liệu giao thức khác vào bên trong đường hầm IP. GRE không có chức năng bảo mật cấp cao nhưng có thể được bảo vệ bằng cách sử dụng cơ chế IPSec. Một đường hầm GRE giữa 2 site, ở đó IP có thể vươn tới được có thể được mô tả như là một VPN bởi vì dữ liệu riêng giữa 2 site có thể được đóng gói thành các gói tin với phần Header tuân theo chuẩn GRE.

Bởi vì mạng Internet công cộng được kết nối trên toàn thế giới. Các chi nhánh của một tập đoàn nằm trên những vùng địa lý khác nhau. Để các chi nhánh này có thể truyền dữ liệu cho nhau và cho văn phòng chính tại trung tâm thì điều kiện cần là mỗi chi nhành chỉ cần thiết lập một kết nối vật lý đến nhà cung cấp dịch vụ Internet(ISP). Thông qua mạng VPN được thiết lập sử dụng GRE Tunnel. Tất cả các dữ liệu giữa các chi nhánh sẽ trao đổi với nhau trong một đường hầm GRE. Hơn thế dữ liệu còn được bảo mật và chống lại các nguy cơ tấn công

MPLS VPNs

Công nghệ MPLS VPN xây dựng các kết nối chuyển mạch nhãn (Label Switched Path) thông qua các Router chuyển mạnh nhãn (Label Switch Routers). Các gói tin được chuyển đi dựa vào Label của mỗi gói tin. MPLS VPN có thể sử dụng các giao thức TDP (Tag Distribution Protocol), LDP (Label Ditribution Protocol) hoặc RSVP (Reservation Protocol).

Khởi xướng cho công nghệ này là Cisco, MPLS có nguồn gốc là các Tag trong mạng chuyển mạch và sau đó được IETF chuẩn hoá thành MPLS. MPLS được tạo ra thông qua các Router sử dụng cơ chế chuyển mạch nhãn (Label Switch Routers). Trong một mạng MPLS, các gói tin được chuyển mạch dựa trên nhãn của mỗi gói tin. Các nhà cung cấp dịch vụ hiện nay đang tăng cường triển khai MPLS để cung cấp dịch vụ VPN MPLS đến khách hàng.

Nguồn gốc của tất cả các công nghệ VPN là dữ liệu riêng được đóng gói và phân phối đến đích với việc gắn cho các gói tin thêm phần Header; MPLS VPN sử dụng các nhãn (Label) để đóng gói dữ liệu gốc và thực hiện truyền gói tin đến đích.
RFC 2547 định nghĩa cho dịch vụ VPN sử dụng MPLS. Một tiện ích của VPN MPLS so với các công nghệ VPN khác là nó giảm độ phức tạp để cấu hình VPN giữa các site.

Ví dụ: Công ty chúng ta có 03 chi nhánh tại 3 địa điểm khác nhau, để các site này có thể truyền dữ liệu cho nhau chúng ta thực hiện cấu hình VPN any-to-any (Full Mesh) sử dụng các công nghệ như ATM hay Frame Relay, khi đó mỗi site đòi hỏi 02 Virtual Circuit hoặc tunnel đến mỗi site khác đồng thời chúng ta phải thiết lập cấu hình đến mỗi site do vậy hệ số phức tạp của mô hình này là On với n là số site. Ngược lại, với mô hình VPN MPLS ta luôn có hệ số phức tạp là O1 dù hệ thống có đến n site khác nhau đi chăng nữa.

Thực tế cho thấy các kết nối site-to-site không tạo đường hầm point-to-point của VPN MPLS có khả năng mở rộng dễ dàng. Các kết nối any-to-any giữa các site có thể được thực hiện dễ dàng bằng công nghệ MPLS.

Tuy nhiên công nghệ này gặp phải một trở ngại đó là phụ thuộc vào cơ sở hạ tầng nhà cung cấp dịch vụ VPN MPLS. Trong khi đó công nghệ VPN GRE lại có thể được sử dụng thông qua Internet để mở rộng tầm hoạt động một cách dễ dàng mà không phụ thuộc nhà cung cấp, thêm vào đó bản thân công nghệ VPN GRE tự chính nó đã đạt được một khả năng bảo mật cơ bản với công nghệ truyền dữ liệu trong đường hầm

IPSec VPNs

Một nội dung chính mà bất kỳ ai sử dụng VPN muốn bảo mật dữ liệu khi chúng được truyền trên hệ thống mạng công cộng. Một câu hỏi được đặt ra là làm thế nào để ngăn chặn mối nguy hiểm từ việc nghe trộm dữ liệu khi chúng được truyền đi trên mạng công cộng?

Mã hoá dữ liệu là một cách để bảo vệ nó. Mã hoá dữ liệu có thể được thực hiện bằng cách triển khai các thiết bị mã hoá/giải mã tại mỗi site.

IPSec là một tập giao thức được phát triển bởi IETF để thực thi dịch vụ bảo mật trên các mạng IP chuyển mạch gói. Internet là mạng chuyển mạch gói công cộng lớn nhất. Công nghệ IPSec VPN được triển khai có một ý nghĩa quan trọng là tiết kiệm chi phí rất lớn so với mạng VPN sử dụng Leased-Line VPN.

Dịch vụ IPSec cho phép chứng thực, kiểm tra tính toàn vẹn dữ liệu, điều khiển truy cập và đảm bảo bí mật dữ liệu. Với IPSec, thông tin được trao đổi giữa các site sẽ được mã hoá và kiểm tra. IPSec có thể được triển khai cả trên hai loại VPN là Remote Access Client và Site-to-Site VPN

Giao thức PPTP(Point-to-Point Tunneling Protocol)

Đây là giao thức đường hầm phổ biến nhất hiện nay. Giao thức được phát triển bởi Microsoft.

PPTP cung cấp một phần của dịch vụ truy cập từ xa RAS(Remote Access Service). Như L2F, PPTP cho phép tạo đường hầm từ phía người dùng(Mobile User) truy cập vào VPN Getway/Concentrator

Giao thức L2F

Là giao thức lớp 2 được phát triển bởi Cisco System. L2F được thiết kế cho phép tạo đường hầm giữa NAS và một thiết bị VPN Getway để truyền các Frame, người sử dụng từ xa có thể kết nối đến NAS và truyền Frame PPP từ remote user đến VPN Getway trong đường hầm được tạo ra.

Giao thức L2TP

Tìm hiểu về VPN 1555910

Là chuẩn giao thức do IETF đề xuất, L2TP tích hợp cả hai điểm mạnh là truy nhập từ xa của L2F(Layer 2 Forwarding của Cisco System) và tính kết nối nhanh Point - to Point của PPTP(Point to Point Tunnling Protocol của Microsoft). Trong môi trường Remote Access L2TP cho phép khởi tạo đường hầm cho các frame và sử dụng giao thức PPP truyền dữ liệu trong đường hầm.
Một số ưu điểm của L2TP


  • L2TP hỗ trợ đa giao thức.
  • Không yêu cầu các phần mềm mở rộng hay sự hỗ trợ của HĐH. Vì vậy những người dùng từ xa cũng như trong mạng Intranet không cần cài thêm các phần mềm đặc biệt.
  • L2TP cho phép nhiều Mobile user truy cập vào Remote Network thông qua hệ thống mạng công cộng.
  • L2TP không có tình bảo mật cao tuy nhiên L2TP có thể kết hợp với cơ chế bảo mật IPSec để bảo vệ dữ liệu.
  • Với L2TP sự xác thực tài khoản dựa trên Host Getway Network do vậy phía nhà cung cấp dịch vụ không phải duy trì một Database để thẩm định quyền truy cập


IEEE 802.1Q tunneling (Q-in-Q)

Đường hầm 802.1Q cho phép nhà cung cấp dịch vụ tạo các đường hầm trên Ethernet sử dụng hạ tầng mạng được chia sẻ. Dữ liệu trong đường hầm 802.1Q được vận chuyển phụ thuộc vào tag 802.1Q

The Secure Sockets Layer (SSL)

SSL là giao thức bảo mật được phát triển bởi tập đoàn Netscape (SSL version 1,2 và 3). SSL cung cấp cơ chế bảo mật truy cập từ xa cho người dùng di động. Cơ chế SSL ít được triển khai hơn vì tính bảo mật của nó khi so sánh với các cơ chế khác (L2F, PPTP, L2TP, IPSec)

Giao thức Point to Point Protocol (PPP)

Đây là giao thức đóng gói để truyền dữ liệu qua kết nối Serial. Lợi thế lớn nhất của PPP là có thể hoạt động trên mọi Data Terminal Equipment (DTE) hoặc Data Connection Equipment (DCE). Một đặc điểm thuận lợi của PPP là nó không giới hạn tốc độ truy cập. PPP là sẵn sàng cho kết nối song công (Full Duplex) và là giải pháp tốt cho kết nối Dial-up.

Nguồn https://voer.edu.vn/c/cac-cong-nghe-va-giao-thuc-ho-tro-vpn/8f2b2b24/fa830073
      
DuyHung
DuyHung Xuất sắc

Cấp bậc: Xuất sắc

Giới tính : Nam

Bài viết : 1260

Danh vọng : 2272

Uy tín : 32

Hầu hết các VPN đều dựa vào kỹ thuật gọi là Tunneling để tạo ra một mạng riêng trên nền Internet. Về bản chất, đây là quá trình đặt toàn bộ gói tin vào trong một lớp header (tiêu đề) chứa thông tin định tuyến có thể truyền qua hệ thống mạng trung gian theo những “đường ống” riêng (tunnel).

Khi gói tin được truyền đến đích, chúng được tách lớp header và chuyển đến các máy trạm cuối cùng cần nhận dữ liệu. Để thiết lập kết nối Tunnel, máy khách và máy chủ phải sử dụng chung một giao thức (tunnel protocol).

Giao thức của gói tin bọc ngoài được cả mạng và hai điểm đầu cuối nhận biết. Hai điểm đầu cuối này được gọi là giao diện Tunnel (tunnel interface), nơi gói tin đi vào và đi ra trong mạng.

Theo http://vietnetwork.vn/vpn/tim-hieu-mang-rieng-ao-vpn-(phan-2)/

Kỹ thuật Tunneling yêu cầu 3 giao thức khác nhau:

- Giao thức truyền tải (Carrier Protocol) là giao thức được sử dụng bởi mạng có thông tin đang đi qua.
- Giao thức mã hóa dữ liệu (Encapsulating Protocol) là giao thức (như GRE, IPSec, L2F, PPTP, L2TP) được bọc quanh gói dữ liệu gốc.
- Giao thức gói tin (Passenger Protocol) là giao thức của dữ liệu gốc được truyền đi (như IPX, NetBeui, IP).

Người dùng có thể đặt một gói tin sử dụng giao thức không được hỗ trợ trên Internet (như NetBeui) bên trong một gói IP và gửi nó an toàn qua Internet. Hoặc, họ có thể đặt một gói tin dùng địa chỉ IP riêng (không định tuyến) bên trong một gói khác dùng địa chỉ IP chung (định tuyến) để mở rộng một mạng riêng trên Internet.

Kỹ thuật Tunneling trong mạng VPN điểm-nối điểm

Trong VPN loại này, giao thức mã hóa định tuyến GRE (Generic Routing Encapsulation) cung cấp cơ cấu “đóng gói” giao thức gói tin (Passenger Protocol) để truyền đi trên giao thức truyền tải (Carier Protocol). Nó bao gồm thông tin về loại gói tin mà bạn đnag mã hóa và thông tin về kết nối giữa máy chủ với máy khách. Nhưng IPSec trong cơ chế Tunnel, thay vì dùng GRE, đôi khi lại đóng vai trò là giao thức mã hóa. IPSec hoạt động tốt trên cả hai loại mạng VPN truy cập từ xa và điểm- nối-điểm. Tất nhiên, nó phải được hỗ trợ ở cả hai giao diện Tunnel.

Trong mô hình này, gói tin được chuyển từ một máy tính ở văn phòng chính qua máy chủ truy cập, tới router (tại đây giao thức mã hóa GRE diễn ra), qua Tunnel để tới máy tính của văn phòng từ xa.

Kỹ thuật Tunneling trong mạng VPN truy cập từ xa

Với loại VPN này, Tunneling thường dùng giao thức điểm-nối-điểm PPP (Point-to-Point Protocol). Là một phần của TCP/IP, PPP đóng vai trò truyền tải cho các giao thức IP khác khi liên hệ trên mạng giữa máy chủ và máy truy cập từ xa. Nói tóm lại, kỹ thuật Tunneling cho mạng VPN truy cập từ xa phụ thuộc vào PPP.

Các giao thức dưới đây được thiết lập dựa trên cấu trúc cơ bản của PPP và dùng trong mạng VPN truy cập từ xa.

L2F (Layer 2 Forwarding) được Cisco phát triển. L2 F dùng bất kỳ cơ chế thẩm định quyền truy cập nào được PPP hỗ trợ.

PPTP (Point-to-Point Tunneling Protocol) được tập đoàn PPTP Forum phát triển. Giao thức này hỗ trợ mã hóa 40 bit và 128 bit, dùng bất kỳ cơ chế thẩm định quyền truy cập nào được PPP hỗ trợ.

L2TP (Layer 2 Tunneling Protocol) là sản phẩm của sự hợp tác giữa các thành viên PPTP Forum, Cisco và IETF. Kết hợp các tính năng của cả PPTP và L2F, L2TP cũng hỗ trợ đầy đủ IPSec. L2TP có thể được sử dụng làm giao thức Tunneling cho mạng VPN điểm-nối-điểm và VPN truy cập từ xa. Trên thực tế, L2TP có thể tạo ra một tunnel giữa máy khách và router, NAS và router, router và router. So với PPTP thì L2TP có nhiều đặc tính mạnh và an toàn hơn.
      
DuyHung
DuyHung Xuất sắc

Cấp bậc: Xuất sắc

Giới tính : Nam

Bài viết : 1260

Danh vọng : 2272

Uy tín : 32

Một mạng riêng ảo (Virtual Private Network) là sự mở rộng của mạng nội bộ bằng cách kết hợp thêm với các kết nối thông qua các mạng chia sẻ hoặc mạng công cộng như Internet.

Tính bảo mật trong VPN đạt được thông qua "đường hầm" (tunneling) bằng cách đóng gói thông tin trong một gói IP khi truyền qua Internet. Thông tin sẽ được giải mã tại đích đến bằng cách loại bỏ gói IP để lấy ra thông tin ban đầu.

Có bốn giao thức đường hầm (tunneling protocols) phổ biến thường được sử dụng trong VPN, mỗi một trong chúng có ưu điểm và nhược điểm riêng. Chúng ta sẽ xem xét và so sánh chúng dựa trên mục đích sử dụng.

Internet Protocol Security (IPSec)
Point-to-Point Tunneling Protocol (PPTP)
Layer2 Tunneling Protocol (L2TP)
Secure Socket Layer (SSL)

PPTP

PPTP-Giao thức Point-to-Point Tunneling là sự mở rộng của giao thức Internet chuẩn Point-to-Point (PPP) và sử dụng cùng kiểu xác thực như PPP (PAP, SPAP, CHAP, MS-CHAP, EAP). Là phương pháp VPN được hỗ trợ rộng rãi nhất giữa các máy trạm chạy Windows. PPTP thiết lập đường hầm (tunnel) nhưng không mã hóa. Ưu điểm khi sử dụng PPTP là nó không yêu cầu hạ tầng mã khóa công cộng (Public Key Infrastructure).

L2TP

Giao thức Layer 2 Tunneling Protocol (L2TP) kết hợp các đặc điểm của cả PPTP và giao thức Layer 2 Forwarding (L2F). Một trong các ưu việt của L2TP so với PPTP là có có thể sử dụng trên các mạng ATM, frame relay và X.25. Giống như PPTP, L2TP hoạt động tại lớp liên kết dữ liệu (data link layer) của mô hình mạng OSI.

L2TP yêu cầu sử dụng chứng chỉ số (digital certificates). Xác thực người dùng có thể được thực hiện thông qua cùng cơ chế xác thực PPP tương tự như PPTP.

L2TP có một vài ưu điểm so với PPTP. PPTP cho bạn khả năng bảo mật dữ liệu, nhưng L2TP còn tiến xa hơn khi cung cấp thêm khả năng đảm bảo tính toàn vẹn dữ liệu (bảo vệ chống lại việc sửa đổi dữ liệu trong khoảng thời gian nó di chuyển từ người gửi đến người nhận, khả năng xác thực nguồn gốc (xác định người dùng đã gửi dữ liệu có thực sự đúng người), và khả năng bảo vệ chống gửi lại – replay protection (chống lại việc hacker chặn dữ liệu đã được gửi, ví dụ thông tin quyền đăng nhập (credentials), rồi sau đó gửi lại (replay) chính thông tin đó để bẫy máy chủ. Mặt khác, do liên quan đến cung cấp các khả năng bảo mật mở rộng làm cho L2TP chạy chậm hơn chút ít so với PPTP.

IPSec

IPsec được tích hợp trong rất nhiều giải pháp VPN "tiêu chuẩn", đặc biệt trong các giải pháp VPN gateway-to-gateway (site-to-site) để nối 2 mạng LAN với nhau. IPsec hoạt động tại network layer (Layer 3) trong mô hình OSI.

IPSec trong chế độ đường hầm bảo mật các gói tin trao đổi giữa hai gateway hoặc giữa máy tính trạm và gateway. Như tên của nó, IPsec chỉ hoạt động với các mạng và ứng dụng dựa trên nền tảng IP (IP-based network). Giống như PPTP và L2TP, IPsec yêu cầu các máy tính trạm VPN phải được cài đặt sẵn phần mềm VPN client.

Việc xác thực được thực hiện thông qua giao thức Internet Key Exchange (IKE) hoặc với chứng chỉ số (digital certificates) đây là phương thức bảo mật hơn hoặc thông qua khóa mã chia sẻ (preshared key). IPSec VPN có thể bảo vệ chống lại hầu hết các phương pháp tấn công thông dụng bao gồm Denial of Service (DoS), replay, và "man-in-the-middle".

Rất nhiều nhà cung cấp đã tích hợp đặc tính "quản lý máy khách" trong các phần mềm máy khách VPN của họ, cho phép thiết lập các chính sách truy cập liên quan ví dụ như yêu cầu máy khách phải được cài đặt phần mềm chống virus hoặc cài đặt phần mềm tường lửa cá nhân như là điều kiện để cho phép truy cập vào VPN gateway.

SSL

Một công nghệ VPN đang phát triển nhanh chóng và trở nên phổ biến là Secure Sockets Layer (SSL) VPN. SSL VPN còn được gọi là giải pháp "clientless". Điều này cũng có nghĩa là các giao thức có thể được xử lý bởi SSL VPN sẽ bị hạn chế nhiều hơn. Dù sao, điều này cũng đem lại một lợi thế về bảo mật. Với SSL VPN, thay vì cho phép VPN client truy xuất vào toàn bộ mạng hoặc một mạng con (subnet) như với IPsec, có thể hạn chế chỉ cho phép truy xuất tới một số ứng dụng cụ thể. Nếu một ứng dụng mà bạn muốn họ truy cập không phải là là loại ứng dụng dựa trên trình duyệt (browser-based), thì cần phải tạo ra một plug-ins Java hoặc Active-X để làm cho ứng dụng đó có thể truy xuất được qua trình duyệt.

SSL VPN hoạt động ở session layer – cao hơn IPsec trong mô hình OSI. Điều này cho nó khả năng điều khiển truy cập theo khối tốt hơn. SSL VPN sử dụng chứng chỉ số (digital certificates) để xác thực server. Mặc dù các phương pháp khác cũng có thể áp dụng, nhưng sử dụng chứng chỉ số được ưa chuộng vì khả năng bảo mật cao nhất.

Dù cho không cần phần mềm VPN client trên máy khách (ngoại trừ trình duyệt Web), SSL VPN gateways vẫn có thể cung cấp các tiện ích "quản lý máy khách " bằng cách buộc trình duyệt phải chạy các applets, ví dụ để kiểm tra xem đã có phần mềm anti-virus hoạt động hay chưa trước khi kết nối VPN được thiết lập.

Kết luận

Bốn công nghệ VPN phổ biến nhất được sử dụng là PPTP, L2TP, IPSec and SSL. Mỗi một trong chúng đều có ưu và nhược điểm riêng, do vậy điều quan trọng là bạn phải làm quen với các đặc điểm của từng loại, rồi kết hợp với nhu cầu của người dùng để ra quyết định lựa chọn.

Theo http://www.netone.vn/trangchu/hotrokythuat/kienthuccanban/tabid/366/arid/1137/default.aspx
      
DuyHung
DuyHung Xuất sắc

Cấp bậc: Xuất sắc

Giới tính : Nam

Bài viết : 1260

Danh vọng : 2272

Uy tín : 32

Tổng quan về mạng riêng ảo (VPN)

1. Định nghĩa về VPN

Mạng riêng ảo, có tên tiếng Anh là Virtual Private Network, viết tắt là VPN. Theo VPN Consortium, VPN là mạng sử dụng mạng công cộng làm cơ sở hạ tầng để truyền thông tin nhưng vẫn đảm bảo là một mạng riêng và kiểm soát được truy nhập. Nói cách khác, VPN được định nghĩa là liên kết của khách hàng được triển khai trên một hạ tầng công cộng với các chính sách như là trong một mạng riêng. Hạ tầng công cộng này có thể là mạng IP, Frame Relay, ATM hay Internet.

Tìm hiểu về VPN Vpn110

Hình 1: Mô hình mạng riêng ảo (VPN)

2. Lợi ích khi sử dụng mạng riêng ảo

- Bảo mật các giao dịch: VPN dùng công nghệ đường hầm để truyền dữ liệu qua mạng công cộng không an toàn. Dữ liệu đang truyền được bảo mật ở một mức độ nhất định, Thêm vào đó, công nghệ đường hầm sử dụng các biện pháp bảo mật như: mã hoá, xác thực và cấp quyền để bảo đảm an toàn, tính tin cậy, tính xác thực của dữ liệu được truyền; kết quả là VPN mang lại mức độ bảo mật cao cho việc truyền tin.

- Sử dụng hiệu quả băng thông: Trong kết nối Internet dựa trên đường Lease-Line, băng thông hoàn toàn không được sử dụng trong một kết nối Internet không hoạt động. Các VPN, chỉ tạo các đường hầm logic đề truyền dữ liệu khi được yêu cầu, kết quả là băng thông mạng chỉ được sử dụng khi có một kết nối Internet hoạt động. Vì vậy làm giảm đáng kể nguy cơ lãng phí băng thông mạng.

- Giảm chi phí thực thi: Việc sử dụng một VPN sẽ giúp các tổ chức giảm được chi phí đầu tư và chi phí thường xuyên. Tổng giá thành của việc sở hữu một mạng VPN sẽ được thu nhỏ, do chỉ phải trả ít hơn cho việc thuê băng thông đường truyền, các thiết bị mạng đường trục và duy trì hoạt động của hệ thống. Giá thành cho việc kết nối LAN-to-LAN giảm từ 20 tới 30% so với việc sử dụng đường thuê riêng truyền thống. Còn đối với việc truy cập từ xa giảm từ 60 tới 80%.

- Nâng cao khả năng kết nối: VPN tận dụng Internet để kết nối giữa các phần tử ở xa của một Intranet. Vì Internet có thể được truy cập toàn cầu, nên hầu hết các nhánh văn phòng, người dùng di động từ xa đều có thể dễ dàng kết nối tới Intranet của tổ chức của mình.

- Nâng cao khả năng mở rộng: Vì VPN dựa trên Internet, nên cho phép Intranet của một cơ quan có thể mở rộng và phát triển khi yêu cầu cần phải thay đổi với phí tổn tối thiểu cho việc thêm các phương tiện, thiết bị. Điều này làm cho Intranet dựa trên VPN có khả năng mở rộng cao và dễ dàng tương thích với sự phát triển trong tương lai.

Trên đây là một số lợi ích cơ bản mà giải pháp VPN mang lại. Tuy nhiên bên cạnh đó, nó cũng không tránh khỏi một số bất lợi như: Phụ thuộc nhiều vào Internet. Sự thực thi của một mạng dựa trên VPN phụ thuộc nhiều vào sự thực thi của Internet.

3. Kiến trúc của VPN

Một hệ thống VPN được xây dựng lên bởi 2 thành phần chính là (Tunneling) đường hầm kết nối và (Secure services) các dịch vụ bảo mật cho kết nối đó. Tunneling chính là thành phần “Virtual” và Sercure services là thành phần “Private” của một mạng riêng ảo VPN (Virtual Private Network).

a) Đường hầm (Tunneling)

Khác với việc thuê một đường truyền riêng các kết nối bằng việc sử dụng cách tạo đường hầm không liên tục, mà chỉ được xác lập khi có yêu cầu kết nối. Do vậy khi không còn được sử dụng các kết nối này sẽ được huỷ, giải phóng băng thông, tài nguyên mạng cho các yêu cầu khác. Điều này cho thấy một ưu điểm rất lớn của VPN so với việc thuê đường truyền riêng đó là sự linh hoạt.

Cấu trúc logic của mạng được thiết lập dành cho thiết bị mạng tương ứng của mạng đó mà không cần quan tâm đến hạ tầng mạng hiện có là một đặc điểm “ảo” khác của VPN. Các thiết bị phần cứng của mạng đều trở nên tàng hình với người dùng và thiết bị của mạng VPN. Chính vì thế trong quá trình tạo ra đường hầm, những kết nối hình thành nên mạng riêng ảo không có cùng tính chất vật lý với những kết nối cố định trong mạng Lan thông thường.

Tạo đường hầm chính là hình thành 2 kết nối đặc biệt giữa hai điểm cuối trên mạng. Các gói tin IP trước khi chuyển đi phải được đóng gói, mã hoá gói tin gốc và thêm IP header mới. Sau đó các gói tin sẽ được giải mã, tách bỏ phần tiêu đề tại gateway của điểm đến, trước khi được chuyển đến điểm đến đầu cuối.

Đường hầm kết nối khiến việc định tuyến trở nên dễ dàng hơn, hoàn toàn trong suốt với người sử dụng. Có hai loại đường hầm kết nối thường trực và tạm thời. Tính hiệu quả và tối ưu của một đường hầm kết nối thường trực là không cao. Do đó đường hầm tạm thời thường được sử dụng hơn vì tính linh động và hữu dụng hơn cho VPN.

Có 2 kiểu kết nối hình thành giữa hai đầu kết nối của mỗi đường hầm là Lan - to - Lan và Client - to - Lan.

  • (i) Lan - to - Lan

    Kết nối Lan - to - Lan được hình thành giữa 2 văn phòng chi nhánh hoặc chi nhánh với công ty. Các nhân viên tại những văn phòng và chi nhánh đều có thể sử dụng đường hầm để trao đổi dữ liệu.

  • (ii) Client - to - Lan

    Kiểu kết nối Client to Lan dành cho các kết nối di động của các nhân viên ở xa đến công ty hay chi nhánh. Để thực hiện được điều này, các máy client phải chạy một phần mềm đặc biệt cho phép kết nối với gateway của công ty hay chin nhánh. Khi kết nối này được thực hiện thì đã xác lập một đường hầm kết nối giữa công ty và nhân viên ở xa.


b) Dịch vụ bảo mật (secure services)

Nếu chỉ thực hiện tạo ra một đường hầm kết nối đến chi nhánh hay nhân viên ở xa mà không hề có cơ chế bảo vệ cho các dữ liệu di chuyển trên nó thì cũng như việc các ngân hàng chuyển tiền mà không có lực lượng bảo vệ vậy. Tất cả các dữ liệu sẽ không được bảo vệ, hoàn toàn có thể bị đánh cắp, thay đổi trên quá trình vận chuyển một cách dễ dàng. Chính vì vậy các cơ chế bảo mật cho VPN chính là xương sống của giải pháp này.

Một mạng VPN cần cung cấp 4 chức năng bảo mật cho dữ liệu:

• Xác thực (Authentication): Đảm bảo dữ liệu đến từ một nguồn quy định.
• Điều khiển truy cập (Access control): Hạn chế quyền từ những người dùng bất hợp pháp.
• Tin cậy (Confidentiality): Ngăn chặn việc theo dõi hay sao chép dữ liệu trong quá trình vận chuyển trên mạng.
• Tính toàn vẹn (Data integrity): Đảm bảo dữ liệu không bị thay đổi, được bảo toàn từ đầu gửi đến đầu nhận.

Các dịch vụ bảo mật trên được cung cấp tại lớp 2 (Data link) và lớp 3 (Network) trong mô hình 7 lớp OSI. Các dịch vụ bảo mật đều được triển khai tại các lớp thấp của mô hình OSI làm giảm sự tác động đến người dùng. Việc bảo mật có thể thực hiện tại các đầu cuối (end to end) hoặc giữa các nút (node to node).

Bảo mật tại các điểm đầu cuối là hình thức bảo mật có được độ tin cậy cao, ví dụ như tại 2 máy tính đầu cuối. Tuy vậy nhưng hình thức bảo mật đầu cuối hay Client to Client lại có nhược điểm làm tăng sự phức tạp cho người dùng, khó khăn cho việc quản lý.

Trái với bảo mật điểm đầu cuối, bảo mật tại các nút thân thiện hơn với người dùng cuối. Giảm số tác vụ có thể làm chậm hệ thống máy tính như mã hoá hay giải mã. Tuy nhiên việc bảo mật tại các nút lại yêu cầu mạng sau nó phải có độ tin cậy cao. Mỗi hình thức bảo mật đều có ưu điểm riêng, tuỳ theo từng yêu cầu của hệ thống cần xây dựng mà chọn hình thức phù hợp.

4. Mô hình mạng riêng ảo thông dụng

Mục tiêu của công nghệ VPN là quan tâm đến 3 yêu cầu cơ bản sau:

+ Các nhân viên liên lạc từ xa, người dùng di động, người dùng từ xa của một Công ty có thể truy cập vào tài nguyên mạng của công ty họ bất cứ lúc nào.
+ Có khả năng kết nối từ xa giữa các Chi nhánh.
+ Kiểm soát được truy cập của các khách hàng, nhà cung cấp là đối tác quan trọng đối với giao dịch thương mại của công ty.

Với các yêu cầu cơ bản như trên, ngày nay, VPN được phát triển và phân thành 2 loại: VPN truy cập từ xa (Remote Access VPN), VPN Site – to – Site (bao gồm 2 mô hình: VPN Cục bộ - Intranet VPN, VPN mở rộng - Extranet VPN).

a) VPN truy cập từ xa (Remote Access VPN)

Cung cấp các dịch vụ truy nhập VPN từ xa đến một mạng Intranet hay Extranet của trên nền hạ tầng mạng công cộng, cho phép truy xuất tài nguyên mạng như đang kết nối trực tiếp vào mạng đó.

VPN truy cập từ xa cho phép người dùng từ xa, người dùng di động của một tổ chức có thể truy cập tới các tài nguyên mạng của tổng công ty. Điển hình, các yêu cầu truy cập từ xa này được đưa ra bởi người dùng đang di chuyển hoặc các nhánh văn phòng từ xa mà không có một kết nối cố định tới Intranet của tổng công ty.

Tìm hiểu về VPN Vpn211

Hình 2: Thiết lập truy cập từ xa không có VPN

Bằng việc thực thi giải pháp VPN truy cập từ xa, các nhánh văn phòng và người dùng từ xa chỉ cần thiết lập kết nối Dial-up cục bộ tới ISP và thông qua đó để kết nối tới mạng của công ty qua Internet. Thiết lập VPN truy cập từ xa tương ứng được mô tả như trong hình 11.

Tìm hiểu về VPN Vpn310

Hình 3: Thiết lập VPN truy cập từ xa

b) VPN Cục bộ (Intranet VPN)

Intranet VPN mở rộng các dịch vụ của mạng nội bộ tới các trụ sở ở xa, đây là một mô hình liên mạng hướng phi kết nối qua một mạng WAN dùng chung. Yêu cầu ở đây là phải thực hiện được tất cả các dịch vụ mạng đã được thực hiện ở mạng trung tâm, bao gồm các dịch vụ về an ninh, VoIP, chất lượng dịch vụ cũng như các dịch vụ đa phương tiện (multimedia). Mục đích của Intranet VPN là giảm thời gian cũng như chi phí lắp đặt, hỗ trợ các đường dây thuê riêng theo các cách kết nối WAN truyền thống.

Intranet VPN thường được dùng để kết nối các nhánh Văn phòng từ xa của một tổ chức với Intranet trung tâm của tổ chức đó, nên còn được gọi là mạng riêng ảo chi nhánh.

Một giải pháp Intranet VPN điển hình được mô tả như dưới đây:

Tìm hiểu về VPN Vpn410
                                           
Hình 4: Thiết lập VPN dựa trên VPN

Ưu điểm của việc thiếp lập dựa trên VPN như trong hình là:

+ Vì Internet hoạt động như một phương tiện kết nối, nó dễ dàng cung cấp các liên kết ngang hàng mới.
+ Với việc loại trừ các dịch vụ đường dài giúp cho tổ chức giảm được chi phí của hoạt động Intranet.

Tuy nhiên cũng có một số nhược điểm:

+ Vì dữ liệu được định đường hầm qua một mạng chia sẽ công cộng nên các tấn công mạng như: từ chối dịch vụ vẫn đe doạ nghiêm trọng đến an ninh mạng.
+ Khả năng mất các gói dữ liệu khi truyền vẫn còn cao.
+ Vì sự hiện diện của kết nối Internet sự thực thi có thể bị gián đoạn và QoS có thể không được đảm bảo.

c) Mạng riêng ảo mở rộng (Extranet VPN):

Liên kết các khách hàng, các nhà cung cấp, hay cộng đồng người sử dụng vào mạng Intranet của một tổ chức trên nền hạ tầng mạng công cộng sử dụng các đường truyền thuê bao. Giải pháp này cũng cung cấp các chính sách như trong mạng riêng của một tổ chức như đảm bảo tính bảo mật, tính ổn định. Extranet VPN cũng có kiến trúc tương tự như Intranet VPN, tuy nhiên điểm khác biệt giữa chúng là phạm vi các ứng dụng cho phép các đối tác Extranet VPN sử dụng. So với Intranet VPN thì vấn đề tiết kiệm chi phí không rõ bằng nhưng điều quan trọng là khả năng cộng tác với các đối tác, khách hàng hay các nhà cung cấp sản phẩm. Việc để cho khách hàng nhập trực tiếp dữ liệu về các hợp đồng vào hệ thống sẽ tiết kiệm được rất nhiều thời gian cũng như các lỗi không đáng có, tuy nhiên việc này rất khó thực hiện với công nghệ WAN truyền thống. Extranet VPN thường sử dụng các kết nối dành riêng và thêm vào các lớp bảo mật để xác thực và giới hạn truy nhập trên hệ thống.

Thực thi giải pháp VPN làm cho công việc thiết lập một Extranet trở nên dễ dàng và giảm chi phí đáng kể.

Tìm hiểu về VPN Vpn510
                                                               
Hình 5: Mạng Extranet dựa trên VPN

Ưu điểm chính của Extranet VPN là:

+ Chi phí rất nhỏ so với cách thức truyền thống.
+ Dễ thực thi, duy trì và dễ thay đổi.
+ Dưới sự hiện diện của Internet, ta có thể chọn các đại lý lớn.
+ Vì một phần kết nối Internet được duy trì bởi ISP nên số lượng nhân viên hỗ trợ có thể giảm xuống.

Tuy nhiên cũng có một số nhược điểm:

+ Các nguy cơ an ninh như tấn công DOS vẫn còn tồn tại.
+ Tăng rủi ro vì các xâm nhập vào Intranet của tổ chức.
+ Độ trễ truyền thông vẫn lớn và thông lượng bị giảm xuống rất thấp với các ứng dụng Multimedia.
+ Sự thực thi có thể bị gián đoạn và QoS cũng có thể không được bảo đảm.

Tuy có một số nhược điểm như đã mô tả, nhưng các ưu điểm của giải pháp VPN vẫn vượt trội, “Mạng riêng ảo - ưu thế của công nghệ, chi phí và bảo mật”.

5. Giải pháp phần mềm VPN

a) Phần mềm VPN mã nguồn mở

Hiện nay, có rất nhiều giải pháp, thiết bị hỗ trợ công nghệ VPN như Cisco, Checkpoint, …. Tuy nhiên giá thành các sản phẩm này khá đắt. Điều này gây trở ngại lớn đối với các tổ chức không đủ kinh phí để triển khai. Trong khi đó nhu cầu triển khai một mô hình mạng riêng ảo là rất cần thiết. Bài toán đặt ra là cần một giải pháp mới để giảm giá thành sản phẩm.

Ngày nay, công nghệ phần mềm ngày càng phát triển mạnh mẽ. Đặc biệt là công nghệ mã nguồn mở. Nếu tận dụng được những ưu thế này, tức là phần mềm mã nguồn mở vào ứng dụng VPN thì sẽ giảm được khá nhiều chi phí cho việc triển khai. Điều này sẽ đem lại lợi thế rất lớn so với các sản phẩm thương mại.

Khi tiếp cận phần mềm VPN mã nguồn mở, có hai giải pháp được sử dụng phổ biến hiện nay: giải pháp không gian nhân và không gian người sử dụng.

b) Giải pháp Kernel space

Các giải pháp không gian nhân là những giải pháp sửa đổi nhân qua các bản vá lỗi. Chúng phức tạp hơn và ít linh hoạt hơn so với các giải pháp không gian người dùng. Hầu hết các giải pháp triển khai trên giao thức bảo mật IPsec. Hoặc là có nguồn gốc được hỗ trợ bởi nhân hoặc thông qua các bản vá nhân. Một số dự án:

- FreeS/WAN: Dự án FreeS /WAN được xây dựng đầu tiên và là mã nguồn của IPsec cho Linux. Nó bao gồm một chồng nhân IPsec được gọi là KLIPS. Dự án FreeS/WAN đã bị hủy bỏ vào năm 2004.

- Openswan và Strongswan là sự tiếp tục của dự án FreeS /WAN.

- Kame: Dự án Kame thực hiện hỗ trợ IPsec cho NetBSD, FreeBSD.

Ưu điểm:

+ Khả năng cộng tác: Hầu hết các hệ điều hành linux có một thành phần IPsec.
+ IPsec là một giao thức an toàn và linh hoạt trong đó cung cấp nhiều mức cấu hình.
+ Việc thực hiện IPsec trong Linux là khá linh hoạt.

Nhược điểm:

+ Cài đặt và cấu hình khó khăn.
+ Các bản vá nhân phải được áp dụng.
+ IPsec không hỗ trợ NAT

c) Giải pháp user space

Giải pháp user space hoạt động trong không gian người sử dụng và do đó không có phụ thuộc hoàn toàn vào mô đun nhân hoặc các bản vá. Giải pháp này dễ cài đặt, khá linh hoạt và mềm dẻo trên một số hệ điều hành. User space VPNs sử dụng “giao diện đường hầm ảo", tạo nên các chức năng kết nối mạng ở mức độ thấp, để đạt được đường hầm IP. Ví dụ như Tinc, CIPE, vTun và OpenVPN.

Giải pháp user space có thể được nhóm lại dựa trên giao thức bảo mật được sử dụng.

+ Các giao thức sử dụng chức năng mã hóa tiêu chuẩn được cung cấp bởi OpenSSL (Open-VPN, vTun, Tinc)
+ Các giao thức, phương thức mã hóa riêng (CIPE, PPTP, L2tpd).

d) vTun

vTun cung cấp một phương pháp để tạo ra các đường hầm trên mạng TCP/IP và cho phép nén và mã lưu lượng thông trong những đường hầm này. Nó là một chương trình không gian người sử dụng và không đòi hỏi bất kỳ sửa đổi của nhân Linux.
vTun không được phát triển nữa. Phiên bản mới nhất ổn địnhđược phân phối vào năm 2003. Đây là một trong những lý do chính để tránh sử dụng giải pháp này. Lỗ hổng bảo mật đã được tìm thấy và nó không được khắc phục để vá các lỗi bảo mật được tìm thấy.

e) CIPE

CIPE sử dụng một checksum CRC-32 thay vì một MAC và đây chính là một điểm yếu nghiêm trọng. Chúng ta thấy rằng CRC là thực sự chỉ là một phương thức kiểm tra, và không phải là một MAC, bởi vì không có khóa nào là liên kết với nó.

Vấn đề tiếp theo nó sử dụng mã hóa khối kích thước 64 bit. Hầu hết các chuyên gia đồng ý rằng một khối 64-bit là kích thước quá nhỏ. Đặc biệt, AES và mật mã khối hiện đại khác không phù hợp để sử dụng với CIPE.

Một mối quan tâm nghiêm trọng với giao thức CIPE là thiếu các số thứ tự, làm cho dễ bị tấn công phát lại, xóa, và chèn. Điều này đặc biệt nghiêm trọng nếu các gói dữ liệu quan trọng trao đổi có thể được xác định. Trong trường hợp đó, một kẻ tấn công có thể ngăn ngừa các cập nhật khóa, buộc sử dụng một khoá cũ đã bị tổn hại, hoặc thậm chí có thể thao tác các khóa đó để giả mạo. Về mức độ nào đó, CIPE bảo vệ chống lại các cuộc tấn công với các timestamps, nhưng các biện pháp bảo vệ là không cao. Trong mọi trường hợp, chúng ta vẫn còn lo ngại rằng gói dữ liệu quan trọng, chẳng hạn như yêu cầu chuyển khoản, có thể bị tấn công lặp lại.

Mặc dù CIPE có lẽ là an toàn hơn vTun, chúng ta nên xem xét cẩn thận trước khi triển khai nó trong bất kỳ tình huống mà yêu cầu an ninh cao. Trong trường hợp không có cuộc tấn công chủ động, CIPE dường như cung cấp sự riêng tư hợp lý, vì vậy nó có thể tìm được việc làm hữu ích như là một giao thức bảo mật dữ liệu ở mức độ không cao. Nó có lẽ không nên được sử dụng để thực hiện với dữ liệu có giá trị cao hoặc trong các tình huống nguy cơ cuộc tấn công có khả năng xảy ra.

e) Tinc

Tinc sử dụng OpenSSL để cung cấp mã hóa nguyên thủy nhưng không sử dụng chính giao thức SSL. Tinc có thể sử dụng bất kỳ thuật toán băm hoặc mã hóa mà OpenSSL cung cấp, vì vậy người dùng Tinc có số lượng lớn các mã hóa có sẵn. Theo mặc định, Tinc sử dụng Blowfish và SHA-1, nhưng các thuật toán với khối kích thước lớn hơn và quan trọng, chẳng hạn như AES, cũng được hỗ trợ.

Ưu điểm:

+ Dễ dàng cấu hình.
+ Có hỗ trợ nén.
+ Thích hợp cho thiết lập site-to-site.

Một số nhược điểm:

+ Lỗ hổng an ninh đã được tìm thấy.
+ Ít tài liệu và hướng dẫn.

f) Open VPN

OpenVPN là một giải pháp SSL VPN sử dụng SSL để đảm bảo kênh điều khiển của nó. Nó có hai chế độ hoạt động: chế độ thứ nhất có chức năng như VPN điểm - điểm, dễ dàng cấu hình; chế độ thứ hai hoạt động như một máy chủ với nhiều máy khách. OpenVPN tạo ra một bộ chuyển đổi ảo được chỉ định một địa chỉ IP VPN. Một khi kết nối với máy chủ được thiết lập, bất kỳ thông tin liên lạc đến địa chỉ của máy chủ VPN được mã hóa. Cấu hình đơn giản và dễ hiểu.

OpenVPN là giải pháp an toàn nhất trong các giải pháp đã nói ở trên. Kiến trúc bảo mật đạt được bằng cách sử dụng các giao thức bảo mật hiện tại và đã được chứng minh an toàn. Những vấn đề của quá trình xác thực và trao đổi khóa thực hiện bằng cách sử dụng giao thức SSL. Các tải dữ liệu được bảo vệ một cách khá giống như IPsec.

OpenVPN xác thực số thứ tự và IV của nó, và các số thứ tự trong kênh truyền dữ liệu được mã hóa để giúp ngăn ngừa rò rỉ thông tin. Các kênh điều khiển tin cậy giảm thiểu thực tế là chìa khóa trao đổi các gói tin có thể được xác định. Nếu kẻ tấn công cố gắng ngăn chặn khóa đàm phán lại bằng cách chặn các gói dữ liệu có liên quan, lớp tin cậy sẽ đảm bảo rằng một trong hai bên giao dịch hoặc VPN không thành công.

Cuối cùng, bất kỳ sai sót quan trọng trong giao thức SSL có thể sẽ được công khai xác định và cố định một cách nhanh chóng. Bởi vì nhiều công việc được thực hiện bởi OpenSSL, có thể tận dụng lợi thế của các hệ thống triển khai chỉ bằng cách liên kết cập nhật vào phiên bản mới nhất của thư viện.

Ưu điểm:

- Bảo vệ người làm việc bên ngoài bằng bức tường lửa nội bộ
- Các kết nối OpenVPN có thể đi qua được hầu hết mọi tường lửa và proxy: Khi truy cập các trang web HTTPS, thì đường hầm OpenVPN làm việc. Việc thiết lập đường hầm OpenVPN bị cấm là rất hiếm. OpenVPN có hỗ trợ uỷ quyền đầy đủ bao gồm cả xác thực.
- Hộ trợ UDP và TCP: OpenVPN có thể được cấu hình để chạy dịch vụ TCP hoặc UDP trên máy chủ hoặc client. Là một máy chủ, OpenVPN chỉ đơn giản là chờ đợi cho đến khi một khách hàng yêu cầu một kết nối, kết nối này được thiết lập theo cấu hình của khách hàng.
- Chỉ cần một cổng trong tường lửa được mở là cho phép nhiều kết nối vào: Kể từ phần mềm OpenVPN 2.0, máy chủ đặc biệt này cho phép nhiều kết nối vào trên cùng một cổng TCP hoặc UDP, đồng thời vẫn sử dụng các cấu hình khác nhau cho mỗi một kết nối.
- Không có vấn đề gì với NAT: Cả máy chủ và máy khách OpenVPN có thể nằm trong cùng một mạng và sử dụng các địa chỉ IP riêng. Mỗi tường lửa có thể được dùng để gửi lưu lượng tới điểm cuối đường hầm.
- Giao diện ảo chấp nhận các quy tắc về tường lửa: Tất cả các quy tắc, các cơ chế chuyển tiếp, và NAT có thể dùng chung đường hầm OpenVPN. Nhưng giao thức cũng có thể, có thể tạo đường hầm VPN khác như IPsec bên trong đường hầm OpenVPN.
- Độ linh hoạt cao với khả năng mở rộng kịch bản: OpenVPN cung cấp nhiều điểm trong quá trình thiết lập kết nối để bắt đầu các kịch bản riêng. Những kịch bản có thể được sử dụng cho một loạt các mục đích từ xác thực, chuyển đổi dự phòng và nhiều hơn nữa.
- Hỗ trợ khả năng hoạt động cao, trong suốt cho IP động: Hai đầu đường hầm có thể sử dụng IP động và ít bị thay đổi. Nếu bị đổi IP, cá phiên làm việc của Windows Terminal Server và Secure Shell (SSH) có thể chỉ bị ngưng trong vài giây và sẽ tiếp tục hoạt động lại bình đường.
- Cài đặt đơn giản trên bất kỳ hệ thống nào và đơn giản hơn nhiều so với IPsec.
- Thiết kế kiểu Modun.

Nhược điểm:

+ Cài đặt trong chế độ máy chủ-khách có thể trở nên phức tạp khi sử dụng nhiều máy khách.
+ Việc sử dụng của các cơ quan chứng nhận và thế hệ của giấy chứng nhận có thể có vấn đề.

6. So sánh và lựa chọn giải pháp

Tìm hiểu về VPN Vpn610

Hình 6: Bảng So sánh các phần mềm VPN

Một trong những lựa chọn tốt nhất là OpenVPN. Đây là một giải pháp mạnh mẽ và dễ dàng để cấu hình VPN cung cấp gần như cùng một phương thức bảo mật như IPSec.

SSL/TLS được sử dụng như hệ thống bảo mật, nó được biết đến như như một giao thức bảo mật được ứng dụng rộng rãi. Sau khi một số nghiên cứu, nó cho thấy là một trong những sự lựa chọn phần mềm an toàn nhất và đáng tin cậy. Không có lỗ hổng bảo mật lớn đã được tìm thấy và nó dựa trên việc sử dụng của OpenSSL cho các giải pháp mã hóa, xác thực. Các giải pháp khác như CIPE, Tinc và vTUN có hay đã có một số lỗ hổng bảo mật nghiêm trọng. Trong trường hợp của CIPE những sai sót được giải quyết trong phiên bản 1.6 bằng cách sử dụng các API mật mã trong hạt nhân Linux 2.6. CIPE không phải là giải pháp an toàn nhất bởi vì không phải lúc nào cũng có thể cập nhật phiên bản mới nhất.

OpenVPN đang phát triển tích cực và được cung cấp khá đầy đủ tài liệu và hướng dẫn. Có thể còn nhiều giải pháp VPN, nhưng thử các giải pháp VPN khác. Nhưng OpenVPN là đủ để đáp ứng các yêu cầu của việc thiết lập đề tài.
      
DuyHung
DuyHung Xuất sắc

Cấp bậc: Xuất sắc

Giới tính : Nam

Bài viết : 1260

Danh vọng : 2272

Uy tín : 32

Nghiên cứu xây dựng cơ chế bảo mật an toàn dữ liệu cho máy chủ IP tĩnh

1. Bảo mật máy chủ Windows Server

- Cài đặt và cấu hình hệ điều hành:

+ Cập nhật bản vá lỗi cho hệ điều hành
+ Gỡ bỏ hoặc disable các dịch vụ và ứng dụng không cần thiết
+ Cấu hình hệ điều hành xác thực tài khoản người dùng
+ Cấu hình để hệ thống kiểm soát tài nguyên một cách tối ưu
+ Cài đặt và cấu hình kiểm soát các biện pháp bảo mật khác

- Kiểm tra độ an toàn của hệ điều hành

- Danh sách cần kiểm bảo mật cho hệ thống máy chủ Web Server:

- Kiểm tra bản vá và cập nhật hệ điều hành

+ Tạo và thực hiện một quá trình vá lỗi
+ Hạn chế tối đa thông tin liên lạc cho đến khi các bản vá lỗi bảo mật được cài đặt
+ Xác định và cài đặt tất cả các bản vá lỗi và bản cập nhật hệ điều hành
+ Xác định và cài đặt tất cả các bản vá lỗi và bản cập nhật cần thiết cho các ứng dụng đang hoạt động trên hệ hệ điều hành
+ Xác định và giảm thiểu tới mức thấp nhất các lỗ hổng chưa được vá lỗi

- Loại bỏ hoặc vô hiệu hóa các dịch vụ và ứng dụng không cần thiết

- Cấu hình hệ điều hành xác thực người dùng

+ Loại bỏ hoặc vô hiệu hóa các tài khoản và các nhóm được cài đặt mặc định
+ Vô hiệu hóa các tài khoản không tương tác
+ Tạo ra các nhóm người sử dụng cho các máy tính cụ thể
+ Tạo ra các tài khoản người dùng cho các máy tính cụ thể
+ Kiểm tra chính sách mật khẩu của tổ chức và thiết lập mật khẩu tài khoản thích hợp (ví dụ như: độ dài, độ phức tạp)
+ Ngăn chặn việc đoán mật khẩu: khóa tài khoản sau số lần đăng nhập thất bại
+ Cài đặt và cấu hình các cơ chế bảo mật để tăng cường xác thực

- Cấu hình và kiểm soát nguồn tài nguyên một cách hợp lý

+ Cấm đọc và truy cập vào các tập tin và thực mục không cần thiết
+ Cấm ghi và truy cập vào các file và thư mục không cần thiết
+ Hạn chế các quyền thực thi vào hệ thống quản trị

- Cài đặt và cấu hình điều khiển phần mềm bảo mật bổ sung: Chọn và cài đặt những phần mềm chống virus, chống spyware, phát hiện rootkit, dựa trên máy phát hiện xâm nhập

- Kiểm tra tính bảo mật của hệ điều hành

+ Xác định và đồng nhất hệ thống
+ Kiểm tra hệ điều hành sau khi cài đặt ban đầu để xác định các lỗ hổng
+ Kiểm tra định kỳ hệ điều hành (hàng tháng) để xác định các lỗ hổng mới.

2. Bảo mật cho hệ thống máy chủ Linux/Unix

a) Tổng quan

Linux là hệ điều hành máy tính được xây dựng và phát triển trên nên tảng mã nguồn mở. Mặc dầu có rất nhiều phiên bản khác nhau, nhưng tất cả đều được xây dựng trên nhân Linux (kernel) được Linus Torvalds phát triển năm 1992.

Linux có thể được cài đặt trên rất nhiều hệ thống thiết bị khác nhau (máy tính, thiết bị di động, thiết bị mạng…). Đặc biệt Linux là lựa chọn hàng đầu cho các hệ thống máy chủ trên thế giới.

Phần hạt nhân (lõi hay kernel) của Linux có thể hiểu đơn giản là một tập hợp các chương trình thường trú trong bộ nhớ. Nó là phần chính của hệ điều hành, phụ trách hầu hết các chức năng chính của hệ điều hành như quản lý bộ nhớ, thực thi nhiệm vụ và truy nhập phần cứng Hệ nhân này luôn được cộng đồng nghiên cứu cải tiến liên tục nhằm nâng cao hiệu năng cũng như tính tiện lợi cho nhiều đối tượng người dùng khác nhau.

Bên cạnh đó kho phần mềm phong phú cùng với khả năng hỗ trợ từ các kênh phân phối khác nhau đã làm cho Linux ngày càng gần hơn với mọi đối tượng người dùng.

Một số bản phân phối Linux thường gặp: Ubuntu, Debian GNU/Linux, Red Hat Enterprise Linux, CentOS, SUSE, Gentoo, Slackware, Knoppix….

b) Mã hóa dữ liệu truyền đi

Tất cả các dữ liệu gửi qua môi trường mạng đều có nguy cơ bị hacker tóm được (sniff) ngay trên đường truyền. Vì vậy ta mã hóa dữ liệu được truyền đi với thuật toán mã hóa và mật khẩu đủ mạnh hay sử dụng các chứng thư số (certificate).

Sử dụng các chương trình SCP, SSH, rsync hoặc sftp để truyền file qua mạng. Với 2 công cụ fuse và sshfs, bạn cũng có thể mount các file system nằm trên server ở xa (remote server file system) một cách an toàn thông qua SSH.

GnuPG giúp mã hóa dữ liệu và tạo chữ ký số cho file, thêm vào đó là tính năng quản lý khóa mã hóa tiện lợi.Tránh sử dụng FTP, Telnet, và Rlogin / Rsh.

Bất kỳ ai nằm trên cùng một mạng đều có thể sử dụng một trình bắt gói tin (packet sniffer) để tóm lấy các thông tin (như thông số cấu hình mạng, username, password, câu lệnh, file…) chưa được mã hóa được gửi bởi các chương trình như FTP, Telnet, Rlogin/Rsh. Giải pháp chung cho vấn đề này là chuyển sang sử dụng các chương trình như OpenSSH , SFTP, hoặc FTPS. Đối với Fedora/CentOS/RHEL, gõ câu lệnh sau để xóa bỏ NIS, rsh và các dịch vụ lỗi thời khác:

# yum erase inetd xinetd ypserv tftp-server telnet-server rsh-serve

c) Quản lý dịch vụ hệ thống

Dịch vụ là các chương trình mà sau khi được khởi động sẽ luôn ở trạng thái sẵn sàng để thực thi, phục vụ các yêu cầu. Có nhiều dịch vụ đòi hỏi phải luôn hoạt động cùnghệ thống. Tuy nhiên có một số khác chỉ hoạt động khi thực sự cần thiết (vì lý do an toàn).

Vì vậy lựa chọn, sử dụng các dịch vụ một cách hợp lý cũng góp phần làm an toàn hơn đối với các hệ thống máy chủ.

d) Tắt tất cả các dịch vụ không cần thiết khi khởi động

Cách tốt nhất để hệ thống an toàn là thực thi ít nhất các dịch vụ trên hệ thống. Sử dụng các tiện ích có sẵn để liệt kê tất cả các dịch vụ đang thực thi trên hệ thống. Tiếp đó xác định các dịch vụ nào là thực sự cần thiết, các dịch vụ còn lại nên tắt đi hoặc gỡ bỏ.

Ví dụ: Liệt kê tất cả các dịch vụ đang thực thi

Trên Ubuntu (Debian): # service status-all
Trên CentOS (Redhat): # chkconfig list | grep :on

Để tắt một dịch vụ nào đó trên server: # service serviceName stop

Hoặc gõ lệnh: # chkconfig serviceName off

e) Kiểm tra các cổng dịch vụ (port) đang mở trên server

Sử dụng lệnh sau để liệt kê tất cả các port đang mở và các chương trình sử dụng các port đó:

netstat –tulpn

Hoặc:

nmap -sT -O localhost
nmap -sT -O server.example.com


Sử dụng iptables để đóng các port đang mở hoặc sử dụng 2 lệnh service và chkconfig ở trên để tắt các dịch vụ mạng không cần thiết.

3. Một số dịch vụ cơ bản

3.1. Dịch vụ SSH:

SSH là dịch vụ khuyến nghị sử dụng trong các kết nối từ xa trong các hệ thống Linux/Unix, SSH cung cấp một phương thức an toàn trong quá trình trao đổi dữ liệu giữa hai hệ thống. Các hướng dẫn chi tiết về dịch vụ này được giới thiệu tại website http://www.openssh.org.

3.2. Dịch vụ DNS:

DNS là dịch vụ phân giải tên miền, có nhiệm vụ phân giải tên miền sang địa chỉ ip và ngược lại. Dịch vụ này giúp người sử dụng không cần phải nhớ chính xác địa chỉ ip của các server ở xa, thay vào đó người dùng chỉ cần nhớ tên miền của các server này. Tuy nhiên, nếu cấu hình không an toàn không đúng phương pháp có thể dẫn tới các lỗi cho server cũng như cho chính dịch vụ này. Một trong những lỗi nguy hiểm nhất cho dịch vụ này là lỗi Zone Transfers.

3.3 Hệ thống X-windows:

Trong khoa học máy tính, Hệ thống X-Window (còn được gọi tắt là X11 hay X) là một hệ thống cửa sổ dùng để hiển thị đồ họa bitmap. Nó cung ứng một bộ các công cụ và giao thức cho phép người dùng xây dựng các giao diện đồ họa (GUI) trong hệ điều hành Unix, tựa Unix, và OpenVMS. X còn được hỗ trợ hầu hết trong các hệ điều hành hiện đại. Số lượng chương trình quản lý cho X có rất nhiều hầu hết đều là miễn phí hay tự do.

Ta có thể xóa bỏ X Windows system bằng lệnh:

# yum groupremove "X Window System"

3.4. Gỡ bỏ các phần mềm không cần thiết

Hãy tránh cài đặt các gói phần mềm không cần thiết để tránh nguy cơ lỗ hổng ẩn chứa trong các phần mềm đó bị khai thác. Sử dụng các trình quản lý gói như yum, rpm, apt-get, dpkg… để xem tất cả các gói đã cài trên hệ thống. Sau đó, xóa bỏ các gói không cần thiết.

Đối với Redhat-based Distro:

# yum list installed
# yum list packageName
# yum remove packageName

Hoặc với Debian-based Distro:

# dpkg list
# dpkg info packageName
# apt-get remove packageName

3.5. Cập nhật đầy đủ, thường xuyên các bản vá lỗi

Cập nhật các bản vá bảo mật là một công việc quan trọng trong kế hoạch bảo trì Linux sever. Linux cung cấp tất cả các công cụ cần thiết để đảm bảo hệ thống của bạn luôn được cập nhật, đồng thời giúp nâng cấp dễ dàng giữa các phiên bản. Quản trị hệ thống nên thường xuyên kiểm tra và áp dụng tất cả các bản cập nhật ngay khi có thể. Lệnh thực hiện:

# yum update
# apt-get update && apt-get upgrade

3.6. Quản lý tài khoản người dùng và chính sách mật khẩu mạnh

a) Bảo vệ đăng nhập mức hệ thống

Thông thường, quá tình đăng nhập hệ thống Linux được điều khiển bởi chương trình đăng nhập. Vì vậy cần phải đảm bảo một số yêu cầu sau:

* Kiểm tra thời gian tồn tại của mật khẩu (password aging)

Sử dụng lệnh chage cho phép thay đổi số ngày giữa các lần thay đổi mật khẩu và ngày thay đổi mật khẩu lần cuối.

Để vô hiệu hóa password aging, gõ lệnh:

# chage -M 99999 userName

Để kiểm tra thông tin về thời gian mãn hạn của mật khẩu của một tài khoản, gõ:

# chage -l username

Cuối cùng, có thể chỉnh sửa file /etc/shadow file theo các trường dưới đây:

{userName}:{password}:{lastpasswdchanged}:{Minimum_days}:{Maximum_days}:{Warn}:{Inactive}:{Expire}:

Minimum_days: Số ngày tối thiểu để thay đổi mật khẩu.
Maximum_days: Số ngày tối đa mà mật khẩu còn hiệu lực.
Warn: Số ngày trước khi mật khẩu hết hạn mà người dùng sẽ nhận được cảnh báo rằng mật khẩu của họ cần phải được thay đổi.
Expire: Số ngày kể từ ngày 01/01/1970 tài khoản sẽ bị khóa.

* Kiểm tra xem các tài khoản có sử dụng lại các mật khẩu trước đó không

PAM là một cơ chế linh hoạt cho việc chứng thực người dùng. Điều này được hiện thực bằng cách sử dụng tùy chọn ghi nhớ (remember option) cho pam_unix – một module của PAM.

Module này cung cấp cho các module PAM khác các tính năng như authentication (chứng thực), account management (quản lý tài khoản)… Ngoài ra, pam_unix còn lưu giữ một danh sách các mật khẩu cũ, nếu muốn cấm cản ai đó muốn sử dụng lại các mật khẩu cũ này. Danh sách các mật khẩu cũ nằm trong file /etc/security/opasswd.

Cách giới hạn việc sử dụng lại các mật khẩu cũ : Trong Debian/Ubuntu, mở file /etc/pam.d/common-password sử dụng lệnh:

# vi /etc/pam.d/common-password

Trong CentOS/RHEL/Fedora, chỉnh sửa file /etc/pam.d/system-auth lệnh:

# vi /etc/pam.d/system-auth

Bây giờ, bạn tìm tới dòng bắt đầu bằng password sufficient và thêm vào cuối dòng này tùy chọn remember=10. Thay số 10 bằng số lượng mật khẩu gần đây nhất mà sẽ không được phép sử dụng lại. Lưu và đóng file này. Kể từ lúc này, Linux sẽ ghi nhận lại 10 mật khẩu gần đây nhất.

* Khóa tài khoản sau một số lần đăng nhập thất bại

Người quản trị cần phải cấu hình để khóa một tài khoản sau số lần đăng nhập thất bại để bảo vệ khỏi bị tấn công Brute-force. Lệnh # vi /etc/pam.d/system-auth

Sau đó sửa dòng: account required pam_tally. so deny=3 no_magic_root
lock_time=180 deny=3: giới hạn số lần truy cập thất bại
lock_time=180: thời gian khóa tài khoản sau khi đăng nhập thất bại.

Để mở khóa cho tài khoản sau khi tài khoản này bị khóa sau 1 số lần đăng nhập thất bại ta gõ lệnh:

# faillog -r -u username

Ta cũng có thể sử dụng lệnh passwd để khóa hoặc mở khóa tài khoản:

# passwd -l userName // khóa tài khoản
# passwd -u userName // mở khóa tài khoản

Để kiểm tra xem danh sách những tài khoản đang bị khóa ta sử dụng lệnh:

# faillog

* Xác định các tài khoản sử dụng mật khẩu rỗng

Để kiểm tra xem có tài khoản sử dụng mật khẩu rỗng sử dụng:

# awk -F: '($2 == "") {print}' /etc/shadow

Để khóa một tài khoản sử dụng mật khẩu rỗng sử dụng lệnh:

# passwd -l accountName

Kiểm tra hệ thống đảm bảo rằng không có người dùng thông thường nào có UID = 0. Chỉ có tài khoản root mới có UID =0 với quyền hạn cao nhất để truy cập vào hệ thống. Gõ lệnh sau để hiển thị tất cả các tài khoản với UID = 0

# awk -F: '($3 == "0") {print}' /etc/passwd

Sẽ thấy ít nhất 1 dòng tương ứng với tài khoản root như sau:

root:x:0:0:root:/root:/bin/bash

Trường thứ 3 cho biết giá trị UID. Nếu có thêm các tài khoản khác có UID =0, hãy đổi lại UID cho những tài khoản này sử dụng lệnh sau:

# usermod –u new_UID username

b) Bảo vệ các truy cập vật lý

Thiết lập mật khẩu BIOS: nhằm ngăn chặn, không cho phép sửa thông tin cấu hình trong BIOS. Thiết lập mật khẩu cho trình khởi động (boot loader): ngăn chặn việc thay đổi thông tin trong trình khởi động.

3.7. Sử dụng chế độ bảo mật mặc định của Kernel

Trong Kernel của một số hệ thống Linux mới hiện giờ có cấu hình sẵn một vài Rules chuẩn với mục đích cung cấp những thông số căn bản nhất để cấu hình tăng thêm tính bảo mật cho hệ thống. Các File và thông số đó thường được chứa ở /proc/sys.

3.8. Tạm thời tắt IPv6

Internet Protocol version 6 (IPv6) là một giao thức mới hoạt động ở tầng Internet của bộ giao thức mạng TCP/IP. IPv6 đang dần thay thế cho IPv4 do những lợi ích mà nó mang lại. Hiện tại, vẫn chưa có công cụ tốt nào có thể kiểm tra các vấn đề bảo mật trên hệ thống hỗ trợ IPv6. Vì thế, trừ khi hệ thống mạng yêu cầu sử dụng IPv6, tốt nhất nên tạm thời vô hiệu hóa IPv6 hoặc cấu hình trên Firewall để cản lọc các gói tin IPv6.

3.9. Cơ chế ghi nhật ký

Quá trình ghi lại các hoạt động của hệ thống cần thiết trong nhiều trường hợp khác nhau: kiểm tra, đánh giá hệ thống cũng như ứng dụng, lưu giữ các bằng chứng về các hoạt động bất hợp pháp xảy ra đối với hệ thống… Hoạt động ghi lại các thông báo của hệ thống một cách tập trung, nhất quán sẽ gia tăng độ bảo mật cũng như thuận lợi hơn trong việc kiểm soát lỗi. Hạn chế tối đa hành động xóa tập tin nhật ký của tin tặc.

4. Một số kiểu tấn công hệ thống, cách phòng chống

4.1. Brute-force

Đây là một trong số các kỹ thuật tấn công xuất hiện dầu tiên. Brute-force không quá nổi bật nhưng rất hiệu quả khi sử dụng tấn công các hệ thống Linux. Brute-force là cách thức đoán username/password trên các dịch vụ yêu cầu chứng thực trước khi được phép truy cập vào tài nguyên hệ thống. Kiểu tấn công này thường được sử dụng đối với các dịch vụ sau:

- Telnet
- File Transfer Protocol (FTP)
- Secure Shell (ssh)
- SNMP community names
- Hypertext Transport Protocol (HTTP/HTTPS)

Một số công cụ sử dụng tấn công:

- THC – Hydra.
- pop.c.
- SNMPbrute.

Biện pháp đối phó: Biện pháp phòng ngừa tốt nhất là sử dụng cơ chế đặt mật khẩu mạnh (dộ dài, ký tự thường, ký tự hoa, số, ký tự đặc biệt…) để gây khó khăn cho việc dự đoán.

4.2. Buffer overflow

Lỗi tràn bộ đệm xuất hiện khi một chương trình hoặc một tiến trình đang cố ghi nhiều dữ liệu vào vùng đệm (vùng lưu dữ liệu tạm thời) mà vượt quá kích thước cho phép của nó. Lỗi này gây ra khi sử dụng các câu lệnh PUSH, AND, POP và có thể được khai thác theo cách sau:

- Ghi đè một biến cục bộ nằm gần bộ nhớ đệm trong stack để thay đổi hành vi của chương trình nhằm tạo thuận lợi cho kẻ tấn công.

- Ghi đè địa chỉ trả về trong một khung stack (stack frame). Khi hàm trả về, thực thi sẽ được tiếp tục tại địa chỉ mà kẻ tấn công đã chỉ rõ, thường là tại một bộ đệm chứa dữ liệu vào của người dùng.

Integer Overflows: Đây cũng là một trong số lỗi về tràn bộ đệm, khác với loại tràn stack (stack-based) và loại tràn heap (heap-based), loại tràn số nguyên (integer overflow) không ghi đè lên vùng nhớ nhưng khả năng ảnh hưởng cũng rất lớn.

Biện pháp đối phó: Đối với kiểu tấn công này, một số biện pháp sau sẽ giúp hạn chế thấp nhất khả năng bị tấn công:

Lập trình an toàn: Biện pháp đối phó tốt nhất đối với tấn công này là phải có quy trình lập trình an toàn. Mặc dù, không thể thiết kế một chương trình/ứng dụng không có lỗi nhưng ít nhấtphải hạn chế tối đa khả năng sinh lỗi. Sau đây là một số khuyến nghị:

- Thiết kế chương trình/ứng dụng với tư duy an toàn phải được đặt ra đầu tiên.
- Sử dụng tính năng SSP (Stack Smashing Protector) được cung cấp bởi trình biên dịch gcc trong Microsoft Visual Studio. Đối với nên tảng OpenBSD thì đặc tính này được sử dụng mặc định.
- Có cơ chế kiểm tra các biến môi trường.
- Sử dụng các hàm an toàn như fgets(), strncpy(), và strncat().
- Giảm số lượng mã (code) thực thi với quyền root.
- Sử dụng các bản vá lỗi của các nhà cung cấp.
- Rà soát, đánh giá mỗi chương trình/ứng dụng: có thể tự thực hiện hoặc nhờ bên thứ 3 để đánh giá sau khi chương trình/ứng dụng được lập trình.
- Tắt tất cả các dịch vụ không sử dụng hoặc nguy hiểm .

4.3. Format String

Đây là kiểu tấn công đã xuất hiện từ rất sớm, hiện nay chỉ còn gặp rất ít. Kiểu tấn công này xuất hiện khi khai báo không đúng hoặc thiếu về kiểu dữ liệu trong chương trình. Kiểu tấn công này chỉ được thực thi khi chương trình/ứng dụng không có khả năng kiểm tra dữ liệu nhập vào.

Biện pháp đối phó: Rất nhiều kiểu tấn công Format String sử dụng cách thức tấn công như Buffer Overflow. Vì thế có thể sử dụng các biện pháp như đã đề cập ở trên để đối phó kiểu tấn công này

4.4. Tấn công dịch vụ FTP

Giao thức truyền tập tin (FTP), một trong số các giao thức được sử dụng nhiều nhất ngày nay. Giao thức này cho phép tải lên (upload) và tải xuống (download) từ các hệ thống từ xa. FTP thường được sử dụng để cho phép tuy cập các hệ thống từ xa để lưu trữ các tập tin hợp lệ. Rất nhiều hệ thống cho phép truy cập với tài khoản trống (anonymous), cho phép người dùng truy cập FTP server mà không cần chứng thực. Nguy cơ các truy cập này bị sử dụng bởi tin tặc để leo thang đặc quyền, upload các tập tin, đoạn mã độc hại lên server là rất cao.

Biện pháp đối phó:

- Nếu không sử dụng dịch vụ này thì nên tắt.
- Cập nhật các phiên bản FTP mới nhất.
- Sử dụng SFTP thay thế cho kết nối FTP.

Vị Trí Permission Chức Năng:

/var/log 751 Thư mục chứa tất cả Log File của hệ thống
/var/log/message 644 Những thông báo của hệ thống
/etc/crontab 600 Thư mục chứa các File liên quan đến Crontab
/etc/syslog.conf 640 File cấu hình của Syslog
/etc/logrotate.conf 640 File cầu hình điều khiển sự luân phiên của các File Log
/var/log/wtmp 660 Hiển thị thông tin về những ai đã Logged vào hệ thống
/var/log/lastlog 640 Ai đã Log vào hệ thống trước đây
/etc/ftpusers 600 Danh sách những User không được phép sử dụng FTP
/etc/passwd 644 Danh sách các User trên hệ thống
/etc/shadow 600 Danh sách các Password được mã hoá choUser
/etc/pam.d 750 File cấu hình cho PAM
/etc/hosts.allow 600 File điều khiển sự cho phép các địa chỉ, Host…
/etc/hosts.denny 600 File điều khiển sự ngăn cản các địa chỉ, Host…
/etc/lilo.conf 600 File cấu hình trình quản lý khởi động trên Linux
/etc/securetty 600 TTY Interface mà root được phép đăng nhập
/etc/shutdown.allow 400 Danh sách những User được phép sử dụng tổ hợp phím: Ctrl + Alt
/etc/security 700 File thiết lập quy tắc an toàn chung cho hệ thống
/etc/rc.d/init.d 750 Thư mục chứa các File chương trình khởi động cùng hệ thống (Redhat)
/etc/init.d 750 Thư mục chứa các File chương trình khởi động cùng hệ thống (Debian)
/etc/sysconfig 751 Thư mục chứa các File cấu hình hệ thống và Network (Redhat)
/etc/inetd.conf 600 File định nghĩa các Service trên hệ thống
/etc/cron.allow 400 Danh sách các User được phép sử dụng Cron
/etc/cron.denny 400 Danh sách các User không được phép sử dụng Cron
/etc/ssh 750 Thông tin cấu hình SSH
      
DuyHung
DuyHung Xuất sắc

Cấp bậc: Xuất sắc

Giới tính : Nam

Bài viết : 1260

Danh vọng : 2272

Uy tín : 32

Thiết lập xây dựng hệ thống VPN "mềm"

I. Triển khai server

1. Cấu hình Server

Máy chủ với cấu hình cơ bản sau:

- CPU 2 Cores; HDD: 80GB [SSD Cloud Storage]; RAM: 4GB;
- Bandwidth: Unlimited; IP tĩnh: Yes; Hệ điều hành: Windows Server 2008

Tìm hiểu về VPN Vpn1010

Hình 1: Giao diện máy chủ hệ thống

2. Các ứng dụng triển khai cài đặt và cấu hình trên Server

- IIS: 7.0; Microsoft SQL Server 2008 r2; VPN server
- Web service và Service phục vụ cho các thiết bị android.

3. Cài đặt RRAS Server Role trên VPN Server

- Trong Server Manager, kích nút Roles ở phần bên trái của giao diện điều khiển, kích vào liên kết Add Roles. - Kích Next trên cửa sổ Before You Begin.

- Trên cửa sổ Select Server Roles, bạn hãy kích vào hộp kiểm Network Policy and Access Services, sau đó kích Next.

Tìm hiểu về VPN Vpn1110

Hình 2: Giao diện cửa sổ AddRoles

- Đọc các thông tin trên cửa sổ Network Policy and Access Services. Hầu hết các thông tin này cho biết về Network Policy Server mới (máy chủ chính sách vẫn được gọi là Internet Authentication Server [IAS] là RADIUS server), tất cả trong chúng hiện đều không áp dụng cho kịch bản. Kích Next.

- Trên cửa sổ Select Role Services, hãy tích vào hộp kiểm Routing and Remote Access Services. Khi tích vào hộp kiểm này, tiện ích cũng sẽ tự tích vào các hộp kiểm Remote Access Service và Routing. Kích Next.

Tìm hiểu về VPN Vpn1210

Hình 3: Select Role Services

- Kích Install trên cửa sổ Confirm Installation Selections.

- Kích Close trên cửa sổ Installation Results.

Kích hoạt RRAS Server và cấu hình nó trở thành một máy chủ NAT và VPN

Lúc này role máy chủ RRAS server hiện đã được cài đặt, cần phải kích hoạt dịch vụ RRAS, giống như cách đã thực hiện với nó trong các phiên bản trước đó của Windows. Chúng ta cần kích hoạt tính năng máy chủ VPN và dịch vụ NAT. Việc cần phải kích hoạt thành phần máy chủ VPN và kích hoạt máy chủ NAT để các máy khách bên ngoài có thể tăng quyền truy cập vào Certificate Server để có thể kết nối với CRL. Nếu máy khách SSTP VPN không thể download được CRL thì kết nối SSTP VPN sẽ thất bại. Để truy cập vào CRL cấu hình máy chủ VPN thành một máy chủ NAT và công bố CRL bằng cách sử dụng NAT đảo ngược. Trong môi trường thực tế bạn có thể sẽ có một tường lửa (như ISA Firewall chẳng hạn) nằm phía trước máy chủ chứng chỉ Certificate Server, vì vậy công bố CRL bằng sử dụng tường lửa. Để có thể kích hoạt dịch vụ RRAS:

- Trong Server Manager, mở phần Roles trong panel bên trái của giao diện điều khiển. Mở phần Network Policy and Access Services sau đó kích nút Routing and Remote Access. Kích chuột phải vào Routing and Remote Access sau đó kích Configure and Enable Routing and Remote Access.

Tìm hiểu về VPN Vpn1310

Hình 4: Configure and Enable Routing and Remote Access

- Kích Next trên cửa sổ Welcome to the Routing and Remote Access Server Setup Wizard

- Trên cửa sổ Configuration, chọn tùy chọn Virtual private network (VPN) access and NAT và kích Next.

Tìm hiểu về VPN Vpn1410

Hình 5: Routing and Remote Access Server Setup Wizard

- Trên cửa sổ VPN Connection, chọn NIC trong phần Network interfaces, phần có giao diện bên ngoài của máy chủ VPN. Sau đó kích Next.

Tìm hiểu về VPN Vpn1510

Hình 6: Routing and Remote Access Server Setup Wizard

- Trên cửa sổ IP Address Assignment, chọn tùy chọn Automatically. Chúng ta có thể chọn tùy chọn này vì đã cài đặt máy chủ DHCP trên bộ điều khiển miền phía sau máy chủ VPN. Nếu bạn chưa cài đặt máy chủ DHCP thì cần phải chọn tùy chọn From a specified range of addresses và sau đó cung cấp một danh sách các địa chỉ mà máy chủ VPN có thể sử dụng khi kết nối với mạng thông qua VPN gateway. Kích Next.

Tìm hiểu về VPN Vpn1610

Hình 7: Routing and Remote Access Server Setup Wizard

- Trên cửa sổ Managing Multiple Remote Access Servers, chọn No, use Routing and Remote Access to authenticate connection requests. Đây là tùy chọn sử dụng khi không có máy chủ NPS hay RADIUS. Vì máy chủ VPN là một thành viên của miền nên có thể chứng thực người dùng bằng cách sử dụng các tài khoản miền. Nếu máy chủ VPN không phải là thành viên miền thì chỉ có các tài khoản cục bộ trên máy chủ VPN mới có thể được sử dụng, trừ khi quyết định sử dụng máy chủ NPS. Kích Next.

Tìm hiểu về VPN Vpn1710

Hình 8: Routing and Remote Access Server Setup Wizard

- Đọc các thông tin tóm tắt trên cửa sổ Completing the Routing and Remote Access Server Setup Wizard và kích Finish.
- Kích OK trong hộp thoại Routing and Remote Access, thông báo DHCP yêu cầu đến một tác nhân chuyển tiếp.
- Trong phần panel bên trái, mở phần Routing and Remote Access, sau đó kích vào nút Ports. Ở phần giữa của panel, sẽ thấy các kết nối cho SSTP.

Tìm hiểu về VPN Vpn1810

Hình 9: Cấu hình máy chủ NAT để công bố CRL

Như đã đề cập từ trước, máy khách SSL VPN cần có thể download được CRL để xác nhận rằng chứng chỉ máy chủ trên máy chủ VPN đã không được hủy bỏ. Để thực hiện điều này, cần cấu hình một thiết bị trước máy chủ chứng chỉ để chuyển tiếp các yêu cầu HTTP cho vị trí CRL đến được máy chủ chứng chỉ.

Vậy biết được URL nào mà máy khách SSL VPN cần kết nối để thực hiện việc download CRL chưa? Các thông tin này được giới thiệu đến ngay bên trong bản thân mỗi chứng chỉ. Nếu bạn vào máy chủ VPN một lần nữa và kích đúp vào chứng chỉ trên giao diện điều khiển IIS (đây là do bạn đã thực hiện trước), thì bạn sẽ có thể tìm được các thông tin này. Kích vào tab Details của chứng chỉ và kéo xuống mục CRL Distribution Points, sau đó kích chuột vào mục đó. Trong panel thấp hơn, bạn có thể thấy các điểm phân phối khác nhau được dựa trên giao thức sử dụng để truy cập vào các điểm này. Trong màn hình chứng chỉ ở hình bên dưới, có thể thấy được rằng cần phải cho phép truy cập máy khách SSL VPN vào CRL thông qua URL:
http://win2008rc0-dc.msfirewall.org/CertEnroll/WIN2008RC0-DC.msfirewall.org.crl

Tìm hiểu về VPN Vpn1910

Hình 10: Certificate Server

Vì lý do này nên cần tạo một entry DNS chung đối với tên này để các máy khách VPN bên ngoài đều có thể thực thi được tên đó với địa chỉ IP trên thiết bị, thiết bị ở đây sẽ thực hiện đảo ngược NAT hoặc đảo ngược proxy để cho phép truy cập đến được website của Certificate Server. Trong ví dụ này, cần phải có win2008rc0-dc.msfirewall.org để giải quyết địa chỉ IP trên giao diện bên ngoài của máy chủ VPN, máy chủ VPN sẽ đảo ngược NAT kết nối với Certificate Server.

Nếu bạn đang sử dụng tường lửa “đời mới” (chẳng hạn như ISA Firewall) thì có thể thực hiện việc công bố site CRL an toàn hơn bằng cách cho phép chỉ truy cập vào CRL mà không vào toàn bộ site. Tuy vậy, trong bài này chúng tôi sẽ hạn chế trong khả năng một thiết bị NAT đơn giản như những gì RRAS NAT cung cấp. Bạn nên lưu ý ở đây rằng việc sử dụng tên site của CRL mặc định có thể không phải là cách an toàn vì nó lộ tên máy tính trên Internet. Có thể tạo một CDP (CRL Distribution Point) để tránh điều này nếu cho rằng việc lộ tên riêng của CA trong DNS chung là một vấn đề quan trọng.

Thực hiện theo các bước dưới đây để cấu hình RRAS NAT có thể chuyển tiếp các yêu cầu HTTP tới Certificate Server:

a) Trong phần panel bên trái của Server Manager, bạn mở phần Routing and Remote Access, sau đó mở phần IPv4. Kích nút NAT

b) Trong nút NAT, click chuột -> Local Area Connection, sau đó kích Properties.

Tìm hiểu về VPN Vpn2010

Hình 11: Cấu hình RRAS NAT

c) Trong hộp thoại Local Area Connection Properties, tích vào hộp kiểm Web Server (HTTP). Khi thực hiện như vậy, hộp thoại Edit Service sẽ xuất hiện. Trong hộp văn bản Private Address, nhập địa chỉ IP của máy chủ chứng chỉ trên mạng. Click OK.

Tìm hiểu về VPN Vpn2110

Hình 12:  Local Area Connection Properties

d) Kích OK trong hộp thoại Local Area Connection Properties.

Tìm hiểu về VPN Vpn2210

Hình 13: NAT server đã được cài đặt và được cấu hình

Lúc này, NAT server đã được cài đặt và được cấu hình.

4. Thiết lập danh sách người dùng trong hệ thống VPN

Vào Server Manager > Configuration >Local User and Group. Nháy chuột phải vào User như hình dưới, chọn New User.

Tìm hiểu về VPN Vpn2310

Hình 14:Thiết lập User cho hệ thống

Tìm hiểu về VPN Vpn3510

Tìm hiểu về VPN Vpn3610

Tìm hiểu về VPN Vpn3610
 
Hình 15: Tạo User mới và thiết lập các thuộc tính cho các user trên máy chủ

Tìm hiểu về VPN Vpn2510

Hình 16: Danh sách các user trên máy chủ

II. Các máy trạm

1. Cấu hình

- CPU: Core i3;  RAM: 4Gb; HDD: 500Gb.

2. Ứng dụng triển khai

- Hệ điều hành: Windows 7 64 bit.
- Trình duyệt: Firefox 50.1.0; Google Chrome 55.0.2883.87 m; Cốc Cốc 60.4.136

3. Cấu hình VPN Client

Trên máy trạm, vào Network and Internet chọn Network and Sharing Center:

Tìm hiểu về VPN Vpn2610

Hình 17: Network and Sharing Center

Click Connect to a network, chọn Connect to a workplace, nhấp chọn VPN Connection

Tìm hiểu về VPN Vpn2710

Tìm hiểu về VPN Vpn2810

Tìm hiểu về VPN Vpn2910 

Hình 18: Chuẩn bị cho kết nối VPN

Tìm hiểu về VPN Vpn3010

Tìm hiểu về VPN Vpn3110 

Hình 19: Đăng nhập vào VPN và giao diện kết nối

III. Thiết bị truyền tìn

1. Cấu hình

Tên Smartphone: Kyocera Verizon e6782
NETWORK Công nghệ GSM / HSPA / EVDO / LTE

BODY Kích thước: 136.4 x 68.3 x 13.2 mm (5.37 x 2.69 x 0.52 in)
Cân nặng 187.1 g (6.60 oz)
SIM
Nano-SIM

- IP68 certified - dust and water proof (up to 1.5m for 30 min)
- MIL-STD-810G certified - salt, dust, humidity, rain, vibration, solar radiation, transport and thermal shock resistant
- Flashlight

2. Ứng dụng triển khai

- Hệ điều hành: Android 4.4.
- Cấu hình VPN Client
- Cài đặt ứng dụng BPASS

3. Cấu hình VPN

Tìm hiểu về VPN Vpn3210 Tìm hiểu về VPN Vpn3210 Tìm hiểu về VPN Vpn3310

Hình 20: Đăng nhập VPN từ Smartphone
 

Kết luận

Nội dung này tập trung cụ thể trong việc thiết lập xây dựng hệ thống. Các nội dung thực hịên được trình bày chi tiết và cụ thể và đã được thực hiện thành công và đang triển khai ứng dụng thực tế phục vụ cho công tác tuần tra biên giới tỉnh Tây Ninh gồm các nôi dung sau:

- Máy chủ: Cấu hình máy chủ trên mạng, thiết lập VPN trên máy chủ cũng như thiết lập các tài khoản đăng nhập VPN từ xa đảm bảo hoạt động đúng yêu cầu đề ra.
- Các máy trạm: cấu hình VPN trên máy trạm để tham gia vào hệ thống.
- Các thiết bị tuần tra.
      
DuyHung
DuyHung Xuất sắc

Cấp bậc: Xuất sắc

Giới tính : Nam

Bài viết : 1260

Danh vọng : 2272

Uy tín : 32

Tăng cường bảo mật OpenVPN với One Time Password

Tham khảo:

Sau khi bạn đã thiết lập cho hệ thống của mình sử dụng OpenVPN nhưng vẫn lo nghĩ sẽ không an toàn khi ai đó biết được mật khẩu, hoặc secret key của mình.

Để bảo mật hơn cho hệ thống OpenVPN của bạn, chúng ta sẽ bật thêm tính năng xác thực 2 bước tương tự như dịch vụ Gmail của Google.

Tìm hiểu về VPN Open-a10

Lúc này, để đăng nhập vào hệ thống VPN, một token key được sinh ra, token này sẽ được kết hợp với password của OpenVPN của bạn để trở thành một password thay đổi liên tục.

Bài viết này sẽ hướng dẫn bạn sử dụng Plugin OTP được viết cho OpenVPN để giải quyết bài toán trên.

Sau khi đã cài đặt xong hệ thống OpenVPN, bạn cần làm các bước sau.

Cài đặt các thư viện cần thiết

Code:
yum install libtool.x86_64 libtool-ltdl-devel.x86_64  
yum install automake  
yum install autoconf  
yum install openssl-devel.x86_64  
yum install google-authenticator  
rpm -ivh http://vuksan.com/centos/RPMS-6/x86_64/openvpn-devel-2.3.2-1.x86_64.rpm  

Cài đặt Plugin OpenVPN-OTP

Code:
# git clone git@github.com:evgeny-gridasov/openvpn-otp.git

# cd openvpn-otp

# ./autogen.sh

# ./configure --includedir=/usr/include

# make && make install

Plugin lúc này được biên dịch ra tại đường dẫn /usr/local/lib/openvpn/openvpn-otp.so

Cấu hình OpenVPN

Thêm đoạn dưới đây vào trong file config (/etc/openvpn/server.conf) của openvpn

Code:
# use otp passwords
plugin /usr/local/lib/openvpn/openvpn-otp.so

# disable username/password renegotiation
reneg-sec 0  

OpenVPN Server - Tạo file cấu hình xác thực username qua OTP

File cấu hình được lưu ở đường dẫn /etc/ppp/otp-secrets, file này bạn chmod 0600 để đảm bảo duy nhất user (root) đọc được. Nội dung file cấu hình mẫu:

Code:
#Maximum allowed clock slop = 180
#T0 value for TOTP (time drift) = 0
#Step value for TOTP = 30
#Number of digits to use from TOTP hash = 6
#Step value for MOTP = 10


# user server type:hash:encoding:key:pin:udid client
# where type is totp, totp-60-6 or motp
#       hash should be sha1 in most cases
#       encoding is base32, hex or text
#       key is your key in encoding format
#       pin is a 4-6 digit pin
#       udid is used in motp mode
#
# use sha1/base32 for Google Authenticator
hieuht otp totp:sha1:base32:I7OVM53OAIACLTAS:123456:xxx *

#mike otp totp-60-6:sha1:hex:5c5a75a87ba1b48cb0b6adfd3b7a5a0e:6543:xxx *

# use text encoding for clients supporting plain text keys
#jane otp totp:sha1:text:1234567890:9876:xxx *


  • K7BYLIU5D2V33X6S là Secret key của người dùng.
  • 123456: là mật khẩu của người dùng.
  • hieuht: là account đăng nhập openvpn
  • totp:sha1:base32: Là kiểu xác thực, hash gửi lên, loại key mã hóa.


Khi người sử dụng đăng nhập vào trong VPN, họ sẽ cần phải cung cấp tên tên đăng nhập và mật khẩu, trong đó mật khẩu là sự kết hợp của (Password + OTP Token). Ví dụ cho người dùng hieuht:

Code:
username: hieuht  
password: 123456845922  

Tạo Secret key cho người dùng

Code:
[root@master openvpn-otp]# google-authenticator
https://www.google.com/chart?chs=200x200&chld=M|0&cht=qr&chl=otpauth://totp/root@master.local%3Fsecret%3DI7OVM53OAIACLTAS  
Your new secret key is: I7OVM53OAIACLTAS  
Your verification code is 514660  
Your emergency scratch codes are:  
  
  71705998
  90601607
  30274291
  21594134
  61241912

Do you want me to update your "~/.google_authenticator" file (y/n) n  

OpenVPN Client - Profile người dùng

Trong tệp tin cấu hình của phía openvpn client (ví dụ hieuht.ovpn), bạn thêm hai dòng cấu hình dưới đây vào trong file đó.

Code:
# use username/password authentication
auth-user-pass auth.txt  
# do not cache auth info
auth-nocache  

Lúc này, username và password của người dùng sẽ được lưu trong file auth.txt theo cấu trúc username và password mỗi thứ trên một dòng.

Code:
hieuht  
123456845922  

Việc này sẽ giúp người dùng không phải nhập tay username và password nữa. Nhưng vấn đề ở đây: Pasword luôn thay đổi bởi vì có thêm mã OTP. Nên việc phải sửa lại liên tục file auth.txt là thường xuyên, khi mỗi lần đăng nhập vào OpenVPN. Để giải quyết vấn đề này, mình đã viết một đoạn mã bằng Python làm nhiệm vụ tạo file và cập nhật Password giúp bạn.

File cấu hình OpenVPN client mẫu:

Code:
client  
dev tun  
proto udp  
remote 192.168.12.20 1194  
resolv-retry infinite  
nobind  
persist-key  
persist-tun  
ca ca.crt  
cert hieuht.crt  
key hieuht.key  
dh dh2048.pem  
comp-lzo  
verb 4

# use username/password authentication
auth-user-pass auth.txt  
# do not cache auth info
auth-nocache  

Script Python sinh password theo OTP và tự động đăng nhập OpenVPN

https://github.com/hieuha/OpenVPN-OTP-Client

Bạn cần sửa lại giá trị của 3 biến đó là:


  • my_secret = 'I7OVM53OAIACLTAS' #Secret Key của bạn
  • my_account = 'hieuht' # Account name của bạn
  • my_password = '123456' # Mật khẩu của bạn
  • openvpn_config = 'hieuht.ovpn' # Profile openvpn của bạn.


Chú ý: Cài đặt thư viện pyotp trước khi sử dụng script

sudo pip install pyotp

Nội dung script client_openvpn.py:

Code:
#!/usr/bin/env python
#coding:utf-8
"""
  Author:  HieuHT --<>
  Purpose: Generate a auth.txt for openvpn
  Created: 08/19/2015
"""
import subprocess  
import pyotp  
import os, sys  
def main():  
    PATH = "/home/hieuht/Documents/openvpn/"
    openvpn_config = 'hieuht.ovpn'
    my_secret = 'I7OVM53OAIACLTAS'
    my_account = 'hieuht'
    my_password = '123456'

    auth = pyotp.TOTP(my_secret)
    my_otp = str(auth.now())
    my_valid_password = my_password+my_otp
    # Update Auth.txt
    f = open(PATH + 'auth.txt', 'w')
    f.write(my_account + '\n')
    f.write(my_valid_password + '\n')
    f.close()
    command = '/usr/sbin/openvpn %s' % PATH + openvpn_config
    proc = subprocess.Popen(command, stdout = subprocess.PIPE, stderr = subprocess.PIPE, shell= True)
if __name__ == '__main__':  
    if not os.geteuid()==0:
        sys.exit("\nOnly root can run this script\n")
    else:
        main()

Sử dụng OpenVPN Client


Xong xuôi, bây giờ bạn chỉ việc alias cho file script python này và bảo vệ secret key của bạn. Khi bạn muốn đăng nhập Openvpn chỉ cần chạy lệnh:

Code:
sudo -s  
python client_openvpn.py  

Nếu không muốn sử dụng Script này, bạn sử dụng chương trình Google Authenticator, trên các kho ứng dụng của Android và iOS. Sau đó nhập Secret key vào chương trình, mã OTP sẽ được sinh ra khi được sử dụng.

Tìm hiểu về VPN Google10
      
Sponsored content

#10Tìm hiểu về VPN Empty Re: Tìm hiểu về VPN

      

Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang  Thông điệp [Trang 1 trong tổng số 1 trang]

Quyền hạn của bạn

Bạn không có quyền trả lời bài viết
free counters



  • Đoàn Ngọc Khánh

    mobile phone 098 376 5575


    Đỗ Quang Thảo

    mobile phone 090 301 9666


    Nguyễn Văn Của

    mobile phone 090 372 1401


    IP address signature
    Free forum | ©phpBB | Free forum support | Báo cáo lạm dụng | Thảo luận mới nhất