docs: deepen port boundary verification
This commit is contained in:
parent
4388565e06
commit
7789f0b4ec
@ -23,6 +23,10 @@ tags: [infra, ports, ingress, gateway, project-boundary, research]
|
||||
- 이 중 외부 웹 진입면은 `80/443`의 nginx다.
|
||||
- `3000`은 Gitea, `9000`은 auth-server, `51123`은 SSH다.
|
||||
- `5432`, `7687`, `8000`, `8100`, `8200`, `8505`, `9200`, `9600`은 운영상 직접 접근 가능한 상태지만, 모두 공용 진입면으로 설계된 것은 아니다.
|
||||
- `sudo ufw status numbered` 기준 전체 허용은 아니다.
|
||||
- `80/443`, `51123`은 광범위 허용
|
||||
- `5432`, `7687`은 일부 출발지 대역만 허용
|
||||
- 반면 `8000`, `8100`, `8200`, `8505`, `9000`, `9200`, `9600`은 현재 UFW 규칙상 별도 제한이 보이지 않는다
|
||||
|
||||
### 2. `ro-being.com`의 공용 API 진입은 대부분 `8100` gateway로 모인다
|
||||
- `/api/`는 `localhost:8100`으로 프록시된다.
|
||||
@ -41,6 +45,12 @@ tags: [infra, ports, ingress, gateway, project-boundary, research]
|
||||
- `starsandi`는 `ro-being.com` 아래에서 더 이상 내부 프록시를 쓰지 않고 `https://starsandi.com`으로 리다이렉트된다.
|
||||
- `git.ro-being.com`은 `localhost:3000` Gitea로 직접 간다.
|
||||
- `auth.ro-being.com`은 `localhost:9000` auth-server로 직접 간다.
|
||||
- 실도메인 확인 결과도 일치한다.
|
||||
- `https://ro-being.com/ -> 200`
|
||||
- `https://ro-being.com/api/healthz -> 405` (`/api/*`가 실제 gateway로 전달됨을 보여줌)
|
||||
- `https://git.ro-being.com/ -> 200`
|
||||
- `https://starsandi.com/ -> 307 /ko`
|
||||
- `https://auth.ro-being.com/ -> 404` (서브도메인 프록시는 존재하지만 루트 엔드포인트 자체는 미구현)
|
||||
|
||||
### 5. `robeing` 경로 안에서도 ingress 기준이 둘로 나뉜다
|
||||
- `ro-being.com/api/*`는 `8100 gateway`를 거친다.
|
||||
|
||||
@ -18,11 +18,13 @@ tags: [infra, 51123, ports, ingress, gateway, troubleshooting]
|
||||
- 51123의 현재 포트 상태는 단순히 “포트가 많다”가 아니라, `공용 진입면`, `프로젝트 내부 제어면`, `직접 프록시`, `직접 외부노출`이 섞여 있어 운영 판단 기준이 흐려진 상태다.
|
||||
- 실제로 `80/443` nginx 외에도 `8000`, `8100`, `8200`, `8505`, `9000`, `9200`, `9600`, `5432`, `7687`이 외부 접근 가능한 형태로 보이며, 이 중 무엇이 공식 진입면이고 무엇이 내부용인지 한 문서에서 바로 닫히지 않는다.
|
||||
- `robeing`만 봐도 `ro-being.com/api/* -> 8100 gateway`, `ro-being.com/rb8001/* -> 24서버 8001 직접`으로 ingress 기준이 이중화돼 있다.
|
||||
- `sudo ufw status numbered` 확인 결과 `5432`, `7687`은 일부 대역만 제한하지만 `8000`, `8100`, `8200`, `8505`, `9000`, `9200`, `9600`은 별도 제한 규칙이 보이지 않아, 리슨 상태와 노출 정책이 문서 기준 없이 섞여 있다.
|
||||
|
||||
## 원인
|
||||
- 프로젝트 수가 늘었지만 포트 관리 기준이 `프로젝트별`, `서버별`, `ingress별` 3축으로 아직 고정되지 않았다.
|
||||
- 특히 `8100`은 현재 사실상 `robeing 전용 제어면`인데, 운영상 공용 API 게이트웨이처럼 읽힐 여지가 남아 있다.
|
||||
- `goosefarminvesting`, `starsandi`, `gitea`, `auth`, `robeing`이 서로 다른 진입 방식을 쓰지만, 이 차이가 포트 문서나 정책 문서로 아직 승격되지 않아 구조 복잡성이 누적됐다.
|
||||
- 즉 직접 원인은 `프로젝트별 ingress 방식 불일치`와 `포트별 노출 정책 미고정`, 근본 원인은 `포트 책임 경계를 SSOT로 아직 승격하지 않은 상태`다.
|
||||
|
||||
## 영향
|
||||
- 포트 개방/차단, nginx 경로 변경, health 확인, 장애 판단에서 “어느 경로가 기준인가”를 잘못 읽을 위험이 높다.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user