내 사이트의 접속 통계를 보자 - umami

서론 SNS에서 블로그나 웹사이트 운영하시는 분들을 보면, 그래프로 사이트 통계를 많이 올리시더라구요. 제가 본건 허채영님의 프로필페이지인데, 게시된 사이트 소개들을 보면 통계그래프들이 첨부돼있습니다. 이 사이트들은 Vercel로 호스팅되고 있어서 Vercel에서 제공하는 Analytics로 통계를 구하는것으로 보여요. 하지만 안타깝게도 저는 Vultr VPS로 직접 서버를 관리하고 있고, Vultr는 별도의 통계 서비스를 제공하지 않습니다. 대안으로는 Google 서치콘솔을 이용한 통계를 볼 수 있는데, 여기서 제공하는 정보는 직관적이지가 않아서 보기가 힘듭니다. 그래서 이번에는 오픈소스 통계앱인 umami를 설치해서 제가 운영중인 사이트 통계를 보려고 합니다. ...

2026년 10월 30일 · 4 분 · rammie

보안 이슈로 인한 PHP update

최근 PHP 취약점(PHP2Shell) 관련 소식으로 떠들썩합니다. 저는 웹 개발 업계 사람은 아니라서 자세한 내용은 잘 모르지만, 제가 운영중인 K-meme 위키가 PHP 엔진을 사용하고 있기 때문에 저역시 해킹의 표적이 될 수 있는 상황입니다. 지금은 PHP 버전별 취약점 패치가 나와있기 때문에, PHP 업데이트로 피해를 막을 수 있습니다. 먼저 제 서버에 설치된 PHP 버전이 뭔지 확인을 해봤습니다. dpkg -l | grep -E '^ii\s+php' K-meme 위키가 설치된 서버에는 PHP 8.3.6이 설치돼있네요. 그리고 제 사이트에도 공격시도가 있는지 확인을 해봅니다. ...

2026년 10월 23일 · 1 분 · rammie

tailscale로 개인 네트워크 구축

서론 블로그에서 소개 했다시피, 저는 집에다 mini PC를 두고 서버로 이용하며 개발을 하고 있습니다. 그런데 최근 인스타에서 Mac mini + tailscale + tmux 조합이 개발 치트키라는 글을 봤어요(사실 인스타는 아니고 인스타에 뜨는 쓰레드 추천글이었는데, 저는 쓰레드 가입을 안해서 딱 저 첫문장만 보긴 했습니다 ㅎㅎ). Mac mini랑 tmux는 알겠는데 tailscale은 뭔지 궁금했습니다. 찾아보니 tailscale은 사용자가 등록한 기기들끼리 가상 네트워크를 만들어서 별도의 포트개방 없이도 ssh 접속 등을 가능하게 해주는 서비스더군요. 처음 든 생각은 ‘공유기로 포트포워딩 해서 접속하면 되는데, 굳이?’ 였습니다. 하지만 항상 문제는 보안이죠. 사실 포트포워딩으로 서버를 열어두면 로그에 정말 많은 접속시도가 찍혀있습니다. 물론 방화벽도 있고, ssh 접속 포트번호도 변경해놓지만 불안하긴 합니다. 그래서 이참에 나도 포트포워딩은 막고 tailscale을 적용해볼까 했는데, 홈서버에서 제 블로그도 서비스 중이라 바로 차단을 해버릴 순 없었어요. 하지만 이제 저는 서버가 하나가 아니죠 ㅎㅎ.. K-meme 위키를 서비스 중인 vultr 서버로 블로그를 옮기고, ssh 접속만 가능하도록 tailscale을 적용하기로 했습니다. 블로그 서버를 옮기는 일도 시행착오가 있어서 별도의 글로 남기도록 하겠습니다. ...

2026년 10월 18일 · 4 분 · rammie

Giscus를 이용한 Hugo blog 댓글 기능 구현

