Tôi nên sử dụng VPN trên máy Mac như thế nào để ngăn chặn sự thỏa hiệp trước khi VPN bắt đầu?


11

Như hầu hết người dùng có kinh nghiệm sẽ nghe thấy, sử dụng máy Mac trong Wi-Fi không tin cậy công khai có thể gây hại. Một công cụ như Firesheep 1 đã giúp việc chặn giao tiếp không được mã hóa trở nên rất dễ dàng.

Sử dụng VPN đường hầm đầy đủ để mã hóa tất cả thông tin liên lạc thường được đề cập như một giải pháp kỳ diệu để nghe lén, nhưng tất nhiên điều đó không dễ dàng:

  • Tùy thuộc vào giao thức và cấu hình của kết nối VPN, kết nối có thể giảm dễ dàng hơn. (ví dụ: TLS so với UDP)
  • Kết nối VPN không được thiết lập ngay lập tức khi bạn kết nối với mạng công cộng.

Tôi nghĩ rằng hai điểm cuối quan trọng rất nhiều bởi vì bất cứ khi nào cài đặt mạng của bạn thay đổi, các ứng dụng khác nhau sẽ ngay lập tức nói chuyện với máy chủ của họ - tôi cho rằng đó là configdthông báo cho họ, phải không?

tức là Trước khi đường hầm VPN được thiết lập, hầu hết các quy trình (đang chạy) yêu cầu internet sẽ giao tiếp.

Tôi thấy hai thành phần để trở thành người dùng VPN tốt:

  1. Đảm bảo rằng mọi thứ không được gửi đi rõ ràng trước khi nó được thiết lập.
  2. Đảm bảo mọi thứ không được gửi rõ ràng sau nếu VPN thất bại .

Làm cách nào tôi có thể sử dụng VPN trên máy Mac trong mạng công cộng để hạn chế lưu lượng không được mã hóa trước khi VPN khởi động?


Thật tuyệt khi xem lại điều này - câu hỏi cũ hơn mà tôi đã liên kết dường như tập trung hơn vào cách biết khi nào VPN giảm kết nối so với cách thiết lập mọi thứ để bắt đầu an toàn - vì vậy chúng tôi có thể hưởng lợi từ một số câu hỏi nhọn về thực tiễn để tăng cường bảo mật trong khi sử dụng VPN.
bmike

Câu trả lời:


2

Hãy đặt sang một bên bất kỳ giải pháp nào mà bạn mang đến một phần thứ hai của thiết bị mạng cho vấn đề. Chúng ta cũng hãy để vấn đề dừng lưu lượng sau khi VPN không liên quan đến câu hỏi này, nhưng câu hỏi khác .

Tôi xem vấn đề này như một giải pháp lấy người dùng làm trung tâm và không phải là thứ dễ dàng thực hiện bằng cách sửa đổi hành vi của OS X.

Thiết lập hai tài khoản trên máy Mac của bạn (không cần phải là tài khoản quản trị viên, nhưng nếu có, bạn sẽ không cần tài khoản thứ ba để thay đổi cài đặt hệ thống).

  1. Một tài khoản shell tồn tại để chạy không có gì và chỉ thiết lập kết nối VPN.
  2. Tài khoản chính sẽ chạy các chương trình bạn muốn đảm bảo chỉ có quyền truy cập vào mạng sau khi được bảo mật đúng cách với VPN.

Vì vậy, với việc chuyển đổi người dùng nhanh được kích hoạt, bạn có thể đăng xuất khỏi tài khoản chính. Điều này đảm bảo rằng không có chương trình hoặc quy trình nào từ người dùng đó sẽ tiếp tục chạy trong nền. Hầu hết các ứng dụng OS X đều hoạt động tốt và tạm dừng truy cập mạng khi chúng không có cửa sổ hoạt động trên màn hình, nhưng bạn phải theo dõi và kiểm tra điều này mãi mãi để đảm bảo không có gì xảy ra - việc đăng xuất đơn giản hơn để duy trì.

