Kết nối Internet từ các điểm truy cập Wi-Fi, tại nơi làm việc hoặc bất kỳ nơi nào khác xa nhà, dữ liệu của bạn có thể gặp rủi ro không đáng có. Bạn có thể dễ dàng định cấu hình bộ định tuyến của mình để hỗ trợ đường hầm an toàn và bảo vệ lưu lượng truy cập trình duyệt từ xa của mình — hãy đọc để biết cách thực hiện.
Là gì và tại sao thiết lập một đường hầm an toàn?
Bạn có thể tò mò tại sao bạn thậm chí muốn thiết lập một đường hầm an toàn từ các thiết bị của bạn đến bộ định tuyến tại nhà của bạn và những lợi ích bạn sẽ gặt hái được từ một dự án như vậy. Hãy đưa ra một vài tình huống khác nhau liên quan đến việc bạn sử dụng Internet để minh họa lợi ích của việc đào hầm an toàn.
Tình huống một: Bạn đang ở một quán cà phê, sử dụng máy tính xách tay của mình để duyệt Internet thông qua kết nối Wi-Fi miễn phí của họ. Dữ liệu rời khỏi modem Wi-Fi của bạn, truyền trong không khí mà không được mã hóa đến nút Wi-Fi trong quán cà phê, sau đó được truyền đến mạng internet lớn hơn. Trong quá trình truyền từ máy tính của bạn đến internet lớn hơn, dữ liệu của bạn được mở rộng. Bất kỳ ai có thiết bị Wi-Fi trong khu vực đều có thể xem xét dữ liệu của bạn. Thật dễ dàng đến mức một đứa trẻ 12 tuổi năng động với một chiếc máy tính xách tay và một bản sao Firesheep có thể lấy thông tin đăng nhập của bạn cho tất cả các cách. Cứ như thể bạn đang ở trong một căn phòng chỉ toàn người nói tiếng Anh, nói chuyện vào điện thoại bằng tiếng Quan Thoại. Khoảnh khắc ai đó nói tiếng Quan Thoại xâm nhập vào (bộ dò tìm Wi-Fi) thì quyền riêng tư giả của bạn bị phá vỡ.
Tình huống hai: Bạn đang ở một quán cà phê, sử dụng máy tính xách tay của mình để duyệt lại Internet thông qua kết nối Wi-Fi miễn phí của họ. Lần này, bạn đã thiết lập một đường hầm được mã hóa giữa máy tính xách tay và bộ định tuyến tại nhà của mình bằng SSH. Lưu lượng truy cập của bạn được định tuyến qua đường hầm này trực tiếp từ máy tính xách tay đến bộ định tuyến tại nhà của bạn, bộ định tuyến đang hoạt động như một máy chủ proxy. Đường ống này không thể xâm nhập đối với những kẻ dò tìm Wi-Fi, những người sẽ không thấy gì ngoài một luồng dữ liệu mã hóa bị cắt xén. Cho dù cơ sở có gian xảo đến đâu, kết nối Wi-Fi không an toàn đến mức nào, dữ liệu của bạn vẫn nằm trong đường hầm được mã hóa và chỉ rời khỏi nó khi nó đã đến kết nối internet gia đình của bạn và thoát ra internet lớn hơn.
Trong tình huống một, bạn đang lướt rộng rãi; trong tình huống hai, bạn có thể đăng nhập vào ngân hàng của mình hoặc các trang web riêng tư khác với sự tự tin như bạn sẽ làm từ máy tính ở nhà.
Mặc dù chúng tôi đã sử dụng Wi-Fi trong ví dụ của mình, nhưng bạn có thể sử dụng đường hầm SSH để bảo đảm kết nối cứng, chẳng hạn như khởi chạy trình duyệt trên mạng từ xa và đục một lỗ xuyên tường lửa để lướt web tự do như bạn làm trên kết nối gia đình.
Nghe có vẻ tốt phải không? Việc thiết lập vô cùng dễ dàng nên không có thời gian như hiện tại — bạn có thể thiết lập và chạy đường hầm SSH của mình trong vòng một giờ.
Những gì bạn cần
Có nhiều cách để thiết lập đường hầm SSH để bảo mật duyệt web của bạn. Đối với hướng dẫn này, chúng tôi đang tập trung vào việc thiết lập đường hầm SSH theo cách dễ dàng nhất có thể với ít phiền phức nhất đối với người dùng có bộ định tuyến gia đình và các máy chạy Windows. Để làm theo hướng dẫn của chúng tôi, bạn sẽ cần những điều sau:
- Một bộ định tuyến chạy Cà chua hoặc là DD-WRT phần sụn đã sửa đổi.
- Một khách hàng SSH như PuTTY .
- Trình duyệt web tương thích với SOCKS như Firefox .
Đối với hướng dẫn của chúng tôi, chúng tôi sẽ sử dụng Tomato nhưng các hướng dẫn gần như giống với những hướng dẫn bạn sẽ làm theo cho DD-WRT, vì vậy nếu bạn đang chạy DD-WRT, hãy làm theo. Nếu bạn chưa sửa đổi chương trình cơ sở trên bộ định tuyến của mình, hãy xem hướng dẫn của chúng tôi để cài đặt DD-WRT và Cà chua trước khi tiếp tục.
Tạo khóa cho đường hầm được mã hóa của chúng tôi
Mặc dù có vẻ kỳ quặc nếu nhảy ngay sang tạo khóa trước khi chúng tôi định cấu hình máy chủ SSH, nhưng nếu chúng tôi có khóa sẵn sàng, chúng tôi sẽ có thể định cấu hình máy chủ trong một lần chuyển.
Tải về gói PuTTY đầy đủ và giải nén nó vào một thư mục mà bạn chọn. Bên trong thư mục, bạn sẽ tìm thấy PUTTYGEN.EXE. Khởi chạy ứng dụng và nhấp vào Khóa -> Tạo cặp khóa . Bạn sẽ thấy một màn hình giống như hình trên; di chuyển chuột xung quanh để tạo dữ liệu ngẫu nhiên cho quá trình tạo khóa. Sau khi quá trình kết thúc, cửa sổ PuTTY Key Generator của bạn sẽ trông giống như thế này; hãy tiếp tục và nhập một mật khẩu mạnh:
Sau khi bạn đã cắm mật khẩu, hãy tiếp tục và nhấp vào Lưu khóa cá nhân . Lưu trữ tệp .PPK kết quả ở một nơi an toàn. Sao chép và dán nội dung của hộp “Khóa công khai để dán…” vào tài liệu TXT tạm thời ngay bây giờ.
Nếu bạn định sử dụng nhiều thiết bị với máy chủ SSH của mình (chẳng hạn như máy tính xách tay, netbook và điện thoại thông minh), bạn cần tạo các cặp khóa cho từng thiết bị. Hãy tiếp tục và tạo, mật khẩu và lưu các cặp khóa bổ sung mà bạn cần ngay bây giờ. Đảm bảo bạn sao chép và dán từng khóa công khai mới vào tài liệu tạm thời của mình.
Định cấu hình bộ định tuyến của bạn cho SSH
Cả Tomato và DD-WRT đều có máy chủ SSH tích hợp sẵn. Điều này thật tuyệt vời vì hai lý do. Đầu tiên, việc truyền mạng vào bộ định tuyến của bạn để cài đặt thủ công một máy chủ SSH và cấu hình nó là một điều rất khó khăn. Thứ hai, vì bạn đang chạy máy chủ SSH trên bộ định tuyến của mình (có thể tiêu thụ ít năng lượng hơn bóng đèn), bạn không bao giờ phải bật máy tính chính của mình chỉ để sử dụng một máy chủ SSH nhẹ.
Mở trình duyệt web trên máy được kết nối với mạng cục bộ của bạn. Điều hướng đến giao diện web của bộ định tuyến của bạn, đối với bộ định tuyến của chúng tôi — Linksys WRT54G chạy Tomato — địa chỉ là http://192.168.1.1 . Đăng nhập vào giao diện web và điều hướng đến Quản trị -> SSH Daemon . Ở đó bạn cần kiểm tra cả hai Kích hoạt khi khởi động và Truy cập từ xa . Bạn có thể thay đổi cổng từ xa nếu bạn muốn nhưng lợi ích duy nhất khi làm như vậy là nó hơi làm xáo trộn lý do cổng mở nếu có ai đó quét cổng của bạn. Bỏ chọn Cho phép đăng nhập mật khẩu . Chúng tôi sẽ không sử dụng đăng nhập bằng mật khẩu để truy cập bộ định tuyến từ xa, chúng tôi sẽ sử dụng một cặp khóa.
Dán (các) khóa công khai mà bạn đã tạo trong phần cuối của hướng dẫn vào Authorized_keys cái hộp. Mỗi khóa phải là một mục nhập riêng được phân tách bằng dấu ngắt dòng. Phần đầu tiên của chìa khóa ssh-rsa Là rất quan trọng. Nếu bạn không bao gồm nó với mỗi khóa công khai, chúng sẽ có vẻ không hợp lệ với máy chủ SSH.
Nhấp chuột Bắt đầu bây giờ rồi cuộn xuống cuối giao diện và nhấp vào Tiết kiệm . Tại thời điểm này, máy chủ SSH của bạn đã hoạt động.
Định cấu hình máy tính từ xa của bạn để truy cập máy chủ SSH của bạn
Đây là nơi điều kỳ diệu xảy ra. Bạn đã có một cặp khóa, bạn đã thiết lập và chạy một máy chủ, nhưng không có cái nào có giá trị trừ khi bạn có thể kết nối từ xa từ trường và đường hầm vào bộ định tuyến của mình. Đã đến lúc phá bỏ net book đáng tin cậy của chúng tôi chạy Windows 7 và bắt đầu hoạt động.
Đầu tiên, sao chép thư mục PuTTY bạn đã tạo sang máy tính khác của mình (hoặc đơn giản là Tải xuống và giải nén lại). Từ đây, tất cả các hướng dẫn đều tập trung vào máy tính từ xa của bạn. Nếu bạn chạy PuTTy Key Generator trên máy tính tại nhà, hãy đảm bảo rằng bạn đã chuyển sang máy tính di động của mình trong phần còn lại của hướng dẫn. Trước khi giải quyết, bạn cũng cần đảm bảo rằng bạn có bản sao của tệp .PPK mà bạn đã tạo. Sau khi bạn đã trích xuất PuTTy và có .PPK, chúng tôi đã sẵn sàng tiếp tục.
Khởi chạy PuTTY. Màn hình đầu tiên bạn sẽ thấy là Phiên họp màn. Tại đây, bạn cần nhập địa chỉ IP của kết nối Internet gia đình. Đây không phải là IP của bộ định tuyến của bạn trên mạng LAN cục bộ, đây là IP của modem / bộ định tuyến của bạn khi thế giới bên ngoài nhìn thấy. Bạn có thể tìm thấy nó bằng cách xem trang Trạng thái chính trong giao diện web của bộ định tuyến. Thay đổi cổng thành 2222 (hoặc bất cứ thứ gì bạn đã thay thế trong quá trình cấu hình SSH Daemon). Bảo đảm SSH được kiểm tra . Tiếp tục và đặt tên cho phiên của bạn để bạn có thể lưu nó để sử dụng trong tương lai. Chúng tôi đặt tên là Tomato SSH của chúng tôi.
Điều hướng, qua ngăn bên trái, xuống Kết nối -> Auth . Tại đây, bạn cần nhấp vào nút Browse và chọn tệp .PPK bạn đã lưu và chuyển đến máy từ xa của mình.
Khi ở trong menu phụ SSH, tiếp tục đi xuống SSH -> Đường hầm . Ở đây, chúng tôi sẽ cấu hình PuTTY để hoạt động như máy chủ proxy cho máy tính di động của bạn. Chọn cả hai hộp dưới Cổng chuyển tiếp . Dưới đây, trong Thêm cổng chuyển tiếp mới , nhập 80 cho Cổng nguồn và địa chỉ IP của bộ định tuyến của bạn cho Nơi Đến . Kiểm tra Tự động và Động sau đó nhấn vào Thêm vào .
Kiểm tra kỹ xem một mục đã xuất hiện trong Cổng chuyển tiếp cái hộp. Điều hướng trở lại Phiên phần và nhấp vào Tiết kiệm một lần nữa để lưu tất cả công việc cấu hình của bạn. Bây giờ bấm vào Mở . PuTTY sẽ khởi chạy một cửa sổ đầu cuối. Bạn có thể nhận được cảnh báo tại thời điểm này cho biết rằng khóa máy chủ của máy chủ không có trong sổ đăng ký. Hãy tiếp tục và xác nhận rằng bạn tin tưởng máy chủ. Nếu lo lắng về điều này, bạn có thể so sánh chuỗi vân tay mà nó cung cấp cho bạn trong thông báo cảnh báo với dấu vân tay của khóa bạn đã tạo bằng cách tải nó lên trong PuTTY Key Generator. Khi bạn đã mở PuTTY và nhấp qua cảnh báo, bạn sẽ thấy một màn hình giống như sau:
Tại thiết bị đầu cuối, bạn sẽ chỉ cần làm hai việc. Tại dấu nhắc đăng nhập, gõ nguồn gốc . Tại lời nhắc cụm mật khẩu nhập mật khẩu khóa RSA của bạn —Đây là mật khẩu bạn đã tạo vài phút trước khi tạo khóa chứ không phải mật khẩu của bộ định tuyến. Vỏ bộ định tuyến sẽ tải và bạn đã hoàn tất tại dấu nhắc lệnh. Bạn đã hình thành kết nối an toàn giữa PuTTY và bộ định tuyến tại nhà của mình. Bây giờ chúng tôi cần hướng dẫn các ứng dụng của bạn cách truy cập PuTTY.
Lưu ý: Nếu bạn muốn đơn giản hóa quy trình với cái giá là giảm một chút bảo mật, bạn có thể tạo cặp khóa mà không cần mật khẩu và đặt PuTTY tự động đăng nhập vào tài khoản gốc (bạn có thể chuyển đổi cài đặt này trong Kết nối -> Dữ liệu -> Đăng nhập tự động ). Điều này làm giảm quá trình kết nối PuTTY để chỉ cần mở ứng dụng, tải hồ sơ và nhấp vào Mở.
Định cấu hình trình duyệt của bạn để kết nối với PuTTY
Tại thời điểm này trong hướng dẫn, máy chủ của bạn đã được thiết lập và chạy, máy tính của bạn được kết nối với nó và chỉ còn một bước nữa. Bạn cần yêu cầu các ứng dụng quan trọng sử dụng PuTTY làm máy chủ proxy. Bất kỳ ứng dụng nào hỗ trợ SOCKS giao thức có thể được liên kết với PuTTY — chẳng hạn như Firefox, mIRC, Thunderbird và uTorrent, để đặt tên cho một số — nếu bạn không chắc liệu ứng dụng có hỗ trợ SOCKS hay không, hãy tìm hiểu kỹ trong menu tùy chọn hoặc tham khảo tài liệu. Đây là một yếu tố quan trọng không thể bỏ qua: tất cả lưu lượng truy cập của bạn không được chuyển qua proxy PuTTY theo mặc định; nó phải được gắn vào máy chủ SOCKS. Ví dụ: bạn có thể có một trình duyệt web mà bạn đã bật SOCKS và một trình duyệt web mà bạn chưa bật — cả hai trên cùng một máy — và một trình duyệt sẽ mã hóa lưu lượng truy cập của bạn và một trình duyệt thì không.
Vì mục đích của chúng tôi, chúng tôi muốn bảo mật trình duyệt web của mình, Firefox Portable, đủ đơn giản. Quá trình cấu hình cho Firefox trên thực tế chuyển thành bất kỳ ứng dụng nào mà bạn cần cắm thông tin SOCKS vào. Khởi chạy Firefox và điều hướng đến Tùy chọn -> Nâng cao -> Cài đặt . Từ trong Cài đặt kết nối menu, chọn Cấu hình proxy thủ công và trong trình cắm Máy chủ SOCKS 127.0.0.1 —Bạn đang kết nối với ứng dụng PuTTY chạy trên máy tính cục bộ của mình, vì vậy bạn phải đặt IP máy chủ cục bộ, không phải IP của bộ định tuyến như bạn đã đặt ở mọi vị trí cho đến nay. Đặt cổng thành 80 và nhấp vào ĐỒNG Ý.
Chúng tôi có một điều chỉnh nhỏ nhỏ cần áp dụng trước khi hoàn thành. Firefox, theo mặc định, không định tuyến các yêu cầu DNS thông qua máy chủ proxy. Điều này có nghĩa là lưu lượng truy cập của bạn sẽ luôn được mã hóa nhưng ai đó theo dõi kết nối sẽ thấy tất cả các yêu cầu của bạn. Họ biết bạn đang ở Facebook.com hoặc Gmail.com nhưng họ sẽ không thể nhìn thấy bất kỳ thứ gì khác. Nếu bạn muốn định tuyến các yêu cầu DNS của mình thông qua SOCKS, bạn cần phải bật nó lên.
Kiểu about: config trong thanh địa chỉ, sau đó nhấp vào "Tôi sẽ cẩn thận, tôi hứa!" nếu bạn nhận được một cảnh báo nghiêm khắc về cách bạn có thể làm hỏng trình duyệt của mình. Dán network.proxy.socks_remote_dns vào Bộ lọc: và sau đó nhấp chuột phải vào mục nhập cho network.proxy.socks_remote_dns và Chuyển đổi nó để Thật . Từ đây, cả yêu cầu duyệt web và DNS của bạn sẽ được gửi qua đường hầm SOCKS.
Mặc dù chúng tôi đang định cấu hình trình duyệt của mình cho SSH mọi lúc, nhưng bạn có thể muốn dễ dàng chuyển đổi cài đặt của mình. Firefox có một phần mở rộng hữu ích, FoxyProxy , điều này giúp bạn dễ dàng bật và tắt các máy chủ proxy của mình. Nó hỗ trợ rất nhiều tùy chọn cấu hình như chuyển đổi giữa các proxy dựa trên miền bạn đang sử dụng, trang web bạn đang truy cập, v.v. Nếu bạn muốn có thể dễ dàng và tự động tắt dịch vụ proxy của mình dựa trên việc bạn đang ở chẳng hạn như ở nhà hoặc ở xa, FoxyProxy đều có bạn. Người dùng Chrome sẽ muốn kiểm tra Proxy Switchy! cho chức năng tương tự.
Hãy xem liệu mọi thứ có hoạt động như kế hoạch không? Để kiểm tra mọi thứ, chúng tôi đã mở hai trình duyệt: Chrome (nhìn bên trái) không có đường hầm và Firefox (bên phải) mới được định cấu hình để sử dụng đường hầm.
Ở bên trái, chúng tôi thấy địa chỉ IP của nút Wi-Fi mà chúng tôi đang kết nối và ở bên phải, nhờ đường hầm SSH của chúng tôi, chúng tôi thấy địa chỉ IP của bộ định tuyến ở xa của chúng tôi. Tất cả lưu lượng truy cập Firefox đang được định tuyến thông qua máy chủ SSH. Sự thành công!
Có một mẹo hoặc thủ thuật để đảm bảo lưu lượng truy cập từ xa? Sử dụng máy chủ SOCKS / SSH với một ứng dụng cụ thể và yêu thích nó? Cần trợ giúp để tìm ra cách mã hóa lưu lượng truy cập của bạn? Hãy nghe về nó trong các bình luận.