문제
프로젝트 진행 중 프론트 팀원 한 분께서 부탁을 하셨다. 앱 배포를 위해 조직 페이지가 필요하여 github.io로 배포해 두었으니 저희 도메인에 연결해 주세요!라는 말과 함께 A, AAAA 레코드를 보내주셨다.
github.io를 붙이는 것은 처음이었지만 그다지 어려운 부탁은 아니었기에 Route53에 A, AAAA 레코드를 추가하고 도메인 연결을 마쳤다.
약 10분 뒤에 확인까지 정상적으로 했고, 모든게 해결된 줄 알았다!
하지만…..
2일 뒤 정기 회의 시간에 팀원이 페이지가 털린 것 같다는 말을 했다. 놀랐지만 그럴리가 있나 하고 페이지를 확인해 보니 실제로 인도네시아 불법도박 사이트로 연결되고 있었다..
너무 당황했지만 천천히 문제를 살펴보고, 공식 문서를 보며 해결했던 과정을 정리해보려고 한다.
AWS는 안전한가?
첫 번째로 검사한 것은 aws 리소스에 침입하지는 않은 것인가? 였다. 실제로 aws가 털린 것이라면 문제의 원인은 정말 빠르게 찾을 수 있었지만 비용, 도메인 이사 등 업무가 산더미가 될 것이 확실했다.
확인을 해본 결과 aws 리소스는 모두 안전하게 잘 관리되고 있었다.
그럼 원인은 Github인가?
Github.io에 페이지를 개설한 뒤 Settings에 들어가서
Route53에 레코드를 등록했다면 Custom domain을 등록해 주면 된다.
조금 의아했던 부분은 A,AAAA레코드가 모든 사용자에게 동일하다는 것이었다.
하지만 Custom domain 등록을 통해 헤더에 각자 올바른 저장소로 라우팅 한다는 내용을 읽게 되었고 그러려니 했다.
→ 왜냐면 우리도 Custom domain 등록을 했으니까!!
실제론 제대로 한게 아니었다
Custom domain?
문제는 여기서 발생한 것이었다. Custom domain이라고 저장을 했는데…. 나만 이 도메인이 내 것이라는 걸 알지 깃헙은 알 방법이 없다.
그래서 처음이니까 그냥 통과시켜준 것이지, 누군가 이 도메인에 또 등록을 하고 싶다면? 일련의 과정을 거쳐 변경시켜 줄 수 있다.
그렇게 뺏긴 것이었다.
그럼 Custom domain에 다시 save 해두면 되겠네! 라고 했지만 등록을 하려고 하자 이미 등록된 도메인이라며 에러를 반환했다.
해결 과정
해결을 해두어서 캡쳐를 하진 못했지만, 이 도메인은 이미 등록된 도메인이라는 에러를 반환한다.
즉, 우리는 그 도메인 등록한 거 허위 사용자예요!! 우리 아니에요!!라는 것을 밝혀야 한다.
과정은 다음과 같다.
1. Github main 페이지 우 상단으 프로필을 클릭한다.
2. 개인 계정이라면 Settings를 Orginazation이라면 Your Orginazations에 들어가 맞는 레포지토리의 settings를 누른다.(권한 필요)
3. 좌측의 pages를 눌러 위와 같은 화면을 띄운다.
4. Add a domain을 눌러 다음과 같은 화면에서 본인의 도메인을 입력한다. ex) naver.com
5. Route53과 같이 본인이 사용하는 도메인 관리 툴에 TXT레코드를 등록해 주면 된다.
이때 record는 ""로 감싸주어야 한다.
6. 설정을 마치고 잠시 뒤 하단의 verify를 눌러주면 완성된다.
7. 다시 Github.io의 Pages로 이동하여 Custom domain을 등록해주자.
8. 이전과 다르게 잘 될 것이다!
'지식 정리 > git' 카테고리의 다른 글
[Git] Github Actions CI/CD (1) | 2025.01.23 |
---|---|
[Git] CI/CD란? (0) | 2025.01.20 |