Danh sách chặn của Nebula: hãy tự phân phối nó, hải đăng sẽ không làm thế
Một mục trong danh sách chặn chỉ áp dụng trên các máy chủ đã tải nó. Hãy so sánh việc phân phối danh sách với việc xoay CA, rồi kiểm tra một peer bị từ chối và một peer đang hoạt động.
Việc thực thi danh sách chặn là thuộc tính của máy chủ đang kiểm tra, không phải của chứng chỉ được kiểm tra. Một máy chưa bao giờ tải mục đó vẫn tiếp tục chấp nhận danh tính, và không có gì trong bắt tay cảnh báo bạn rằng hai peer không đồng ý với nhau. Bản sửa rẻ và bản sửa đắt cho một thông tin đăng nhập bị lộ khác nhau về phạm vi và khả năng đảo ngược, nên hãy chọn có chủ đích. Các phần dưới đây đề cập mục đó làm gì, nơi phải phân phối nó, khi nào xoay là câu trả lời tốt hơn, và cách chứng minh một trong hai đã hiệu quả.
Một mục trong danh sách chặn thực sự làm gì
Cấu hình PKI liệt kê các dấu vân tay mà máy chủ phải từ chối dù chứng chỉ được ký hợp lệ và chưa hết hạn. Việc thực thi diễn ra cục bộ, dựa trên danh sách mà máy chủ đã tải khi dịch vụ khởi động. Không có gì của mục đó đi theo bên trong chứng chỉ, nên một peer không thể biết quyết định từ thông tin đăng nhập được hiển thị cho nó. Đó là lý do hải đăng không có vai trò gì ở đây: hải đăng giúp các peer tìm thấy nhau và chuyển tiếp lưu lượng ở nơi đường trực tiếp thất bại. Chúng là lớp khám phá và chuyển tiếp, không phải kênh phân phối cấu hình.
Cập nhật một máy sẽ thay đổi quyết định của máy đó và để mọi peer khác y như cũ. Một peer tin tưởng cơ quan ký và chưa bao giờ thấy mục đó không có lý do từ chối bất cứ điều gì. Vì vậy kiểm tra thu hồi bằng cách nhìn vào hải đăng chẳng chứng minh gì, bởi thành phần bạn đang xem chưa bao giờ được yêu cầu thực thi danh sách.
Xác định chứng chỉ, không phải thiết bị
Dùng dấu vân tay của thông tin đăng nhập bạn định từ chối, vì tên máy chủ, nhãn thiết bị hay địa chỉ hiện tại hôm nay nhận diện một máy và tháng sau là thứ khác. Không chuỗi nào trong số đó xuất hiện trong danh sách chặn, và không chuỗi nào sống sót qua lần cài đặt lại. In chứng chỉ, đọc dấu vân tay, và kiểm tra rằng nó thuộc về thông tin đăng nhập đang được cho nghỉ hưu chứ không phải bản thay thế của nó. Đọc cả hai tệp quan trọng khi bản thay thế đã được cấp, vì chứng chỉ cũ và mới có thể chia sẻ một tên và khác nhau ở mọi trường khác.
Ghi lại dấu vân tay nào đã bị chặn và khi nào, để lần kiểm toán sau phân biệt một thay đổi đã hoàn tất với một thay đổi dự định. Cũng lưu ý điều mục đó không làm: nó không vô hiệu hóa cơ quan ký và không ngăn một chứng chỉ tương lai từ cơ quan đó được chấp nhận. Chặn chứng chỉ máy chủ và thay thế một cơ quan bị xâm phạm là những thao tác khác nhau với hậu quả khác nhau.
nebula-cert print -path /etc/nebula/host.crt
pki:
blocklist:
- "a1b2c3d4e5f6"
Phân phối nó như mọi cấu hình khác
Coi danh sách là cấu hình có cơ chế phân phối, không phải tệp mà ai đó sửa khi nhớ ra. Đẩy toàn bộ danh sách thay vì một delta, để máy chủ bỏ lỡ lần cập nhật trước đó hội tụ thay vì tích lũy khoảng trống. Tài liệu PKI của Nebula khuyến nghị đúng điều đó, và lời khuyên đáng được làm theo nguyên văn thay vì biến nó thành một quy trình thủ công.
Xác nhận rằng dịch vụ đang chạy đã tải lại nội dung, không chỉ rằng tệp trên đĩa đã thay đổi. Theo dõi những máy nào đã áp dụng thay đổi và giữ danh sách còn tồn đọng trong tầm nhìn cho đến khi trống. Một laptop đóng một tuần là peer chưa bao giờ biết quyết định, và nó có thể kết nối lại từ một mạng mà không ai ngờ tới. Ghi lại phương thức phân phối bên cạnh dấu vân tay, vì lần thu hồi tiếp theo sẽ dùng lại nó và lần đầu chính là nơi quy trình được gỡ lỗi.
Danh sách chặn hay xoay cơ quan
Một mục trong danh sách chặn thì hẹp: một danh tính ngừng hoạt động và mọi thứ khác vẫn tiếp tục. Xoay cơ quan ký thì rộng: mọi chứng chỉ nó đã cấp trở nên không đáng tin, và mọi máy chủ cần thông tin đăng nhập mới và một neo tin cậy mới. Cái đầu là thu hồi có mục tiêu, cái sau là di chuyển, nên chúng cần sự phê duyệt khác nhau và cửa sổ bảo trì khác nhau. Bảng đặt hai cách cạnh nhau về phạm vi, công sức và khả năng đảo ngược.
| Question | Blocklist entry | Authority rotation |
|---|---|---|
| What stops working | One identity | Every certificate from that authority |
| Fleet work | Push one file and confirm a reload | New credentials and a new trust anchor everywhere |
| Reversible | Yes, remove the line | No, the old authority stays distrusted |
| Fits | A lost or stolen device | A leaked authority key |
Một laptop bị mất cần danh sách chặn, vì bán kính ảnh hưởng là một danh tính và thay đổi có thể đảo ngược nếu bạn chặn nhầm dấu vân tay. Một khóa cơ quan bị rò rỉ cần xoay, vì danh sách chặn không giúp được với những chứng chỉ chưa được cấp. Giữa hai thái cực đó, hãy hỏi liệu thông tin đăng nhập bị lộ có thể đã ký thứ gì khác không, vì một cơ quan là nhiều hơn một máy chủ.
Viết quyết định xuống trước một sự cố, vì lựa chọn dưới áp lực có xu hướng mặc định tạo ra phương án rộng. Dù chọn con đường nào, hạng mục công việc còn lại vẫn giống nhau: chứng minh việc thực thi đã xảy ra trên những máy chủ quan trọng. Ghi lại dấu vân tay và ngày tháng ngay lúc đó chính là điều làm cho bằng chứng trở nên khả thi về sau.
Kiểm tra việc từ chối và phần còn lại
Kết nối từ danh tính bị chặn và xác nhận thất bại, rồi kết nối từ một peer được ủy quyền và xác nhận nó vẫn đến được thứ nó cần. Một thay đổi làm hỏng mọi người không phải là thu hồi thành công. Làm cả hai từ phiên mới, vì trạng thái đã cache có thể che giấu kết quả.
Kiểm tra xem một phiên đã thiết lập có kết thúc sau thay đổi không, và ghi lại hành vi cho phiên bản và cấu hình của bạn thay vì cho rằng việc sửa một tệp sẽ kết thúc bất cứ điều gì. Tùy chọn disconnect_invalid bao gồm các client có chứng chỉ hết hạn hoặc không hợp lệ, nên hãy xác nhận nó áp dụng thế nào cho trường hợp của bạn trước khi dựa vào nó. Nếu việc kết thúc ngay lập tức là yêu cầu, hãy kiểm tra riêng điều đó và ghi lại những gì bạn quan sát. Sau đó lặp lại kiểm tra sau khi khởi động lại, vì một máy chủ chỉ thực thi danh sách đến lần khởi động lại tiếp theo có vấn đề phân phối mà lần kiểm tra đầu đã che giấu. Một hải đăng khỏe mạnh cho bạn biết việc khám phá hoạt động, không phải rằng peer nào đó đã áp dụng chính sách.