어느 날 고객에게서 전화가 왔다. "사장님, 사이트에 들어가니 빨간 글씨로 '주의 요함'이 뜨는데 결제해도 괜찮나요?" 화면을 확인하니 주소창의 자물쇠가 사라지고 경고 문구가 떠 있었다. 코드는 그대로였지만, SSL 인증서가 조용히 만료된 것이다. 사이트가 멀쩡히 떠 있어도 브라우저가 '안전하지 않다'고 판단하는 순간, 고객은 가장 중요한 결제 버튼 앞에서 등을 돌린다. HTTPS는 한 번 켜두면 끝나는 스위치가 아니라, 꾸준히 관리해야 하는 생활 습관에 가깝다.
1. 인증서는 '설치'가 아니라 '유지'의 문제다
무료 SSL 인증서(Let's Encrypt 등)는 보통 90일, 유료 인증서도 1년이면 만료된다. 가장 흔한 사고는 갱신을 잊어버려 어느 날 갑자기 사이트가 경고 화면으로 바뀌는 것이다. 자동 갱신(auto-renew)이 설정돼 있는지 반드시 확인하고, 만료 30일 전 알림을 캘린더나 모니터링 도구에 걸어두자. 호스팅 환경에 따라 자동 갱신이 실패할 수도 있으니, 분기마다 한 번씩 주소창 자물쇠를 직접 눌러 유효 기간을 눈으로 확인하는 습관이 안전하다.
2. http로 들어온 고객도 https로 돌려보내라
인증서를 깔았다고 끝이 아니다. 누군가 'http://'로 주소를 입력하거나 오래된 링크를 타고 들어오면 암호화되지 않은 페이지가 그대로 열린다. 서버 설정이나 .htaccess에서 http 요청을 https로 301 리다이렉트하도록 강제해야 모든 방문자가 예외 없이 안전한 경로로 들어온다. 검색엔진도 https 주소를 정식 페이지로 인식하기 때문에 SEO에도 유리하다.
3. 혼합 콘텐츠(Mixed Content)를 남겨두지 마라
페이지 자체는 https인데, 내부의 이미지나 스크립트 한두 개가 http로 불려오는 경우가 있다. 이런 혼합 콘텐츠가 하나라도 있으면 브라우저는 자물쇠를 깨뜨리고 경고를 띄운다. 리뉴얼이나 외부 위젯 삽입 후 특히 자주 생기는 문제다. 개발자 도구의 콘솔에 뜨는 'Mixed Content' 경고를 확인하고, 모든 리소스 주소를 https 또는 프로토콜 생략(//) 형태로 통일하자.
4. HSTS로 '항상 안전한 접속'을 못 박아라
한 단계 더 나아가면 HSTS(HTTP Strict Transport Security) 헤더를 설정할 수 있다. 이 헤더는 브라우저에게 "이 사이트는 앞으로 무조건 https로만 접속하라"고 기억시킨다. 중간자 공격으로 http 페이지를 가로채는 시도 자체를 차단하는 효과가 있다. 다만 한번 적용하면 일정 기간 강제되므로, https가 완벽히 안정화된 뒤에 max-age를 짧게 시작해 점진적으로 늘리는 것이 안전하다.
5. 인증서 등급은 필요한 만큼만
SSL 인증서는 도메인 검증(DV), 기업 검증(OV), 확장 검증(EV)으로 나뉜다. 영업 사원이 비싼 EV 인증서를 권할 때가 많지만, 대부분의 소규모 사이트는 무료 또는 저가의 DV 인증서로 충분하다. 고객 화면에 표시되는 자물쇠 모양은 등급과 무관하게 동일하기 때문이다. 금융·결제를 직접 처리하는 특수한 경우가 아니라면, 등급보다 '만료 없이 꾸준히 유지되는가'가 훨씬 중요하다.
HTTPS는 화려한 기능이 아니라 기본기다. 고객은 자물쇠가 있을 때는 의식하지 못하지만, 사라지는 순간 가장 먼저 알아챈다. CYAN 에이전시는 사이트를 만들 때 인증서 자동 갱신과 보안 헤더 설정까지 함께 점검하고, 납품 이후에도 만료 모니터링을 챙긴다. '주의 요함' 한 줄 때문에 애써 모은 고객을 문 앞에서 놓치는 일이 없도록, 오늘 한 번 주소창의 자물쇠부터 눌러 확인해보길 권한다.