Bảo mật & quyền riêng tư

Công cụ mới của Forgejo giúp xác thực các giao thức bảo mật email cho máy chủ tự quản lý

Forgejo đã phát hành mailcheck, một tiện ích dòng lệnh dành cho quản trị viên hệ thống để kiểm tra bản ghi SPF, DKIM, DMARC và TLSA mà không cần gửi email thực tế.

Server rack with green validation checkmarks
Ảnh minh họa tạo riêng cho bài viết

Bài được dịch tự động từ bản gốc tiếng Anh.

Đội ngũ Sig-I/O tại Forgejo vừa phát hành một tiện ích mã nguồn mở mới có tên là mailcheck, được thiết kế đặc biệt cho các quản trị viên hệ thống đang tự quản lý hạ tầng email. Được công bố vào ngày 5 tháng 10 năm 2026, công cụ dòng lệnh này cho phép người vận hành kiểm tra các giao thức bảo mật email quan trọng bao gồm SPF, DKIM, DMARC và TLSA mà không gặp rủi ro khi gửi tin nhắn thử nghiệm. Nó cung cấp một cách nhẹ nhàng để chẩn đoán các lỗi cấu hình thường dẫn đến vấn đề về khả năng phân phối hoặc lỗ hổng bảo mật trong môi trường tự quản lý.

Chuyện gì đã xảy ra

Bản phát hành giới thiệu một công cụ chẩn đoán chuyên dụng thực hiện kiểm tra chính sách DNS và thử nghiệm kết nối SMTP. Khác với các trình mô phỏng xác thực email quy mô lớn, mailcheck tập trung vào việc xác thực cú pháp và sự tồn tại của các bản ghi DNS chi phối cách các máy chủ khác xử lý thư đến từ tên miền của bạn. Công cụ kiểm tra tính hợp lệ về cú pháp và giới hạn tra cứu của bản ghi Sender Policy Framework (SPF), xác minh mã hóa khóa công khai DomainKeys Identified Mail (DKIM) và xem xét chính sách Domain-based Message Authentication, Reporting, and Conformance (DMARC).

Về mặt bảo mật truyền tải, công cụ xem xét các bản ghi Transport Layer Security Authentication (TLSA), vốn là một phần của giao thức DNS-based Authentication of Named Entities (DANE). Nó kết nối tới cổng 25 của máy chủ thư mục tiêu để xác minh tính khả dụng của SMTP và hỗ trợ STARTTLS. Công cụ tách biệt việc xác minh chứng chỉ khỏi quá trình bắt tay TLS, cho phép nó kiểm tra các chứng chỉ không được tin cậy công khai nhưng có thể hợp lệ trong ngữ cảnh DANE. Sự khác biệt này rất quan trọng đối với các quản trị viên dựa vào DANE để xác thực thay vì các Tổ chức cấp chứng chỉ (Certificate Authorities) truyền thống.

Tiện ích xuất kết quả bằng cách sử dụng các mã thoát chuẩn Nagios, giúp dễ dàng tích hợp vào các ngăn xếp giám sát hiện có. Trạng thái 0 biểu thị OK, 1 là WARNING, 2 là CRITICAL và 3 là UNKNOWN. Trạng thái tổng thể phản ánh kết quả nghiêm trọng nhất được tìm thấy trong quá trình kiểm tra. Ví dụ, nếu SPF hợp lệ nhưng không có bản ghi TLSA nào tồn tại, công cụ sẽ trả về trạng thái WARNING kèm theo các số liệu chi tiết như thời lượng kết nối tính bằng mili giây.

Chi tiết chính

  • Công cụ sử dụng thư viện github.com/miekg/dns (v1.1.70) cho các truy vấn DNS, hỗ trợ EDNS0 và các tính năng liên quan đến DNSSEC.
  • Kiểm tra SPF xác thực cú pháp bản ghi và giới hạn mười lần tra cứu DNS nhưng không mô phỏng đệ quy mọi IP người gửi có thể.
  • Xác thực DKIM yêu cầu nhập selector thủ công, vì DNS không cung cấp phương pháp phổ quát để liệt kê tất cả các selector.
  • Kiểm tra DMARC xác thực các tag bản ghi và quay lại bản ghi của tên miền tổ chức nếu không có bản ghi nào tồn tại cho subdomain cụ thể.
  • Khớp TLSA hỗ trợ các mức sử dụng 2 và 3, coi các bản ghi là an toàn chỉ nếu tra cứu MX cũng được bảo mật bởi DNSSEC.
  • Phiên bản TLS tối thiểu mặc định là 1.2, khiến các máy chủ chỉ hỗ trợ các phiên bản cũ như 1.0 hoặc 1.1 sẽ thất bại trong bài kiểm tra.

