1. 왜 내부 접속 설정이 필요한가?
PostgreSQL은 기본적으로 로컬 접속만 허용합니다. 하지만 팀 개발이나 내부 애플리케이션 연동을 위해 다른 PC에서도 데이터베이스에 접속할 수 있도록 설정해야 할 때가 많습니다. 이를 위해 몇 가지 설정 파일을 수정하고 방화벽을 열어야 합니다.
2. postgresql.conf 설정
위치 확인
운영체제에 따라 경로는 다르지만 일반적으로 아래 경로에 위치합니다:
- Ubuntu: /etc/postgresql/14/main/postgresql.conf
- Windows: C:\Program Files\PostgreSQL\14\data\postgresql.conf
설정 변경
listen_addresses 항목을 찾아 아래처럼 수정합니다:
listen_addresses = '*'
- 기본값은 localhost로 되어 있으며, *로 변경하면 외부 IP의 접속도 허용됩니다.
변경 후에는 저장하고 PostgreSQL 서비스를 재시작해야 반영됩니다.
3. pg_hba.conf 설정
pg_hba.conf는 어떤 IP에서 어떤 인증 방식으로 접속할 수 있는지 제어하는 파일입니다.
설정 예시
아래 줄을 파일 마지막에 추가합니다:
host all all 192.168.0.0/24 md5
- 192.168.0.0/24는 내부 네트워크 대역입니다. 실제 사용 환경에 맞게 IP 대역을 조정하세요.
- md5는 비밀번호 인증 방식으로, 일반적인 환경에서 널리 사용됩니다.
4. 방화벽 설정
PostgreSQL 기본 포트는 5432입니다. 이 포트를 다른 PC에서 접근 가능하도록 열어야 합니다.
Windows
- "고급 보안이 포함된 Windows Defender 방화벽" → "인바운드 규칙"에서 새 규칙 생성
- 포트 선택 → 5432 입력 → 허용 → 적용 대상 선택 → 이름 지정 후 완료
Ubuntu (UFW 기준)
sudo ufw allow 5432/tcp
이후 PostgreSQL 서비스를 재시작합니다.
sudo systemctl restart postgresql
다음 글에서는 실제로 다른 컴퓨터에서 PostgreSQL에 접속하는 방법과 테스트 과정을 정리하려 합니다. IP 주소 확인법, psql 명령어 사용법, 접속 오류 해결 팁까지 함께 다룰 예정입니다.