Trang tải qua đường hầm trong khi quét cổng báo máy chủ không hoạt động, và ý nghĩ đầu tiên là VPN đang chặn gì đó. Thường thì nó không chặn gì mới. Hai phép thử yêu cầu hệ điều hành những khả năng khác nhau, và chỉ một trong hai cần truy cập gói thô. Hãy xác định khả năng nào thất bại trước khi chạm vào đường hầm.

Tách khả năng khỏi đường hầm

Một ứng dụng thông thường yêu cầu nhân mở kết nối TCP, và nhân thực hiện bắt tay mà không cần đặc quyền đặc biệt. Quét thô tự dựng gói, đòi hỏi socket thô hoặc trình điều khiển bắt gói tùy nền tảng. Đây là câu hỏi về quyền và trình điều khiển, và chúng tồn tại dù VPN có kết nối hay không.

Khác biệt này giải thích sự bất đối xứng thường gặp. curl thành công vì đường socket hoạt động, còn quét SYN thất bại vì tiến trình không thể mở socket thô trên giao diện đường hầm. Nó cũng giải thích trường hợp ngược lại, khi quét thô báo bị lọc vì đường đi bỏ gói dò trong khi đường của ứng dụng vẫn tốt.

Không kết quả nào mô tả dịch vụ từ xa. Cả hai mô tả một đường đi dưới một phương pháp, nên hãy gắn phương pháp với kết luận.

Chạy kiểm tra kết nối trên một máy chủ đã được phê duyệt

Chọn máy chủ duy nhất mà công việc của bạn bao phủ, rồi dùng chế độ không cần truy cập thô. Mục tiêu ví dụ ở đây là 198.51.100.24, không gian tài liệu dành riêng cho kiểu minh họa này.

Một dòng, một máy chủ, một cổng, không có giai đoạn khám phá:

nmap -sT -Pn -p 443 --unprivileged 198.51.100.24

-sT chọn kết nối TCP đầy đủ, nên nó đi qua cùng đường nhân mà ứng dụng dùng và không cần trình điều khiển bắt gói. -Pn bỏ qua bước khám phá máy chủ; nmap vẫn thực hiện phân giải tầng liên kết cho các mục tiêu trong phân đoạn cục bộ, nên cờ này không phải lời hứa về lưu lượng sơ bộ bằng không. --unprivileged bảo nmap giả định nó không có quyền thô hay quyền nghe lén, điều này đổi phương pháp và không mang lại gì.

Đọc từng cờ như một thay đổi, không phải một sửa chữa

Coi mỗi tùy chọn là một phát biểu về phương pháp. Không tùy chọn nào trong -sT, -Pn hay --unprivileged thêm tuyến, mở tường lửa từ xa hay xác thực chứng chỉ. Quét kết nối cũng hoàn tất bắt tay thật mà dịch vụ ghi lại, nên kiểm tra được phê duyệt và quét không được phê duyệt trông giống nhau từ máy chủ trừ phạm vi và nhịp độ. Chồng chất tùy chọn cho đến khi đầu ra thay đổi chính là cách ghi lại vấn đề phương pháp như một phát hiện mạng.

Khi đầu ra nói đóng, có thứ gì đó trả lời bằng đặt lại, và đó là phát hiện khác với im lặng. Khi đầu ra nói bị lọc, một thiết bị đã bỏ gói dò hoặc câu trả lời của nó, và VPN có thể chỉ là ngẫu nhiên. Ghi lại cách diễn đạt chính xác, vì phán quyết của giai đoạn khám phá và lỗi ở mức gói dò chỉ ra các tầng khác nhau.

Nếu chế độ đặc quyền thực sự cần thiết, chủ nền tảng quyết định xem quyền, trình điều khiển và bố trí giao diện có được hỗ trợ hay không. Nâng cùng một lệnh gọi không đổi phương pháp của nó.

Dừng ở kết quả truyền tải, rồi kiểm tra dịch vụ

Bắt tay hoàn tất trả lời một câu hỏi về một địa chỉ, cổng, nguồn và thời điểm. Nó không chứng minh phần phụ trợ khỏe mạnh, vì bộ cân bằng tải hoặc proxy phía trước có thể nhận kết nối trong khi ứng dụng phía sau đã dừng.

Tiếp tục với ứng dụng khách của chính dịch vụ để danh tính TLS và hành vi ứng dụng được quan sát như các dữ kiện riêng:

openssl s_client -connect 198.51.100.24:443 -servername staging.example.net </dev/null 2>/dev/null | openssl x509 -noout -subject -dates
curl -sS -o /dev/null -w '%{http_code}\n' https://staging.example.net/health

Một thói quen nữa giữ kết quả hữu ích. Ghi lại lệnh chính xác, địa chỉ nguồn đã dùng và thời gian, vì kết quả truyền tải không có ngữ cảnh đó thì không thể tái tạo hay so sánh.

Nếu chứng chỉ nêu tên máy chủ mà bạn không ngờ tới, truyền tải đã chạy và định tuyến chưa bao giờ là vấn đề; lỗi nằm ở lưu trữ ảo hoặc DNS. Nếu bắt tay thất bại, hãy ghi chuỗi lỗi cục bộ thay vì khái quát về đường hầm. Giữ ghi chú phạm vi bên cạnh kết quả, vì người tiếp theo cần biết phương pháp nào đã tạo ra nó.

Bài viết liên quan