어느 날 사이트가 사라지는 이유 — 갱신 달력 하나로 막을 수 있는 것들

운영홈페이지구축유지보수실무가이드장애대응

사이트가 갑자기 안 열립니다. 개발자에게 연락하면 코드는 멀쩡하다고 합니다. 서버도 살아 있습니다.

원인은 대개 이 중 하나입니다.

  • 도메인 만료
  • SSL 인증서 만료
  • 등록해 둔 카드 만료 → 호스팅 결제 실패
  • 계정 소유자가 퇴사 → 알림 메일이 아무도 안 보는 메일함으로

전부 기술 문제가 아니라 달력 문제입니다. 그런데 이 달력을 만들어 두는 회사가 의외로 적습니다.

왜 매년 어딘가에서 터지는가

만들 때는 개발자가 다 세팅해 줍니다. 도메인도 사고, 인증서도 붙이고, 결제도 등록합니다. 그리고 1년쯤 아무 일도 없습니다.

문제는 그 1년 사이에 담당자가 바뀌고, 알림 메일이 오는 주소를 아무도 안 보고, 등록한 법인카드가 재발급된다는 것입니다. 갱신 알림은 오는데 받는 사람이 없습니다.

그래서 필요한 건 기술이 아니라 한 장짜리 표입니다.

만들어 둘 표

회사 공용 문서로 하나 만들어 두세요. 스프레드시트 한 장이면 됩니다.

항목서비스만료·갱신일결제 수단알림 받는 주소담당
도메인가비아2027-03-14법인카드 4321admin@회사.kr총무
호스팅카페24매월 5일법인카드 4321admin@회사.kr총무
SSLLet's Encrypt자동(90일)admin@회사.kr개발
PG토스페이먼츠계약 2027-01admin@회사.kr재무
알림톡카카오잔액 소진 시선불 충전admin@회사.kr마케팅
메일 발송Resend매월 1일법인카드 4321admin@회사.kr개발
앱 스토어Apple2027-05-20법인카드 4321admin@회사.kr개발

여기서 두 열이 특히 중요합니다.

결제 수단 — 카드 하나가 재발급되면 여러 줄이 동시에 죽습니다. 어디에 어떤 카드가 걸려 있는지 알아야 카드를 바꿀 때 한 번에 정리할 수 있습니다.

알림 받는 주소 — 개인 메일이면 안 됩니다. admin@회사.kr처럼 여러 명이 보는 공용 주소여야 합니다. 퇴사와 함께 알림이 사라지는 사고가 여기서 납니다.

항목별로 알아 둘 것

도메인 — 가장 위험

만료되면 사이트와 회사 메일까지 함께 멈춥니다. 도메인 기반 메일을 쓰고 있다면 갱신 알림 메일도 못 받는 상태가 됩니다.

만료 후에는 등록기관마다 다르지만 통상 한 달 안팎의 유예기간이 있고, 그 안에 갱신하면 복구됩니다. 유예기간이 지나면 삭제 대기로 넘어가고, 그 뒤에는 누구든 등록할 수 있습니다. 회사 이름이 들어간 도메인이 남의 손에 넘어가면 되찾기는 사실상 협상 문제가 됩니다.

할 일: 자동 갱신을 켜 두고, 등록기관 계정에 카드가 유효한지 1년에 한 번 확인. 만료 60일·30일·7일 전 알림을 캘린더에 직접 등록.

여유가 되면 여러 해를 한꺼번에 갱신해 두는 것도 방법입니다. 5년치를 결제해 두면 그동안 이 항목은 잊어도 됩니다.

SSL 인증서 — 조용히 실패한다

만료되면 브라우저가 빨간 경고 화면을 띄웁니다. 사이트는 살아 있는데 방문자가 못 들어옵니다. 오히려 완전히 죽은 것보다 신뢰에 더 나쁩니다.

