IT 정보/리눅스

🔒 실무 팁(고급): 리눅스 'systemd-resolved+DoH' 보안 DNS 자동 설정 및 모니터링

DONOT 2025. 6. 17. 16:25
systemd-resolved와 DoH로 DNS 보안과 프라이버시 강화
systemd-resolved DoH
리눅스 systemd-resolvedDNS over HTTPS(DoH)를 조합해
보안 DNS 서비스를 자동으로 구성하고 모니터링하는 고급 실전 팁입니다.
DNS 스푸핑, 중간자 공격 등을 방어하며 DNS 쿼리를 암호화할 수 있습니다.

핵심 설정 예시
# /etc/systemd/resolved.conf 설정
[Resolve]
DNS=1.1.1.1#cloudflare-dns.com 8.8.8.8#dns.google
DNSOverTLS=yes
DNSSEC=yes
Cache=yes
ReadEtcHosts=yes

DoH 프록시 설정 (cloudflared 사용)

sudo cloudflared tunnel --url https://1.1.1.1/dns-query

DNS 쿼리 모니터링 스크립트

#!/bin/bash
LOG_FILE="/var/log/dns-monitor.log"

while true; do
# DNS 응답 시간 측정
RESPONSE_TIME=$(dig @127.0.0.1 google.com | grep "Query time" | awk '{print $4}')
TIMESTAMP=$(date '+%Y-%m-%d %H:%M:%S')

echo "$TIMESTAMP - DNS Response Time: ${RESPONSE_TIME}ms" >> $LOG_FILE

# 비정상적인 응답 시간 감지
if [ "$RESPONSE_TIME" -gt 1000 ]; then
    echo "WARNING: High DNS response time detected: ${RESPONSE_TIME}ms" | logger -t dns-monitor
    # Slack 알림 전송
    curl -X POST -H 'Content-type: application/json' --data "{\"text\":\"DNS 응답 지연 발생: ${RESPONSE_TIME}ms\"}" $SLACK_WEBHOOK
fi

sleep 60

done

systemd 서비스 활성화

sudo systemctl enable systemd-resolved
sudo systemctl restart systemd-resolved




실무 적용 포인트

  • DNS 쿼리 암호화로 네트워크 감청 및 스푸핑 방어
  • 실시간 DNS 성능 모니터링 및 이상 징후 탐지
  • 기업 환경에서 안전한 DNS 서비스 일괄 적용

DoH 기반 보안 DNS로 네트워크 프라이버시와 보안을 극대화하세요!
반응형