시간 순으로 말해야 겠다.
해킹을 당했다.
2018년 11월 마지막 글을 쓴 이후 다소 방치를 해 두었는데, WordPress 업데이트, PHP 업데이트를 게을리 하다 보니, 어느날 보니 해킹을 당해 있었다. 해킹의 결과 내 글 중 다소 인기가 있는 글을 클릭하면, 이상한 사이트로 이동하도록 하였고, 그 보다 더 큰 손실은 내가 업로드 한 미디어 파일들을 모두 잃어 버렸다.
해킹에 대해서 이야기 하자면, 해킹이 이번이 처음은 아니다. 이 블로그의 첫 글은 2008년 9월인데, 사실 이 사이트(그리고 블로그)는 2000년 이전부터 써 왔었다. 그런데 2008년 여름, 나는 멕시코 출장 중이었고, 내 개인 사이트의 서버는 해킹 되어 김선일 참수 동영상 유포로 사용되었다. 당시 정부에서는 이와 관련 매우 신속히 처리했는데, 정부기관으로부터 연락이 왔고, 빠른 조취가 없으면 네트워크를 끊는다고 하였다. 나는 조취를 취할 시간이 없었고, 서버는 강제 종료되었는데, 나중에 확인해 보니, 복구가 불가능한 상태가 되었다. 또 한가지는 당시 내 친구들과 지인들 포함 10개 가량의 블로그를 호스팅 해 주고 있었는데, 모든 데이타도 함께 사라져 꽤 오랫동안 원망의 대상이 되었다.
새로운 블로그 서버
해킹 당한 서버는 긴급 조취를 취한 뒤 다시 방치를 하다가, 우연히 사이트 하나를 발견 했다.
Docker 를 AWS 의 ECS + ELB 를 이용해서 배포하는 것을 연습하다 우연히 알게 되었고, 여기서 WordPress 예제가 있어서 실험해 보다가 이참에 실제 사이트를 옮기자는 결론까지 내렸다.
물론 비용으로 보자면 엄청난 증가를 가져왔다. 기존에 조그마한 서버 한대에서 회사 블로그와 내 블로그를 함께 호스팅 했는데, 이제는 RDS 별도로 두고, EC2 Instance 2개에 분산까지 했으니, 몇곱절 비싼 구성이고, 별 트래픽도 없는 사이트에 과도한 투자이긴 하다. 하지만, 효율을 위한 선택이라기 보다는 개인적 만족을 위한 셋업이라 봐야겠다.
이미지 복원
다행이도, 이 사이트에 올라와 있는 이미지의 80% 정도는 복원을 했다. Google Photos 와 Adobe Lightroom 에서 파일명 검색으로 대부분 찾을 수 있었다. (일부는 iCloud Photos) 오히려 스크린샷이라던지 이런 건 따로 백업이 안되어 있어서 찾을 수 없었다. 마치 장기간 보험료만 납부하다가 이번 사고로 보험금을 받은 느낌이 들었다.
이번 WordPress 를 Docker 기반으로 변경 했기 때문에, Local 에 저장할 수는 없어, 처음에는 AWS EFS 를 이용해서 저장했다가, 한단계 더 나가서 S3 로 복사되도록 하였다.
이후 해킹에 대한 대책?
사실 이후 또 다른 해킹에 대한 대책은 없다. PHP 와 WordPress 는 워낙 수시로 보안에 대한 업데이트가 발생하고, 수시로 업데이트 해 주지 않으면, 언제 또 뚫릴 지 모른다. 방치에는 묘약이 없고, 오히려 자동 백업만이 남은 숙제이다.