Let's Encrypt는 90일마다 자동 갱신되도록 설정하는 게 보통인데, 이 자동화가 소리 없이 멈추는 경우가 있습니다. 서버 설정이 바뀌거나, 인증 방식이 막히거나, 디스크가 차서 갱신 스크립트가 실패하거나.

할 일: 무료 감시 서비스로 인증서 만료를 지켜보게 하세요. UptimeRobot 같은 서비스는 사이트가 살아 있는지와 인증서 만료일을 함께 봐 주고, 무료 요금제로도 충분합니다. 5분이면 설정됩니다.

결제 수단 — 여러 개가 동시에 죽는다

법인카드 재발급, 유효기간 만료, 한도 초과. 이 중 하나만 생겨도 걸려 있는 서비스가 전부 결제 실패로 갑니다.

해외 서비스는 특히 조용합니다. 영문 메일 한 통 오고 며칠 뒤 계정이 정지됩니다. 그 메일이 스팸함으로 가면 아무도 모릅니다.

할 일: 표에서 결제 수단 열을 기준으로 정렬해 보세요. 카드를 바꿀 때 그 목록을 그대로 돌면 됩니다. 그리고 해외 서비스 발신 주소를 메일함 화이트리스트에 넣어 두세요.

계정 소유자 — 퇴사와 함께 사라진다

가장 늦게 발견되고 가장 아픕니다. 마케팅 담당자가 자기 구글 계정으로 애널리틱스를 만들고 퇴사하면, 데이터에 접근할 방법이 없습니다.

할 일: 모든 서비스에 회사 공용 계정을 소유자로 넣고, 개인 계정은 관리자 권한까지만. 지금 당장 확인할 만한 것들:

  • 구글 애널리틱스·서치콘솔 — 속성 소유자
  • 구글 광고·메타 광고 — 계정 소유자
  • 도메인·호스팅 — 등록자 명의
  • 소스 저장소(GitHub 등) — 조직 소유자
  • 앱 스토어 개발자 계정 — 계정 보유자

앱 스토어 — 1년에 한 번, 잊기 딱 좋다

앱이 있다면 Apple 개발자 프로그램은 연 단위 갱신입니다. 갱신을 놓치면 앱이 스토어에서 내려갑니다. 이미 설치한 사용자는 쓸 수 있지만 신규 설치가 막히고, 업데이트도 못 올립니다.

Google Play는 최초 등록비만 내고 끝이라 이 문제가 없습니다.

감시를 하나 붙여 두세요

표를 만들어도 사람은 잊습니다. 자동으로 알려 주는 걸 하나 걸어 두는 게 확실합니다.

  • 가동 감시: 사이트가 안 열리면 알림. UptimeRobot, Better Stack 등에 무료 요금제가 있습니다
  • 인증서 만료 감시: 위 서비스들이 대부분 함께 제공합니다
  • 캘린더 등록: 도메인·앱스토어 갱신일을 회사 공용 캘린더에 반복 일정으로. 30일 전 알림

셋 다 합쳐서 30분이면 설정합니다. 매년 한 번 사고가 나는 걸 30분으로 막는 셈입니다.

개발 업체에 요청할 것

새로 만들거나 넘겨받는 시점이라면 이걸 요청하세요.

운영에 필요한 계정·서비스 목록을 만료일·결제수단·알림 수신 주소와 함께 정리해서 인수인계 문서에 포함해 주세요.

정상적인 업체는 이미 갖고 있거나, 없어도 한 시간이면 만들어 줍니다. 이 목록이 있는 것과 없는 것의 차이는 1년 뒤에 나타납니다.


넘겨받을 때 확인할 전체 목록은 홈페이지를 넘겨받을 때 내 손에 남아야 하는 것에, 장애가 실제로 났을 때의 순서는 사이트가 멈췄는데 연락이 안 된다에 정리해 두었습니다.

궁금한 점이 있으신가요?

협업·의뢰는 아래로, 가벼운 소통은 인스타그램 @bluefox._.hi도 환영이에요.

비용이 궁금하면 외주 계산기로 먼저 확인해보세요.