← 개발일지

Remotely Save WebDAV 451 에러 해결 — ASUS 공유기 환경


Remotely Save WebDAV 451 에러 해결 — ASUS 공유기 환경

옵시디언(Obsidian)을 여러 기기에서 동기화하려고 Remotely Save 플러그인을 설정했는데, 집 안에서는 잘 되다가 외부에서 접속하면 451 에러가 뜨는 경험, 해보셨나요?

Error: Invalid response: 451 Unavailable For Legal Reasons

이 글에서는 ASUS 공유기의 AiCloud + asuscomm.com DDNS 환경에서 이 에러가 왜 발생하는지, 그리고 어떻게 해결하는지 정리합니다.


문제 상황

  • 환경: ASUS 공유기 AiCloud, asuscomm.com DDNS, Remotely Save 플러그인 WebDAV 모드
  • 증상: 내부망(집 Wi-Fi)에서는 "The webdav server can be accessed" 성공, 외부망(LTE, 다른 Wi-Fi)에서는 451 에러
  • 의아한 점: 브라우저로 asuscomm.com 주소에 접속하면 AiCloud 웹 UI는 잘 열린다

원인: ASUS 릴레이 서버가 WebDAV를 차단한다

핵심부터 말하면, 문제는 URL이나 비밀번호가 아니다.

asuscomm.com 주소를 통한 외부 접속은 공유기에 직접 연결되지 않는다. ASUS의 중계(릴레이) 서버를 거쳐 트래픽이 전달되는 구조다. 이 릴레이 서버는 일반 브라우저 요청(GET)은 통과시키지만, WebDAV 전용 HTTP 메서드를 차단한다.

WebDAV는 파일 목록 조회에 PROPFIND, 파일 업로드에 PUT, 폴더 생성에 MKCOL 같은 비표준 메서드를 사용한다. Remotely Save가 동기화를 시도하면 이 메서드들이 릴레이 단계에서 막히고, 결과로 451이 반환된다.

[Remotely Save]
      ↓
[ASUS 릴레이 서버]  ← PROPFIND, PUT 차단 → 451 반환
      ↓ (GET은 통과)
[공유기 AiCloud]

해결 방법: 포트포워딩으로 릴레이 우회

릴레이를 거치지 않고 공유기에 직접 연결하면 된다. 방법은 포트포워딩이다.

1단계: 공유기 포트포워딩 설정

공유기 관리 페이지 접속 → WAN → 가상 서버 / 포트 포워딩 메뉴에서 규칙 추가:

| 항목 | 값 | |---|---| | 외부 포트 | 10443 | | 내부 IP | 192.168.50.1 (공유기 자신의 IP) | | 내부 포트 | 443 | | 프로토콜 | TCP |

포인트: 내부 IP를 NAS나 다른 기기 IP가 아닌, 공유기 자신의 IP로 설정해야 한다.

2단계: Remotely Save 주소 변경

Server Address를 아래 형식으로 수정한다:

https://xxxx.asuscomm.com:10443/sda1/Obsidian/

끝에 슬래시(/)가 있어야 한다는 점도 확인.

3단계: 포트가 실제로 열렸는지 확인

설정 후 바로 Check Connectivity를 누르기 전에, 포트가 외부에서 접근 가능한지 먼저 확인하는 것이 좋다.

yougetsignal 포트 체크 사이트에서:

  • Host: xxxx.asuscomm.com
  • Port: 10443
  • Open 이 뜨면 성공

4단계: Check Connectivity

Remotely Save 설정에서 Check Connectivity 클릭. "The webdav server can be accessed" 메시지가 뜨면 완료.


추가 문제: SSL 인증서 오류

포트포워딩 후에도 연결이 안 된다면, ASUS 공유기의 자체 서명(self-signed) SSL 인증서를 Remotely Save가 거부하는 경우다.

Remotely Save UI에 skipTlsVerify 옵션이 보이지 않을 수 있다. 이때는 설정 파일을 직접 수정한다.

파일 위치:

볼트폴더/.obsidian/plugins/remotely-save/data.json

.obsidian 폴더가 안 보이면 Windows 탐색기 → 보기 → 숨긴 항목 체크.

파일을 메모장이나 VSCode로 열어 webdav 항목에 아래를 추가:

"webdav": {
  "address": "https://xxxx.asuscomm.com:10443/sda1/Obsidian/",
  "username": "...",
  "password": "...",
  "authType": "basic",
  "skipTlsVerify": true
}

저장 후 Obsidian을 완전히 종료했다가 다시 열어야 반영된다.


빠른 체크리스트

에러가 뜰 때 순서대로 확인:

  • [ ] Server Address 끝에 / 있는지
  • [ ] sda1 등 디스크 이름이 AiCloud에서 보이는 이름과 동일한지
  • [ ] Obsidian 폴더가 AiCloud에 실제로 존재하는지 (자동 생성 안 됨)
  • [ ] 포트포워딩 규칙이 추가되어 있는지
  • [ ] 내부 IP가 공유기 자신의 IP인지
  • [ ] 포트가 외부에서 Open 상태인지
  • [ ] skipTlsVerify: true 설정 완료 후 Obsidian 재시작

마치며

451 에러는 처음 보면 당황스럽지만, ASUS AiCloud 환경에서는 거의 대부분 릴레이 서버 문제다. URL이나 비밀번호를 아무리 바꿔도 해결이 안 됐다면, 포트포워딩으로 직접 연결하는 방법을 시도해보자.