외부 접속 허용 설정
1. 사용자 비밀번호 설정
외부에서 접속하기 위해선 우선 postgres
비밀번호를 설정해야 합니다.
postgres 계정으로 접속합니다.
1 | su - postgres psql |
1 | # 비밀번호 설정 |
2. 방화벽 개방
방화벽에서 5432 포트를 개방합니다.
1 | firewall-cmd --permanent --zone=public --add-port=5432/tcp |
3. 설정 파일 변경
postgresql 접속 후 Data 디렉터리 확인을 할 수 있습니다.
1 | show data_directory; |
postgresql.conf 설정 파일을 엽니다.
1 | vi /var/lib/pgsql/11/data/postgresql.conf |
설정 파일에서 다음과 같이 변경합니다.
1 | # listen_addresses = 'localhost' -> 주석으로 되어있음 |
4. 보안 설정 변경
외부 접속을 위해 보안 설정을 변경합니다.
root 계정으로 복귀합니다.
1 | su - root |
설정 파일을 엽니다.
1 | vi /var/lib/pgsql/11/data/pg_hba.conf |
설정 정보를 다음과 같이 변경합니다.
1 | local all all peer => local all all md5 |
md5
: 패스워드를 md5로 암호화해서 전송
5. 서비스 재시작
1 | sudo systemctl restart postgresql-11 |
참고
아래 링크에서는 pg_hba.conf를 수정하지 않고 접근제어를 할 수 있도록 하는 방법이 설명되어 있는데 테스트해보진 않았습니다.