서론 블로그를 찾아주는 사람은 거의 없는 것 같지만.. 댓글 기능도 언젠간 넣어야지 벼르고 있었습니다. hugo 블로그로 변경하기 전 WordPress 블로그를 사용할 때에는, 댓글 기능이 기본으로 들어가 있어서 기능 구현을 신경쓰지는 않았습니다. 다만 WordPress 댓글은 별도의 인증 없이 아무나 쓸 수 있다보니, 광고 봇들을 막기 위해 관리자 승인을 거쳐야 노출되도록 설정하는 등의 번거로움이 있었습니다. 찾아주는 사람 없는 블로그인데도 광고 게시 시도는 하루에도 수백건씩 오더라구요.. 아무튼 지금은 hugo 블로그를 사용중이고, hugo는 정적 사이트 생성기이기 때문에 자체적으로 댓글을 지원하는 옵션은 없습니다. 그렇다고 댓글을 아예 못쓰는건 아니고, 페이지에 외부 댓글 시스템을 붙여넣으면 구현할 수가 있습니다. 댓글을 구현해주는 시스템은 giscus, uterrances, Disqus 등 여러가지가 있어서 뭘 선택해야 좋을지 또 찾아봐야 하는데요, 다행히 비슷한 고민을 하신 선배 개발자분들이 있어 저는 고민하는 시간을 줄일 수 있었습니다. ...

2026년 8월 5일 · 4 분 · rammie

위키 사이트를 만들어보자! (2)-Mediawiki 설정

서론 드디어 위키 사이트 만들기 두번째 글로 돌아왔습니다. 첫 글 이후 한달이 넘게 지났네요. 역시 꾸준히 글을 쓴다는건 너무나 어렵습니다. 그새 저의 k-meme 위키 사이트는 문서가 꽤 많이 늘었습니다. 아직은 모두 제가 작성한 문서지만요.. 많은 관심 부탁드립니다. 미디어위키 초기 설정 지난글에 이어, 이번 글에서 설명드릴 내용은 미디어 위키 초기 설정입니다. 앞선 내용으로 서버에 미디어위키를 설치하고 Nginx를 통해 서비스 할 수 있도록 했는데요, 바로 위키 사이트를 사용할 수 있는 것은 아닙니다. 설정한 도메인을 통해 사이트에 접속을 해서 처음 만나는 화면은 아래와 같습니다. ...

2026년 8월 1일 · 4 분 · rammie

위키 사이트를 만들어보자! (1)-서버 구축과 Mediawiki 설치

서론 그동안 연습했던 서버 세팅과, 웹페이지 호스팅 경험으로 쓸모있는 사이트를 만들어보려고 합니다. (지금 블로그가 쓸모 없는 것은 아니지만..) 사람들이 많이 찾는 사이트는 뭘까 생각하다가, 문득 제가 나무위키를 자주 사용한다는 걸 깨달았습니다. 검색해보니 나무위키 연 수입이 100억이 넘는다네요 ㄷㄷ.. 대단하기도 하지만, 어쨌든 그말은 제가 암만 위키를 잘 꾸며봤자 사람들은 정보를 찾으러 나무위키로 갈것이란 뜻이기도 합니다. 그래서 모든 정보를 다루는 범용 위키보다는, 특정 주제만을 다뤄야겠다고 생각했습니다. 뭐가 좋을까 또 고민하다가 세대간 정보 불균형이 심하다고 생각되는 밈을 주제로, 그것도 한국 밈, K-meme wiki를 만들기로 했습니다. ...

2026년 6월 4일 · 6 분 · rammie

WordPress에서 Hugo로 갈아타기 by Claude