Giờ đây, bạn cũng có thể thay thế "tài khoản" ở trên bằng HĐH và chạy một hệ thống ảo hóa như Fusion (hoặc Parallels hoặc bất kỳ hệ điều hành nào khác) và chỉ khởi động HĐH khách sau khi HĐH máy chủ đã bảo mật mọi thứ trên VPN. Tùy thuộc vào phần mềm VM bạn chọn, bạn cũng có thể có quyền kiểm soát mạng và có thể bật và tắt quyền truy cập ngay cả khi HĐH khách (hoặc HĐH) đang chạy. Điều này về cơ bản là mô phỏng phần cứng bổ sung mà tôi nói ban đầu tôi sẽ không xem xét.

Tôi hy vọng điều này cho thấy một cách bạn có thể an toàn hơn khi đi du lịch và sử dụng mạng mà bạn không tin tưởng trong khi giảm thiểu rủi ro mà điều này sẽ luôn đòi hỏi. Nếu ai đó sở hữu mạng - họ sở hữu DNS, có thể ghi nhật ký các gói, có thể thử các cuộc tấn công trung gian (MITM) cũng như kiểm tra sâu tất cả các gói của bạn để cố gắng xác định những gì đang chảy bên trong đường hầm VPN.


1
Đây là một câu trả lời khá hợp lý. Sử dụng VM trong tài khoản người dùng thứ hai rất dễ thiết lập. Mặc dù HĐH vẫn có thể cho phép lưu lượng mạng không bảo mật, nhưng điều đó không quan trọng nếu nó nằm trong môi trường hạn chế của tài khoản người dùng dư thừa.
gentmatt

Tôi ước có một nút dễ dàng, nhưng như bạn có thể thấy - việc kiểm soát lưu lượng trước hoặc sau lưu lượng trên lớp kernel không phải là chuyện nhỏ vì OS X được thiết kế để sử dụng bất kỳ đường dẫn nào. HĐH không được thiết kế để tắt mọi thứ, nhưng thiết bị mạng thì có.
bmike

3

Đây là một cách tiếp cận hoàn toàn bên ngoài GUI MacOS X. Do đó, cách tiếp cận vấn đề này sẽ không can thiệp vào bất kỳ cài đặt mạng hoặc VPN nào.

Giả sử tôi muốn sử dụng VPN IPSEC (dựa trên việc sử dụng 500 / udp == isakmp & 50 / ip == đặc biệt).

Tạo một ipfwtệp cấu hình chỉ cho phép các giao thức cần thiết để xây dựng VPN:

/usr/bin/sudo cat <<____eof >/etc/ipfw.vpn.rules
# VPN trafic contention
#
# DHCP
add 00100 permit udp from any to any src-port bootpc dst-port bootps
# DNS
add 01000 permit udp from me to any dst-port domain
add 01010 permit udp from any to me dst-port domain
# isakmp
add 01050 permit udp from me to any dst-port isakmp
add 01060 permit udp from any to me dst-port isakmp
# esp
add 01100 permit esp from me to any
add 01110 permit esp from any to me
# all other ip go to the central black hole
add 20000 deny ip from any to any
____eof

Kiểm tra xem cú pháp của nó có ổn không:

/usr/bin/sudo /sbin/ipfw -n /etc/ipfw.vpn.rules

Cài đặt nó trong kernel:

/usr/bin/sudo /sbin/ipfw /etc/ipfw.vpn.rules

Kiểm tra xem HĐH của bạn có thể khởi động lại không, và lấy địa chỉ IP của nó thông qua DHCP thông thường. Kiểm tra xem hầu hết các giao thức IP có bị chặn không:

ping www.google.com

Tất nhiên, nếu bạn muốn sử dụng VPN trên SSL, bạn sẽ phải điều chỉnh tệp cấu hình này (isakmp + đặc biệt → https).

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.