postgresql 설치후에 로컬밖에 접속이 안돼?
PostgreSQL은 IP를 기반으로 한 접근 제어를 통해 보안 증대 효과를 보고있습니다.
최초 설치시 localhost에서만 접근만을 허용하기 때문에 어떠한 원격 접속이 불가합니다.
때문에 우리가 사용하고 있는 IP를 허용해주는 설정이 필요합니다.
미 설정시 Access Denied 발생!
이 설정을 수행하지 않고 접속을 시도할 경우 아래와 같은 Error가 발생합니다.
pg_hba.conf 파일 수정
■ 하나의 IP / IP 대역 허용
<root@linux># vi /etc/postgresql/9.1/main/pg_hba.conf
host all all 192.168.0.0/24 md5
host all all 192.168.1.50/24 md5
위 설정은, 192.168.0.X/24 대역의 모든 User가 모든 DB에 접근이 가능하며, 192.168.1.50/24 IP의 모든
User가 모든 DB에 접근이 가능하다는 설정입니다.
참고로 /24는 Subnetmask 255.255.255.0을 의미합니다.
(255.255.255.0은 11111111.11111111.11111111.00000000이므로 24bit이기 때문입니다.)
■ 모든 IP / IP 대역 허용
위와 같이 설정할 경우, Access할 수 있는 IP를 일일히 입력해줘야 된다는 번거로움이 있습니다.
모든 IP를 허용하고자 할 경우, 아래 내용을 /etc/postgresql/9.1/main/pg_hba.conf에 추가해주시면 됩니다.
host all all 0.0.0.0/0 md5
postgres.conf 수정
/etc/postgresql/9.1/main/postgresql.conf file을 열어, 'listen_address' 값을 변경합니다.
<root@linux># vi /etc/postgresql/9.1/main/postgresql.conf
listen_addresses = '*'
서비스 재시작
설정 값 변경을 적용시키기 위해 Service를 재시작합니다.
<root@linux># /etc/init.d/posgresql restart
* Restarting PostgreSQL 9.1 database server [ OK ]
예전(몇년전...)에 메모해둔것을 블로그에 다시 적으며 기본을 공부하고있습니다.
요즘 시스템과 많이 다른부분이 있을지도 모르지만, 기본구성이 이렇다는걸 알게되면 이와 비슷한 상황인 경우 대처가 수월할것 같아 글을 남깁니다.
'마니의 공부방 > DataBase' 카테고리의 다른 글
[tibero] 테이블 생성/사용자추가/접속권한 부여 (0) | 2021.01.07 |
---|---|
[mysql] db 백업 (0) | 2020.12.27 |
[oracle] sequence 생성/수정/삭제 (0) | 2020.12.24 |
[postgres] 백업 및 복구 (0) | 2020.12.23 |
[mysql] 테이블 생성 및 사용자 추가/접근권한 부여 (0) | 2020.12.22 |