왜 Hugo인가? https://gohugo.io WordPress는 강력하지만 무겁다. PHP, MariaDB, 각종 플러그인이 맞물려 동작하는 구조는 단순한 블로그를 운영하기엔 오버스펙이다. 특히 코드 스니펫과 기술 글 위주의 블로그라면 더욱 그렇다. Hugo로 갈아탄 이유는 크게 세 가지다. 속도: DB 조회와 PHP 실행이 없다. nginx가 정적 HTML 파일만 서빙한다 단순함: MariaDB, PHP 없이 서버 구성이 훨씬 가벼워진다 SEO: 빠른 로딩 속도는 Core Web Vitals 점수에 직접 영향을 준다 WordPress vs Hugo 요청 흐름 비교 WordPress 요청 흐름은 다음과 같다. ...

2026년 5월 11일 · 4 분 · rammie

Ubuntu 서버에 외장 SSD를 mount 하고 sftp로 접근하기

Ubuntu 서버의 USB 3.0 포트에 외장 SSD 연결 후, 인식 상태를 확인하기 위해 아래 명령어를 입력한다. > sudo fdisk -l 정상적으로 인식되었다면 위와 같이 연결 위치와 포맷 정보가 나타난다. USB 3.0 포트에 연결했을 때 정상적인 인식이 되지 않고, USB 2.0 포트에서는 된다면, Ubuntu가 USB 포트 절전기능을 사용하고 있지 않은지 의심해본다. USB 3.0은 전력 소모가 크므로, 충분한 전력이 공급되지 않으면 정상적으로 동작하지 않는다. 커널 파라미터를 수정하여 절전기능을 끌 수 있다. > sudo vim /etc/default/grub GRUB_CMDLINE_LINUX_DEFAULT="" # 위 line을 아래와 같이 수정 GRUB_CMDLINE_LINUX_DEFAULT="quiet splash usbcore.autosuspend=-1" 수정 후에 설정이 적용되도록 update하고 서버를 재시작한다. 재시작 할 때에는 연결했던 외장 SSD를 제거하는 것을 주의한다. ...

2026년 4월 30일 · 2 분 · rammie

[ttyd] Web browser에서 접속 가능한 terminal을 만들자!

내 서버를 외부에서 접속하려면 터미널 앱에서 ssh 명령을 통해 접속해야한다. ssh 접속을 하려면 22번 포트(또는 host가 정한 다른 포트)가 열려있어야 하는데, 22번 포트가 열려있지 않거나 적절한 터미널이 없는 환경에서는 서버 접속이 불가능한걸까? 인터넷 접속이 가능한 환경이라면 http(80), https(443) 포트는 열려 있을테니, 웹 브라우저를 통해 서버에 접속할 수 있지 않을까 생각하게 됐다. Host에서는 웹 페이지 하나를 띄워주고, 해당 페이지에 터미널 앱을 올려놓는 것이다. 방법으로는 xterm.js 라이브러리를 이용해서 terminal 기능과 hosting 기능을 기초부터 구현할 수도 있고, wetty나 ttyd 같이 이미 구현된 web 기반 terminal 앱을 이용할 수도 있다. 나는 이미 nginx를 통해 블로그를 hosting 하고 있고, 직접 terminal 기능을 구현할 생각이 없으니 당연히 후자의 방법을 택했다. 아래는 chatGPT가 비교한 wetty와 ttyd의 특징이다. ...

2025년 11월 21일 · 2 분 · rammie

WSL로 GUI 프로그램 실행하기(wslg)

굳이 그럴 필요는 없지만, 나는 내 서버를 사용하기 위해 Windows 노트북에서 WSL을 통해 Linux를 실행하고, 그 위에서 ssh 접속을 한다. WSL(Windows Subsystem for Linux)은 Windows 환경에서 별도의 VM 프로그램 없이 Linux OS를 이용할 수 있게 해준다. WSL 설치 기존에는 CLI로만 서버를 제어하는 것으로 충분했는데, 최근에는 gui 프로그램 실행도 필요하게 되었다. 그런데 기존 WSL1에서는 gui를 지원하지 않는다. WSL의 gui(wslg)는 WSL2부터 지원한다(※ 아래 링크에서 WSL2 실행 조건 확인). WSL으로 Linux GUI 앱 실행 ...

2024년 3월 27일 · 1 분 · rammie