ufw는 postgres 포트 5432에 대한 연결을 허용하지 않습니다.

ufw는 postgres 포트 5432에 대한 연결을 허용하지 않습니다.

원격 Postgres 시스템을 통해 ufw disable로컬 시스템에서 연결할 수 있습니다.

ufw enable그런데 아래 이미지를 보면 연결이 되지 않습니다.

C:\Users\HOME>telnet 80.240.24.195 5432
Connecting To 80.240.24.195...Could not open connection to the host, on port 5432: Connect failed

다음은 재부팅할 때의 Postgres 구성입니다.

고양이/etc/postgresql/12/main/postgresql.conf

# - Connection Settings -

listen_addresses = '*'          # what IP address(es) to listen on;
                                        # comma-separated list of addresses;
                                        # defaults to 'localhost'; use '*' for all
                                        # (change requires restart)
port = 5432                             # (change requires restart)
max_connections = 100                   # (change requires restart)
#superuser_reserved_connections = 3     # (change requires restart)
unix_socket_directories = '/var/run/postgresql' # comma-separated list of directories

고양이/etc/postgresql/12/main/pg_hba.conf

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

# 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             all             0.0.0.0/0               md5

# IPv6 local connections:
host    all             all             ::1/128                 md5

Postgres 호스트 자체에서 시도하면 텔넷이 작동하지만 로컬 랩톱에서 연결을 설정하려고 하면 실패합니다.

root@DKERP:/# ufw status numbered
Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 22                         ALLOW IN    Anywhere
[ 2] 8069                       ALLOW IN    Anywhere
[ 3] 443/tcp                    DENY IN     Anywhere
[ 4] 443                        DENY IN     Anywhere
[ 5] 80/tcp                     DENY IN     Anywhere
[ 6] 80,443,5432/tcp            DENY IN     Anywhere
[ 7] 80                         DENY IN     Anywhere
[ 8] 4433/tcp                   DENY IN     Anywhere
[ 9] 5432/tcp                   ALLOW IN    Anywhere
[10] 22 (v6)                    ALLOW IN    Anywhere (v6)
[11] 8069 (v6)                  ALLOW IN    Anywhere (v6)
[12] 443/tcp (v6)               DENY IN     Anywhere (v6)
[13] 443 (v6)                   DENY IN     Anywhere (v6)
[14] 80/tcp (v6)                DENY IN     Anywhere (v6)
[15] 80,443,5432/tcp (v6)       DENY IN     Anywhere (v6)
[16] 80 (v6)                    DENY IN     Anywhere (v6)
[17] 4433/tcp (v6)              DENY IN     Anywhere (v6)
[18] 5432/tcp (v6)              ALLOW IN    Anywhere (v6)

내 로컬 노트북에서 Postgres를 연결하여 작업하려면 추가로 수행해야 할 작업을 제안해 주실 수 있나요?

답변1

ufw출력에 표시된 대로 포트 5432를 거부하는 항목이 있습니다. 항목을 제거하고 서비스를 다시 시작하여 작동하게 했습니다.

[ 6] 80,443,5432/tcp            DENY IN     Anywhere

 ufw delete 6

ufw disable

ufw enable

관련 정보