Ubuntu: Cloudflare DDNS를 설정하는 방법(무료!)

Ubuntu에서 Cloudflare DDNS를 설정하는 방법을 단계별로 설명합니다.

1. Cloudflare에서 DDNS 설정 준비

① Cloudflare 계정 생성 및 도메인 등록

  • Cloudflare에 가입
  • 자신의 도메인을 Cloudflare에 추가
  • 네임서버를 Cloudflare로 변경 (기존 도메인 제공업체에서 설정)
  • 이번에 설정할 A레코드를 추가해 놓기

② API 토큰 생성

  1. Cloudflare API Tokens로 이동
  2. “Create Token” 클릭
  3. “Edit zone DNS” 템플릿 선택 후 다음 정보 설정
    • Permissions → “Zone” / “DNS” / “Edit”
    • Zone Resources → “Include” / “Specific Zone” / (자신의 도메인 선택)
    • “Continue to summary” → “Create Token” 클릭
  4. 생성된 API Token을 복사하여 저장

2. Ubuntu에서 Cloudflare DDNS 자동 업데이트 설정

① Cloudflare API를 이용한 DDNS 스크립트 작성

1
nano ~/cloudflare-ddns.sh

아래 내용을 입력 (자신의 정보로 변경)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/bin/bash
 
# 사용자 설정값
ZONE_ID="YOUR_ZONE_ID"  # Cloudflare 대시보드에서 확인
RECORD_ID="YOUR_RECORD_ID"  # Cloudflare API에서 확인
API_TOKEN="YOUR_CLOUDFLARE_API_TOKEN"  # API 토큰 입력
EMAIL="YOUR_CLOUDFLARE_EMAIL"  # Cloudflare 계정 이메일
DOMAIN="yourdomain.com"  # 업데이트할 도메인
SUBDOMAIN="sub"  # 설정할 서브도메인 (예: sub.domain.com)
 
# 현재 공인 IP 가져오기
IP=$(curl -s https://ipv4.icanhazip.com)
 
# Cloudflare API를 통해 레코드 업데이트
RESPONSE=$(curl -s -X PUT "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/dns_records/$RECORD_ID" \
     -H "Authorization: Bearer $API_TOKEN" \
     -H "Content-Type: application/json" \
     --data "{\"type\":\"A\",\"name\":\"$SUBDOMAIN.$DOMAIN\",\"content\":\"$IP\",\"ttl\":120,\"proxied\":false}")
 
# 성공 여부 확인
if echo "$RESPONSE" | grep -q '"success":true'; then
    echo "[$(date)] IP 업데이트 성공: $IP"
else
    echo "[$(date)] IP 업데이트 실패: $RESPONSE"
fi
  • ZONE_ID 및 RECORD_ID는 Cloudflare API에서 조회
1
2
3
     -H "Authorization: Bearer YOUR_CLOUDFLARE_API_TOKEN" \
     -H "Content-Type: application/json"

→ id 값을 ZONE_ID에 설정

1
2
3
     -H "Authorization: Bearer YOUR_CLOUDFLARE_API_TOKEN" \
     -H "Content-Type: application/json"

→ id 값을 RECORD_ID에 설정

스크립트 실행 권한 부여

1
chmod +x ~/cloudflare-ddns.sh

수동 실행 테스트

1
~/cloudflare-ddns.sh

정상적으로 IP가 업데이트되는지 확인

3. 자동 실행 설정 (크론 잡 추가)

1
crontab -e

맨 아래 추가 (5분마다 실행)

1
*/5 * * * * ~/cloudflare-ddns.sh >> ~/cloudflare-ddns.log 2>&1

4. 설정 완료 및 확인

  • Cloudflare 대시보드에서 IP가 정상적으로 업데이트되는지 확인
  • ~/cloudflare-ddns.log 파일을 확인하여 자동 업데이트 로그 기록 확인

이제 Ubuntu에서 Cloudflare DDNS를 자동으로 설정하여 사용할 수 있습니다.

이것도 살펴보세요!

Windows App: Mac에서 Ubuntu Desktop에 원격 로그인 연결 에러 0x207을 우회하는 법

Ubunt Desktop 24.04 LTS의 원격 로그인을 활성화했는데, MacOS의 Windows App(원격 데스크톱 앱)에서 Error code 0x207이 …

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다