Giám sát các peer VPN mà không ghi lại nơi họ duyệt web
Khả dụng cần bốn trường, không phải một bản ghi. Đọc handshake và bộ đếm theo khoảng thời gian được ghi lại, giữ nhãn ổn định và đặt quy tắc lưu trữ.
Giám sát một peer VPN cần bốn dữ kiện, và không dữ kiện nào là điểm đến. Đường hầm có hoạt động không, lần cuối trao đổi lưu lượng là khi nào, những khóa nào tham gia và đã di chuyển bao nhiêu là đủ cho khả dụng. Bất cứ điều gì vượt quá đó là bản ghi về một người, và đó nên là quyết định có chủ đích thay vì tác dụng phụ của việc mở một trang trạng thái. Hãy bắt đầu từ câu hỏi bạn phải trả lời, rồi chọn đầu ra nhỏ nhất trả lời câu hỏi đó.
Quyết định câu hỏi trước công cụ
Trước hết hãy viết câu hỏi vận hành: peer này có kết nối không, và có đang chuyển lưu lượng không? Câu hỏi đó cần một góc nhìn trực tiếp, và góc nhìn trực tiếp không có vấn đề lưu trữ. Câu hỏi thứ hai, peer có kết nối lúc 02:00 thứ Ba tuần trước không, cần một chuỗi được lưu và do đó cần một quyết định lưu trữ. Tách hai điều đó ra chính là toàn bộ thiết kế, vì góc nhìn trực tiếp rẻ trong khi chuỗi được lưu biến thành cuộc trò chuyện về bảo vệ dữ liệu.
Cũng hãy giữ kiểm tra sức khỏe tách khỏi đầu ra trạng thái. Một handshake gần đây chứng minh đường hầm đã thương lượng, không phải ứng dụng riêng phía sau hoạt động, nên hãy kiểm tra ứng dụng bằng một bài kiểm tra được cấp phép thay vì suy ra từ bộ đếm. Khi bài kiểm tra thất bại và handshake còn mới, vấn đề nằm bên kia đường hầm.
Đọc ba trường trả lời câu hỏi đó
Đầu ra trạng thái đơn giản của WireGuard chứa giao diện, khóa công khai, điểm cuối, handshake gần nhất và bộ đếm truyền tải. Sự hiện diện cần khóa công khai và handshake gần nhất; nếu cần, thêm bộ đếm byte để thấy chuyển động. Điểm cuối không cần cho sự hiện diện và là trường đầu tiên nên bỏ, vì nó xác định thiết bị kết nối từ đâu. Trang hướng dẫn mô tả từng trường công cụ in ra, và đủ ngắn để đọc một lần:
wg show
wg show wg0 latest-handshakes
Đọc những con số đó như tuổi chứ không phải boolean. Một handshake chỉ còn hiện hành so với khoảng làm mới khóa của chính giao thức, và một bộ đếm không nhúc nhích có thể nghĩa là peer nhàn rỗi chứ không phải peer hỏng. Giữ cả hai trong cùng một góc nhìn để tuổi và chuyển động được đọc cùng nhau.
Chọn khoảng thời gian bạn có thể bảo vệ
Mỗi mẫu trạng thái là một bản ghi, nên khoảng thời gian là một quyết định lưu trữ mang nhãn giám sát. Mẫu mười giây cho chi tiết mịn và nhân số hàng được lưu, trong khi mẫu mỗi phút thường đủ cho khả dụng với một phần sáu chi phí. Chọn khoảng thời gian từ thời gian phản hồi bạn đã hứa chứ không phải từ những gì công cụ làm được. Sau đó viết con số bên cạnh bảng điều khiển.
Với OpenVPN, tiện ích trạng thái ghi một tệp theo khoảng thời gian đã cấu hình. Trong cấu hình máy chủ, nó trông như thế này status /var/log/openvpn-status.log 60, trong đó con số cuối là số giây giữa các lần ghi lại, và tệp được thay thế chứ không được nối thêm. Chi tiết đó quan trọng: tệp bị thay thế không có lịch sử, trong khi bộ thu nối thêm sẽ tạo ra lịch sử.
Xác nhận rằng bộ thu cũng tôn trọng khoảng thời gian. Một công cụ lấy mẫu mỗi giây và lưu một hàng mỗi phút vẫn đọc mỗi giây.
Giữ nhãn ổn định và ánh xạ bị hạn chế
Khóa công khai xác định quan hệ thiết bị ngay cả khi không gắn tên, nên hãy coi khóa là dữ liệu cá nhân chứ không phải định danh mờ. Gắn nhãn các peer bằng định danh nội bộ ổn định tồn tại qua các lần kết nối lại, và giữ ánh xạ từ định danh sang người ở một nơi hạn chế. Một bảng điều khiển ghi chuỗi thời gian là bản ghi được lưu ngay cả khi VPN không giữ tệp riêng. Khi bảng điều khiển là kho duy nhất, quy tắc lưu trữ áp dụng ở đó.
Cũng hãy xem lại đường xuất, vì một CSV được sao chép sống lâu hơn hệ thống đã tạo ra nó. Khả dụng tổng hợp thường đủ cho một báo cáo: tỷ lệ peer có handshake trong cửa sổ trả lời câu hỏi vận hành mà không liệt kê ai đã kết nối khi nào.
Ghi lại những gì bạn thu thập và những gì không
Viết mô tả thu thập bằng ngôn ngữ đơn giản: trường nào, từ giao diện nào, theo khoảng thời gian nào, lưu ở đâu, giữ bao lâu và ai có thể đọc. Đặt nó cạnh runbook chứ không phải trong kho chính sách mà không ai mở trong sự cố. Mô tả cũng nên nói những gì giám sát không thể thấy, vì đó chính là điều ngăn ai đó cho rằng không có dữ liệu duyệt web nghĩa là không có bản ghi.
Xem lại cửa sổ lưu trữ mỗi khi giám sát thay đổi, vì một trường mới âm thầm kéo dài những gì được giữ. Sau đó xóa những gì mô tả nói bạn xóa, và xác minh rằng việc xóa thực sự đã diễn ra.