[점프 투 플라스크] Host에서 pagdmin4로 Server PostgreSQL DB연결

아래와 같이 AWS에 설치한 postgresql 의 configuration을 잡고 Host에서 연결을 시도했으나 timeout가 발생하고 있습니다.

sudo vi /etc/postgresql/12/main/postgresql.conf

listen_addresses = '*'  

sudo vi /etc/postgresql/12/main/pg_hba.conf

# Database administrative login by Unix domain socket
local   all             postgres                                md5

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
#host    all             all             127.0.0.1/32            md5
host    all             postgres             0.0.0.0/0            md5

ubuntu@ip-172-26-14-46:~$ netstat -ntlp | grep 5432

(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
tcp        0      0 0.0.0.0:5432            0.0.0.0:*               LISTEN      -
tcp6       0      0 :::5432                 :::*                    LISTEN      -

https://imgur.com/a1brbwm

jinoung 62

M 2021년 11월 14일 9:19 오전

5432 포트 방화벽은 해제하셨나요? - 박응용님, 2021년 11월 14일 9:22 오전 추천 , 대댓글
하나하나 알아가는게 참 재미있네요... 검색해서 방화벽 설정을 해 보았는데 잘 안되네요..ㅜ.ㅜ - jinoung님, 2021년 11월 14일 1:47 오후 추천 , 대댓글
목록으로
1개의 답변이 있습니다. 1 / 1 Page

말로만 듣던 방화벽 설정을 하게 되나니...ㅎㅎ
방화벽 해제하는 방법을 찾아서 아래와 같이 했는데...
브라우저에서 (http://52.79.115.85/) 접속이 안되어 버리는 상황이 되어 버렸습니다...ㅜ.ㅜ
처음에 firewall-cmd 라는 이름만 보고 기본적으로 서버에 firewall 이 설치되어 있고 이것을 컨트롤 할 수 있는 프로그램이라고 생각했는데 firewall 자체를 설치하는 것이었네요...
그래서 http접속도 안되게 되었구요...80번 port를 열어주니 http접속이 되었습니다.
firewall이 zone이라는 것으로 설정을 구분하여 적용하는 것도 알게 되었네요..ㅎㅎ
pgAdmin접속은 아직 안되지만...그래서 굳이 이것을 해봐야 하나 그냥 넘어갈까도 생각했었는데...덕분에 firewall을 공부하게되어 너무 좋습니다...감사합니다.

ubuntu@ip-172-26-14-46:~$ sudo apt update && sudo apt install firewalld -y
...
ubuntu@ip-172-26-14-46:~$ sudo firewall-cmd --version
0.8.2

ubuntu@ip-172-26-14-46:~$ sudo firewall-cmd --permanent --zone=public --add-port=5432/tcp --add-port=80/tcp

success
ubuntu@ip-172-26-14-46:~$ sudo firewall-cmd --reload
success
ubuntu@ip-172-26-14-46:~$ sudo systemctl restart postgresql.service
ubuntu@ip-172-26-14-46:~$ sudo firewall-cmd --list-all
public
target: default
icmp-block-inversion: no
interfaces:
sources:
services: dhcpv6-client ssh
ports: 5432/tcp 80/tcp
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

jinoung

M 2021년 11월 14일 3:23 오후

aws 사용하시면 방화벽 해제는 웹 콘솔에서 하시면 됩니다. 다음 참고해 보세요. https://wikidocs.net/81073#_4 - 박응용님, 2021년 11월 14일 8:23 오후 추천 , 대댓글
@박응용님 아, 이 방황벽 설정을 말씀하시는 거였군요...5432포트 추가해주니 연결되었습니다. 그럼 제가 설치한 firewalld는 AWS방화벽 안쪽에 또 방화벽을 친 셈이되는 거였군요! 감사합니다. - jinoung님, 2021년 11월 15일 12:12 오전 추천 , 대댓글