Я изо всех сил пытался открыть порт 5432 для удаленного доступа к PostgreSQL. Который я установил на настольную машину Ubuntu 10.04.
Вот журнал оболочки:
xybrek@ubuntu:~$ sudo ufw allow 5432
[sudo] password for xybrek:
Skipping adding existing rule
xybrek@ubuntu:~$ sudo ufw allow 5432/tcp
Skipping adding existing rule
xybrek@ubuntu:~$ sudo ufw status
Status: active
To Action From
-- ------ ----
5432/tcp ALLOW Anywhere
5433/tcp ALLOW Anywhere
5432 ALLOW Anywhere
5432/tcp ALLOW OUT Anywhere
xybrek@ubuntu:~$ sudo nmap localhost -p5432
Starting Nmap 5.00 ( http://nmap.org ) at 2013-05-28 17:57 PHT
Warning: Hostname localhost resolves to 2 IPs. Using 127.0.0.1.
Interesting ports on localhost (127.0.0.1):
PORT STATE SERVICE
5432/tcp closed postgresql
Nmap done: 1 IP address (1 host up) scanned in 0.12 seconds
Когда я пытаюсь подключиться к порту с другой машины, это просто тайм-аут соединения, тогда как когда я пытаюсь подключиться к другому порту, как 80, 8080, это работает. Что мне не хватает?
Редактировать:
Status: active
To Action From
-- ------ ----
[ 1] 5432 ALLOW IN Anywhere
Вы разрешили OUT только на этот порт. Таким образом, он считается закрытым, поскольку вы не разрешили войти. Правило 5432 игнорируется, поскольку выход 5432 имеет преимущество.
Чтобы исправить это, лучше удалите то, что у вас есть, и снова добавьте правило.
Перечислите правила с помощью следующей команды
sudo ufw status numbered
, затем удалите правило по номеру строки
sudo ufw delete X
Где X - это правило, которое имеет 5432 против него. Повторите также, чтобы удалить другое правило, убедитесь, что вы снова выполнили команду status numbered, чтобы увидеть новые номера, как при удалении одного номера, измените номера
Затем добавьте правило правильно командой
sudo ufw allow 5432
Изменили ли вы pg_hba.conf
в соответствии со своей сетевой средой и listen_address
в postgresql.conf
?
Если это так, попробуйте следующее:
udo ufw allow from <network> to any port 5432
[ 118]
Для <network>
вы должны добавить что-то вроде 10.20.1.1/24
, подходящее вашей среде.