Private Subnet과 Gitlab
안녕하세요. 이번에 public subnet 에 있는 bastion host를 통해서 private subnet에 있는 web server라는 ec2에 cli 명령어로 gitlab ee 버젼을 설치해서 도메인(a.test.com)으로 설정하였습니다. 그런데 sudo vi /etc/gitlab/gitlab.rb 파일에 bastion host의 public ip를 넣어야 도메인으로 gitlab server의 사이트로 접속이 되던데.. 이러면 public ip가 그대로 노출될 수도 있어서 도메인으로 바꾸면 사이트의 접속이 막히고 있습니다. 도메인으로 설정을 바꾸면 어떻게 해야하나 질문을 드립니다.
CI/CD 과정은 리포지토리는 Gitlab, 빌드과정은 codebuild를 사용하려고 합니다. codebuild와 연결을 할때도 액세스 토큰이 필요해서 이부분은 어떻게 설정해야 하나요?
답변 2
0
안녕하세요.
질문주신 내용은 제가 제공하는 강의와 관련 없는 내용으로 보입니다.
또한, 해당 내용들은 전반적인 환경에 따라 구성이나 설정이 달라질 수 있을 것 같아 제공해주신 내용만으로는 답변드리기도 어려울 것으로 보입니다.
강의 내용과 관련된 질문 부탁드리겠습니다.
감사합니다.
0
안녕하세요, 인프런 AI 인턴입니다. 김영웅님.
현재 GitLab 서버를 private subnet의 EC2에 설치하고, bastion host를 통해 접근하는 구조를 구현하고 계신 것 같습니다. 이 경우, bastion host의 public IP를 통해 접근하되, 보안을 위해 도메인을 활용하고 싶으신 것이군요. 이와 관련하여 다음과 같은 접근 방식을 고려할 수 있습니다:
도메인 설정 및 보안 강화
DNS 설정: 도메인(a.test.com)을 bastion host의 public IP에 매핑하셨다면, 이 설정은 DNS 레코드에서 A 레코드를 통해 가능합니다. 다만, 공개 IP를 노출하는 문제를 피하기 위해서, 보안 그룹이나 네트워크 ACL 설정을 활용하여 특정 IP에서만 접근이 가능하도록 제한할 수 있습니다.
Reverse Proxy 사용: bastion host에 Reverse Proxy를 설정하여, 외부 요청을 받아 실제로 private subnet의 GitLab 서버로 요청을 중계하는 방식을 사용할 수 있습니다. 이를 통해 외부에서는 bastion host의 도메인을 통해 GitLab 서버에 접근하게 되고, 내부적으로는 private IP를 활용할 수 있어 보안이 강화됩니다. Nginx나 Apache를 사용하여 이를 설정할 수 있습니다.
CI/CD 설정 및 액세스 토큰 관리
- GitLab과 AWS CodeBuild 연동: GitLab에서 생성한 개인 액세스 토큰을 활용하여 CodeBuild와 통신할 수 있습니다. GitLab의 ‘Settings > Access Tokens’에서 새로운 토큰을 생성하고, 해당 토큰을 환경 변수로 AWS CodeBuild에 등록하여 사용 가능합니다. 또한, GitLab Runner와의 연동을 위해서는 Runner가 접근할 수 있는 네트워크 환경을 구성해야 합니다.
관련된 GitLab과의 통합이나 GitLab CI/CD 토큰 관리 등에 대해 더 알아보시는 것도 좋은 방법입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
에이전트 프로그램 다운로드 불가
0
17
2
verify.sh 4단계 실패 — Jenkins 컨테이너에서 127.0.0.1:6443 connection refused
0
13
1
베개머리투자법 섹션 5를 듣고 질문드립니다.
0
16
2
ai 레드티밍 자료 및 강의 누락
0
19
1
교육 자료 최신본 제공 가능 문의
0
26
2
미국 써머 타임 적용에 대해서 질문입니다.
0
27
1
아무 수정도 안하고 주어진 소스로 그대로 했는데 패스워드 에러가 남
1
44
1
처음 실행 시 계속 패스워드가 틀리다고 나옴. 수정하고 해도 마찬가지임
1
51
2
클로드 API 기간설정에 대해서
1
43
1
후속강의 쿠폰
0
38
2
섹션 2 - 9강. API 관련 질문
0
54
2
환경 셋팅관련 동영상이 어디에 업로드되어 있나요?
1
45
1
11강 [실습] Docker로 MySQL1 분만에 실행하기
0
61
2
11강 [실습] Docker로 MySQL1 분만에 실행하기
0
51
2
cosign tlog 관련 409에러
1
148
2
gitleaks 시크릿 스캔의 기준에 대한 질문입니다.
1
131
2
gitlab-ci.yml과 CI/CD 파이프라인 까지 수강중입니다.
0
145
2
first before
1
116
1
AWS 역할에 대해서
1
396
1
강의 교안
1
312
1
DooD, DinD 또는 Kaniko 외 다른 방법은 없는걸까요?
2
526
1
Kaniko 의 한계 부분에 대한 질문
1
292
1
artifacts 에 대한 질문이 있습니다!
1
291
1
App Runner 서비스 생성 시 실패
2
595
1





