무엇을 실행하나
종합 진단은 도메인 이름 하나를 받아 조회 아홉 개를 동시에 실행합니다. 내 브라우저가 아니라 DechoNet 서버에서 실행됩니다. 각 조회는 개별 도구와 같은 조회이고, 패널마다 자세히 볼 수 있도록 해당 도구로 가는 링크가 있습니다.
| 영역 | 보는 것 | 문제로 보고하는 것 |
|---|---|---|
| RDAP | 등록 정보: 등록기관, 상태, 만료일 | 만료 30일 이내나 client hold(경고), pending delete(심각) |
| DNS | A/AAAA, MX, SPF, DMARC, DNSSEC, 리졸버 간 응답 비교 | A/AAAA 레코드 없음(심각), MX·SPF·DMARC 없음이나 리졸버마다 A 레코드가 다름(경고) |
| SSL | 입력한 이름의 443 포트 인증서 | 만료, 신뢰할 수 없는 체인, TLS 1.0/1.1(심각), 30일 이내 만료, 이름 불일치, HSTS 없음(경고) |
| HTTP | https://에 이름을 붙여 요청, 리다이렉트는 최대 10번까지 따라감 | 연결 실패, 리다이렉트 루프, 502·503(심각), 리다이렉트 3번 이상, 403, 404, CSP 없음이나 약함, HSTS 없음, Server·X-Powered-By 헤더(경고) |
| MX, SPF 문법과 조회 횟수, DMARC 정책, 흔한 셀렉터의 DKIM, 메일 서버의 블랙리스트 등재 | MX 없음이나 블랙리스트 등재(심각), SPF·DKIM·DMARC 없음, DMARC p=none, SPF 조회 횟수 초과(경고) | |
| Propagation | 공개 리졸버 6곳의 A 레코드 | 어디에도 레코드 없음(심각), 응답 불일치(경고) |
| Ports | 흔히 쓰는 TCP 포트 15개 | FTP 21, SMTP 25, MySQL 3306, PostgreSQL 5432, RDP 3389가 열려 있음(경고) |
| Reverse DNS | 첫 번째 IP 주소의 PTR 레코드 | PTR 없음, 또는 PTR이 다시 그 IP로 해석되지 않음(경고) |
| ASN | 첫 번째 IP의 네트워크와 광고 중인 프리픽스 | 네트워크를 찾을 수 없음(심각), 광고 중인 프리픽스 없음(경고) |
그 밖에도 패널에는 참고 사항이 많이 나옵니다(DNSSEC 없음, 첫 응답이 느림, 압축 없음, MTA-STS·BIMI 없음, 클라우드 호스팅 네트워크 등). 이것들은 정보일 뿐 점수를 바꾸지 않습니다.
점수 계산 방식
영역마다 배점이 있고, 합치면 100점입니다.
| DNS | SSL | HTTP | RDAP | Propagation | Ports | Reverse DNS | ASN | |
|---|---|---|---|---|---|---|---|---|
| 18 | 18 | 14 | 14 | 10 | 8 | 8 | 5 | 5 |
한 영역 안에서 심각(critical) 문제 하나는 그 영역 배점의 40%를, 경고(warning) 하나는 15%를 깎습니다. 참고(info) 사항은 아무것도 깎지 않습니다. 영역의 감점 합계는 반올림하고 영역 배점을 넘지 않게 자르므로, 한 영역이 자기 몫보다 많이 깎이는 일은 없습니다. 영역이 일부 데이터만 돌려줬다면 배점의 10%가 더 빠집니다. 영역 조회가 아예 실패하면 배점 전체를 잃고 점수에 ‘불완전’ 표시가 붙습니다.
몇 가지 계산 예입니다.
- HSTS 헤더가 없으면 두 번 발견됩니다. SSL 점검에서(18 × 15% = 2.7, 반올림해 3) 그리고 HTTP 점검에서(14 × 15% = 2.1, 반올림해 2). 합계 5점입니다.
- DMARC 레코드가 없으면 DNS에서 3점, Email에서 2점, 역시 5점입니다.
- CSP 없음, HSTS 없음,
Server헤더 있음인 HTTP 응답은 경고가 세 개입니다. 14 × 45% = 6.3이므로 6점입니다. - 인증서가 만료되면 SSL의 심각 문제 하나입니다. 18 × 40% = 7.2이므로 7점입니다.
점수는 등급으로 이어집니다. 90점 이상 A+, 80점 이상 A, 70점 이상 B, 50점 이상 C, 40점 이상 D, 그 아래는 F입니다. 페이지에는 점수에 따라 우수(90 이상), 양호(70 이상), 보통(50 이상), 미흡으로 표시되고, 등급 문자는 공유 문구에 들어갑니다. 점수 아래의 Score Breakdown 표에 영역별 배점, 남은 점수, 잃은 점수가 나옵니다.
원격 MCP 서버의 security_scan 도구도 같은 배점과 기준을 쓰므로, AI 에이전트가 알려 주는 등급과 웹 페이지의 점수가 같습니다.
결과를 제대로 읽기
문제 하나, 감점 두 번
영역이 서로 겹치기 때문에 빈틈 하나가 두 번 나타날 수 있습니다. HSTS는 SSL과 HTTP에서, SPF와 DMARC는 DNS와 Email에서 나옵니다. 설정이 잘못된 게 아닙니다. 그 하나를 고치면 두 감점이 함께 사라집니다.
메일을 쓰지 않는 도메인
점수는 도메인이 웹사이트도 운영하고 메일도 주고받는다고 가정합니다. MX 레코드가 없는 도메인은 DNS에서 경고, Email에서 심각 문제를 받고, 두 영역에서 SPF·DMARC 지적도 받습니다. 웹 전용 도메인은 최고 등급에 닿지 못합니다. 이유를 알고 있다면 괜찮습니다.
메일을 전혀 보내지 않는 도메인이 실제로 게시해야 하는 것은 방어용 SPF 레코드(v=spf1 -all)와 p=reject인 DMARC 레코드입니다. 그래야 누구도 그 도메인 이름으로 그럴듯한 메일을 보낼 수 없습니다. null MX 레코드(MX 0 ., RFC 7505)를 더하면 이 도메인은 메일을 받지 않는다고 명시할 수 있습니다. 점수 때문이 아니라 보호를 위해 하세요.
불완전하거나 일부만 있는 결과
패널에 결과 대신 오류가 나오면 그 영역은 전부 잃은 것으로 계산됩니다. 흔한 이유는 일시적 실패나 요청 한도입니다. 조회 아홉 개를 한꺼번에 하다 보면 한도에 걸리거나 외부 서비스가 잠깐 불안정한 순간에 걸릴 수 있습니다. 1분 뒤 다시 돌려 보세요.
다음 두 경우는 실패가 아니라 ‘해당 없음’으로 표시하고 점수에서 뺍니다. 남은 영역의 배점을 100점으로 환산하므로, 도메인이 원래 가질 수 없는 것 때문에 깎이거나 덕을 보지 않습니다.
- 레지스트리가 RDAP를 제공하지 않음. 일부 국가 도메인(예: .de, .jp)은 RDAP를 운영하지 않아서, 그 아래 도메인은 조회할 것이 없습니다.
- A나 AAAA 레코드 없음. 역방향 DNS와 ASN은 IP 주소가 있어야 합니다. 주소가 없으면 실행할 수 없고, 레코드가 없는 문제는 이미 DNS의 심각 문제로 한 번 계산됩니다.
국내 공공기관 사이트를 비롯해 해외 IP의 연결을 끊는 사이트가 있습니다. DechoNet의 주 서버는 국외에 있으므로, SSL과 HTTP는 서울에 있는 서버에서 다시 시도하고 결과에 그 사실을 표시합니다.
캐시된 응답
서비스를 빠르게 유지하려고 최근 결과를 한동안 재사용합니다. 포트는 2분, HTTP와 전파는 5분, DNS·이메일·역방향 DNS는 10분, RDAP와 ASN은 1시간, SSL은 최대 24시간입니다. 캐시에서 나온 패널에는 언제 조회한 결과인지 표시됩니다. 인증서를 갱신한 직후에는 캐시가 만료될 때까지 SSL 패널에 예전 인증서가 나올 수 있습니다. openssl s_client -connect example.com:443 -servername example.com에서 새 날짜가 보인다면 갱신 자체는 된 것입니다.
볼 수 없는 것
- 다른 이름. 입력한 이름만 점검합니다.
example.com과www.example.com은 인증서, 서버, 레코드가 다를 수 있으니 둘 다 돌리세요. 다른 서브도메인은 전혀 점검하지 않습니다. 인증서 로그에 보이는 서브도메인은 서브도메인 조회로 확인할 수 있습니다. - 다른 서버. 역방향 DNS와 ASN은 DNS의 첫 번째 주소만 씁니다. 원 서버가 여러 대이거나 로드밸런서 풀이 있으면 나머지는 점검하지 않으며, 고장 난 서버 한 대가 멀쩡한 첫 주소 뒤에 숨을 수 있습니다.
- 내부 네트워크. 조회는 DechoNet 서버에서 공개 리졸버를 통해 합니다. 내부·외부 응답이 다른 DNS(split-horizon), 사무실 리졸버, VPN, 회사 프록시는 보이지 않습니다.
- 애플리케이션. 취약한 CMS 플러그인, 인젝션 버그, 약한 로그인, 노출된 관리자 페이지를 찾지 않습니다. 마지막 것은 관리자 페이지 노출 점검을 쓰세요.
- 인증서 폐기. 폐기(revoke)됐지만 그 밖에는 유효한 인증서는 통과합니다.
- 추측하지 못한 DKIM 셀렉터. DKIM 키는 발신자만 아는 이름 아래에 있습니다. “DKIM 없음”은 메일 업체가 이 점검이 시도하지 않은 셀렉터를 쓰고 있다는 뜻일 수 있습니다. 실제 메일의
DKIM-Signature헤더로 확인하세요. - 헤더의 품질. HTTP 등급의 헤더 부분은 헤더가 있는지와 몇 가지 뻔한 약점만 봅니다. 모든 것을 허용하는 CSP도 ‘있음’으로 셉니다. 쓸모 있는 정책이 어떤 모습인지는 보안 헤더 가이드에 있습니다.
- 속도. 응답 시간과 압축은 HTTP 패널에 참고 사항으로 나오지만 점수에는 영향을 주지 않습니다.
사이트가 접속되지 않을 때
장애 중에는 점수가 페이지에서 가장 쓸모없는 숫자입니다. 대신 계층 순서대로 패널을 읽으세요. 처음으로 실패한 계층이 그 뒤의 실패를 대부분 설명합니다.
- RDAP. 만료, 보류(hold), 삭제 대기(pending delete)인가요? 등록을 바로잡기 전에는 아무것도 동작하지 않습니다. 도메인 만료·hold·pending delete를 참고하세요.
- DNS와 Propagation. A/AAAA 레코드가 없거나 리졸버마다 다른가요? 브라우저에는 이름 해석 오류가 나옵니다. ERR_NAME_NOT_RESOLVED와 DNS 전파 지연을 참고하세요.
- SSL. 연결 실패, 만료, 신뢰할 수 없는 체인인가요? 브라우저에는 인증서 경고가 나옵니다. SSL 만료 체크리스트와 ERR_CERT_AUTHORITY_INVALID를 참고하세요.
- HTTP. 연결 실패, 리다이렉트 루프, 5xx 코드인가요? 서버나 그 앞의 프록시가 문제입니다. 리다이렉트 루프와 502 Bad Gateway를 참고하세요.
모두 정상인데 일부 사용자만 접속하지 못한다면, 문제는 그 사용자 쪽이거나 지역적인 것일 가능성이 큽니다. 오래된 리졸버 캐시, 통신사, VPN, 보안 프로그램 같은 것들입니다. 전파 점검으로 리졸버를 비교하고, 정확한 오류 문구와 발생 시각을 받아 보세요.
결과를 보고 할 일
점수 아래의 ‘지금 해야 할 일’ 목록은 심각·경고 문제가 있는 영역에서 최대 다섯 항목을, 심각한 것부터 보여 줍니다. 합리적인 순서는 다음과 같습니다.
- 오늘: 심각한 것 전부. 곧 만료되는 도메인이나 인증서, 깨진 체인, A 레코드 없음, 5xx 응답. 방문자가 지금 또는 곧 영향을 받습니다.
- 이번 주: 비용이 적고 실제 보호 효과가 있는 경고. HSTS, SPF 레코드, 나중에 적용 단계로 올릴 수 있도록 보고서를 받는
p=noneDMARC 레코드(DMARC 정책 참고). - 계획해서 할 일: 먼저 Report-Only로 시험해야 하는 CSP, 그리고 누군가 그 서비스의 용도를 확인해야 하는 위험 포트(위험한 열린 포트 참고). 메일 서버인 호스트에서 25번 포트가 열려 있는 것은 정상입니다. 잘못이어서가 아니라 확인하라고 표시하는 것입니다.
- 선택: 참고 사항.
고친 뒤에는 위의 캐시 시간을 감안해 다시 돌리세요. ‘Markdown 복사’ 버튼을 누르면 점수, 영역별 상태, 우선 조치가 티켓에 붙여 넣기 좋은 형태로 복사됩니다.
내 도메인에서 바로 확인
무료, 가입 불필요. 이 가이드가 다루는 항목을 바로 검사하고 조치 방법을 알려드립니다.