--- tags: [infra, 51123, 51124, postgres, neo4j, ufw, troubleshooting] --- # 260310 24서버 DB5432 및 Neo4j 7687 허용규칙 보정 ## 상위 원칙 - [Infra Project Identity](../../00_Philosophy/00_IDENTITY/Infra_Project_Identity.md) - [Core Infrastructure Principles](../../00_Philosophy/01_PRINCIPLES/Core_Infrastructure_Principles.md) - [Operational Guardrails](../../00_Philosophy/02_GUARDRAILS/Operational_Guardrails.md) ## 관련 문서 - [24서버 실서비스 운영전환 리서치](../research/260309_24서버_실서비스운영전환_리서치.md) - [24서버 실서비스 운영전환 계획](../plans/260309_24서버_실서비스운영전환_계획.md) - [51123 DB5432 차단사고 복구 및 의존포트 점검](./260303_51123_DB5432_차단사고_복구_및_의존포트_점검.md) ## 문제 - 24 서버 `rb8001`이 `postgresql://robeings:robeings@192.168.0.100:5432/main_db`로 접속 시 timeout이 반복됐다. - 원인은 23 서버 UFW가 `5432/tcp`를 기존 24 IP `192.168.219.52`와 Docker 브리지 `172.16.0.0/12`만 허용하고, 현재 24 IP `192.168.0.106`은 허용하지 않았기 때문이다. - 추가로 24 서버 `rb8001`의 `NEO4J_URI=neo4j://192.168.0.100:7687` 경로도 timeout이었다. - 원인은 23 서버 Neo4j가 `localhost:7687`에만 리슨 중이었고, 현재 24 IP `192.168.0.106`에 대한 `7687/tcp` 허용도 없었기 때문이다. ## 조치 - 2026-03-10 18:29 KST 기준 아래 규칙을 추가했다. ```bash sudo ufw allow from 192.168.0.106 to any port 5432 proto tcp ``` - 2026-03-10 18:40 KST 기준 Neo4j Bolt를 24에서 접근 가능하게 아래 조치를 적용했다. ```bash sudo sed -i 's/^#server\.bolt\.listen_address=:7687$/server.bolt.listen_address=0.0.0.0:7687/' /etc/neo4j/neo4j.conf sudo ufw allow from 192.168.0.106 to any port 7687 proto tcp sudo systemctl restart neo4j ``` ## 확인 - `sudo ufw status | rg '5432|192.168.0.106'` 결과: - `5432/tcp ALLOW 192.168.219.52` - `5432/tcp ALLOW 172.16.0.0/12` - `5432/tcp ALLOW 192.168.0.106` - 23 서버 PostgreSQL 리슨 상태: - `0.0.0.0:5432` - `[::]:5432` - `sudo ufw status | rg '7687|192.168.0.106'` 결과: - `7687/tcp ALLOW 192.168.0.106` - 23 서버 Neo4j 리슨 상태: - `*:7687` - `127.0.0.1:7474` - `journalctl -u neo4j` 결과: - `Bolt enabled on 0.0.0.0:7687.` - `HTTP enabled on localhost:7474.` - 24 서버 호스트와 `rb8001` 컨테이너 내부에서 모두 확인: - `192.168.0.100:5432 -> ok` - `192.168.0.100:7687 -> ok` ## 주의 - 기존 `192.168.219.52` 규칙은 아직 제거하지 않았다. 24 전환 검증 완료 전까지는 롤백 안전망으로 유지한다. - 이번 조치는 `Bolt 7687`만 외부 리슨으로 열었고, `HTTP 7474`는 계속 `localhost`에 유지했다. - 기존 `192.168.219.0/24`, Docker 브리지 대역의 `7687` 허용 규칙은 다른 의존 경로 검증 전까지 유지한다. ## 기록 위치 결정 - 본 이슈는 앱 코드가 아니라 `23 인프라 방화벽과 24 실행면 연결` 문제이므로 `infra/DOCS/journey/troubleshooting`이 기준 기록 위치다.