Bối cảnh

Bảo mật email phụ thuộc nhiều vào các bản ghi DNS để ngăn chặn giả mạo và đảm bảo truyền tải mã hóa. SPF cho các máy chủ nhận biết những địa chỉ IP nào được ủy quyền gửi thư cho một tên miền. DKIM thêm chữ ký số vào email, cho phép người nhận xác minh rằng tin nhắn không bị thay đổi trong quá trình truyền. DMARC kết hợp hai yếu tố này, chỉ dẫn cho người nhận cách xử lý nếu email thất bại trong kiểm tra SPF hoặc DKIM, chẳng hạn như từ chối hoặc đánh dấu là spam.

DANE và TLSA nâng cao hơn nữa bằng cách liên kết các chứng chỉ TLS với bản ghi DNS. Điều này ngăn chặn các cuộc tấn công man-in-the-middle, nơi kẻ tấn công có thể trình bày một chứng chỉ hợp lệ nhưng không được ủy quyền. Tuy nhiên, DANE phụ thuộc vào DNSSEC (Domain Name System Security Extensions) để đảm bảo rằng chính các bản ghi DNS không bị can thiệp. Mailcheck báo cáo trạng thái DNSSEC dựa trên bit Authenticated Data (AD) được trả về bởi resolver đệ quy, nghĩa là nó tin tưởng vào việc xác minh của resolver thay vì tự thực hiện toàn bộ chuỗi xác minh DNSSEC.

Tại sao điều này quan trọng

Đối với các đội ngũ chạy phần mềm tự quản lý, khả năng phân phối email là một điểm đau phổ biến. Các bản ghi SPF cấu hình sai có thể khiến thông báo hợp lệ rơi vào thư mục spam, trong khi thiếu chính sách DMARC làm cho tên miền dễ bị tổn thương trước các cuộc tấn công lừa đảo. Các phương pháp kiểm tra truyền thống thường liên quan đến việc gửi email thực tế tới các dịch vụ bên ngoài như Gmail hoặc Outlook, điều này chậm chạp, thiếu chính xác và có thể kích hoạt giới hạn tốc độ hoặc bộ lọc lạm dụng. Mailcheck cung cấp một cách xác định để kiểm tra cấu hình cục bộ trước khi triển khai thay đổi lên các vùng DNS sản xuất.

Hơn nữa, việc tách biệt xác minh chứng chỉ khỏi quá trình bắt tay TLS có ý nghĩa quan trọng đối với các máy chủ thư nội bộ hoặc riêng tư. Các quản trị viên thường sử dụng chứng chỉ tự ký hoặc CA riêng cho giao tiếp nội bộ. Các công cụ tiêu chuẩn có thể đánh dấu chúng là lỗi, nhưng mailcheck cho phép kiểm tra các chứng chỉ này so với bản ghi TLSA, hỗ trợ các kiến trúc nội bộ an toàn không dựa vào chuỗi tin cậy công khai. Điều này biến nó thành một tài sản giá trị cho các môi trường lai, nơi một phần luồng thư là công khai và một phần là riêng tư.

Bạn có thể làm gì

  • Cài đặt mailcheck từ kho lưu trữ Forgejo và chạy nó trên tên miền của bạn để thiết lập cơ sở dữ liệu về tình trạng bảo mật email hiện tại.
  • Sử dụng cờ --dkim với các selector đã biết để xác minh rằng khóa công khai của bạn được công bố đúng cách và định dạng chính xác.
  • Tích hợp công cụ vào pipeline CI/CD hoặc hệ thống giám sát của bạn bằng cách sử dụng các mã thoát tương thích Nagios cho cảnh báo tự động.
  • Chỉ định cờ --dns tới một resolver đệ quy đáng tin cậy nếu bạn yêu cầu báo cáo trạng thái DNSSEC chính xác cho DANE.
  • Kiểm tra bằng cách trỏ tới các máy chủ đích để đảm bảo cấu hình phù hợp trước khi đưa vào môi trường sản xuất.

Tin khác

Bảo mật & quyền riêng tư

Tên miền giữ chỗ và các lỗ hổng Citrix đang bị khai thác làm nổi bật rủi ro chuỗi cung ứng

Tin tặc đã đăng ký một tên miền giữ chỗ phổ biến trong tài liệu để phát tán mã độc, trong khi Citrix phải vá khẩn cấp các lỗ hổng nghiêm trọng đang bị khai thác. Những sự cố này tiết lộ những rủi ro tiềm ẩn trong cơ sở hạ tầng tự quản lý (self-hosted).

Tất cả tin