서버 안전성
그래서 저는 개인용 VPS와 비즈니스용 VPS를 하나씩 가지고 있습니다.
지난 몇 주 동안 VPS를 이것저것 만지작거리며 많은 시간을 보냈습니다.
서버 안전성과 접근성에 대해 훨씬 더 많이 배웠습니다. 이제는 제 서비스에 접근할 때 오직 tailscale만 사용합니다. 공개적으로 노출되는 웹사이트는 모두 Cloudflare DNS나 Cloudflare Tunnel을 통해 프록시됩니다. 따라서 외부인이 제 VPS에 직접 접근할 수는 없습니다.
또한 두 개의 VPS를 서로 다른 용도로 분리했습니다. 단순히 작업을 분리하기 위해서만이 아니라 향후 확장성까지 고려한 것입니다. 고객 대상 사이트와 API만 제공하는 비즈니스 VPS는 수직적·수평적으로 손쉽게 확장할 수 있으며, 이는 제 개인 서비스에는 영향을 주지 않습니다.
3-2-1 백업
Rclone을 선호합니다. 지난 1년 동안 여러 작업에 활용해 왔습니다. 하지만 이제는 VPS에서 저장소 파일을 백업하고 암호화하여 Cloudflare R2에 오프사이트 백업으로 보관하는 데 사용합니다. Hetzner에서 자동 스냅샷을 제공하지만 말이죠. 당분간은 가끔 이 모든 것을 USB 스틱에 내려받는 작업도 할 예정입니다. 저장소가 훨씬 커지지 않는 한은요.
Directus CMS
네, 또 돌아왔습니다. 아마 저는 Directus와 잘 맞는 것 같습니다.
이 사이트는 어떻게 만들어졌나 - Obsidian
이 사이트는 Astro 위에 구축되었으며, 단순한 마크다운 파일을 사용합니다. Obsidian과 함께 작동하도록 꽤 많은 노력을 기울였습니다. 지금 이 글을 쓰는 시점에도 저는 Obsidian에서 이 피드 섹션을 타이핑하고 있습니다. Base를 사용해 초안과 게시된 글을 필터링하고 정렬합니다. 또한 Obsidian의 이미지 압축 플러그인을 활용해 이미지를 드롭하면 webp로 변환되도록 했으며, 이 모든 것이 Astro의 정적 빌드에서 작동합니다. (가져오기, 내보내기, 개발 환경에서 각각 다른 URL로 나타나는 파일들의 이름을 바꾸는 로직을 작성해야 했기 때문에 쉽지 않았습니다.)
빌드 후 /out/으로 내보내고, 그 폴더를 Cloudflare에 wrangler deploy하는 스크립트도 작성했습니다. 덕분에 저 외에는 아무도 제 코드베이스에 접근할 수 없습니다.
왜 Directus로 이전하는가
최종 CMS로 Directus로 이전하려고 합니다. 마크다운을 직접 소유하는 것이 좋다고 생각했습니다. 하지만 결국 중요한 것은 저장과 편의성입니다. 글이 늘고 에셋이 늘어날수록 파일을 관리하고 저장하기가 더 어려워집니다. 모든 이미지를 클라우드로 오프로드한다면 사실 나쁘지 않은 선택입니다. 콘텐츠 폴더가 비대해지지 않으니 사이트의 코드베이스도 더 깔끔해집니다.
그리고 프런트엔드 사이트를 교체할 때 더 이상 정적 사이트 빌더마다 다른 ../assets/images 경로 차이를 처리할 필요가 없습니다.
결론
저는 최상의 SEO와 거의 없는 수준의 대역폭 트래픽 비용을 위해 정적 생성을 원했습니다. 그리고 웹사이트를 디자인하는 코드베이스와 콘텐츠 작성 경험 모두를 위한 깔끔한 작업 공간도요.
이제 이걸 Cloudflare에 배포하기 위해 그 .sh 스크립트를 다시 실행할 시간입니다.