С Новым годом! Форум программистов, компьютерный форум, киберфорум
Ubuntu, Mint Linux
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/55: Рейтинг темы: голосов - 55, средняя оценка - 5.00
5 / 4 / 2
Регистрация: 30.05.2022
Сообщений: 58
1

Проверить, открыт ли порт 5432 для Postgresql с помощью Telnet

12.06.2023, 09:15. Показов 11405. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Hello world!

Есть сервер с установленной на него Ubuntu. IP этого сервера: 192.168.21.140
Команда пинг проходит, как с другого сервера(виндовый), так и с этой машины(Ubuntu)

Мне нужно проверить открыт ли порт 5432 для Postgresql
Использую ля этого telnet
Команда telnet для порта 5432 - не проходит, а для протра 80 проходит

Правильно, что порт 5432 закрыт на самой Ubuntu?
Если да, как его открыть?
Миниатюры
Проверить, открыт ли порт 5432 для Postgresql с помощью Telnet   Проверить, открыт ли порт 5432 для Postgresql с помощью Telnet  
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.06.2023, 09:15
Ответы с готовыми решениями:

Postgre не может использовать порт 5432. PostgreSQL на Docker
Не получается работать с контейнером. Постоянно падает. Вот логи: The files belonging to this...

проверить открыт ли порт
С помощью какой команды проверит открыт ли порт на моем ПК к примеру 25 Добавлено через 10 минут...

Socket UDP проверить открыт ли порт
Есть ли возможность сначала проверить открыт ли порт на удаленном сервере, и если открыт, отправить...

Как проверить открыт\закрыт порт по внешнему IP
Собственно вопрос в теме... Как сделать проверку порта по моему внешнему IP и вывести в лабл...

15
Модератор
Эксперт по компьютерным сетямЭксперт HardwareЭксперт Windows
8669 / 4380 / 552
Регистрация: 13.03.2013
Сообщений: 15,972
Записей в блоге: 16
12.06.2023, 09:44 2
Цитата Сообщение от yagrus2 Посмотреть сообщение
Если да, как его открыть?
Bash
1
iptables -I INPUT -p tcp --match multiport --dports 5432 -j ACCEPT
0
Эксперт по компьютерным сетямЭксперт NIX
13358 / 7490 / 820
Регистрация: 09.09.2009
Сообщений: 29,286
12.06.2023, 12:59 3
Цитата Сообщение от yagrus2 Посмотреть сообщение
Правильно, что порт 5432 закрыт на самой Ubuntu?
telnet - это возможность проверить факт подключения, но абсолютно не способ проверить, открыт ли порт
в общем случае абстрактная "открытость порта" означает выполнение ДВУХ условий:
  • порт либо ОТКРЫТ, либо НЕ ЗАКРЫТ в файерволе
  • на компьютере запущено приложение, которое "слушает" указанный порт (ожидает на нем подключений)
проверка статуса файервола в линуксе (с последующим внимательным прочтением и ОСОЗНАНИЕМ полученного ответа):
Код
sudo iptables -L -n -v
проверка запущенных приложений с номерами портов, которые они слушают:
Код
sudo netstat -anp | grep -i listen
(для того, чтобы в система была програма возможно потребуется установить пакет net-tools

Добавлено через 48 секунд
Цитата Сообщение от Maks Посмотреть сообщение
--match multiport
а зачем "мультипорт" для ОДНОГО порта?
1
Эксперт NIX
3279 / 890 / 196
Регистрация: 14.01.2013
Сообщений: 4,444
12.06.2023, 18:32 4
Цитата Сообщение от yagrus2 Посмотреть сообщение
Команда telnet для порта 5432 - не проходит, а для протра 80 проходит
С большой долей вероятности, файер тут не при чём. Порт 5432 кто слушает?

Посмотреть прослушиваемые порты можно и так:
Bash
1
ss -tln
А проверить порт так:
Bash
1
nmap -Pn -p5432 192.168.21.140
1
5 / 4 / 2
Регистрация: 30.05.2022
Сообщений: 58
15.06.2023, 10:58  [ТС] 5
Попробовал предложенные команды.
Получил такой результат
Миниатюры
Проверить, открыт ли порт 5432 для Postgresql с помощью Telnet  
0
5 / 4 / 2
Регистрация: 30.05.2022
Сообщений: 58
15.06.2023, 11:00  [ТС] 6
Kubuntovod , вот результат ваших команд.
Порт закрыт.
Миниатюры
Проверить, открыт ли порт 5432 для Postgresql с помощью Telnet  
0
5 / 4 / 2
Регистрация: 30.05.2022
Сообщений: 58
15.06.2023, 11:06  [ТС] 7
Dmitry, Maks предложил команду с мультипортом.
Код
iptables -I INPUT -p tcp --match multiport --dports 5432 -j ACCEPT
Почему не стоит так делать?

Добавлено через 2 минуты
То есть. 5432 -закрыт. Его слушает postgres.

Как его открыть?
0
Эксперт NIX
3279 / 890 / 196
Регистрация: 14.01.2013
Сообщений: 4,444
15.06.2023, 11:42 8
Цитата Сообщение от yagrus2 Посмотреть сообщение
iptables -I INPUT -p tcp --dports 5432 -j ACCEPT
Так достаточно будет. Мультипорт, это когда несколько портов, в одном правиле, насколько я помню.

Но иптабля говорит, что там всё разрешено.

Добавлено через 3 минуты
А точно такой адрес? Покажите ещё вывод
Bash
1
ip r
Добавлено через 3 минуты
А, кстати! Порт слушается на 127.0.0.1 !!! А должно быть типа такого 0.0.0.0:5432. То бишь, греть ухо во все стороны, а не только локально. Это сервер БД так настроен. Надо переделать.
1
Эксперт по компьютерным сетямЭксперт NIX
13358 / 7490 / 820
Регистрация: 09.09.2009
Сообщений: 29,286
15.06.2023, 12:36 9
Цитата Сообщение от yagrus2 Посмотреть сообщение
То есть. 5432 -закрыт. Его слушает postgres.
Как его открыть?
с портами у вас итак все хорошо - по всем трем цепочкам стоит "политика" "принимать". Так что, можете смело считать, что ФАЙЕРВОЛА У ВАС СЕЙЧАС НЕТ!!!
а причину вам написал Kubuntovod, ваш постгрес слушает только на локалхосте (127.0.0.х), и достучаться к нему С ЛЮБОЙ "наружи" просто не возможно. Это кстати, один из "стандартных" методов защиты серверов баз данных
1
5 / 4 / 2
Регистрация: 30.05.2022
Сообщений: 58
16.06.2023, 07:43  [ТС] 10
Kubuntovod, вот
Код
user@v02-dev-airflow-001:~$ ip r
default via 192.168.20.254 dev ens32 proto static metric 20100 
169.254.0.0/16 dev ens32 scope link metric 1000 
192.168.20.0/22 dev ens32 proto kernel scope link src 192.168.21.140 metric 100 
192.168.20.254 dev ens32 proto static scope link metric 20100 
192.168.21.0/24 dev ens32 proto kernel scope link src 192.168.21.140 metric 100
0
Эксперт NIX
3279 / 890 / 196
Регистрация: 14.01.2013
Сообщений: 4,444
16.06.2023, 08:07 11
Цитата Сообщение от yagrus2 Посмотреть сообщение
169.254.0.0/16 dev ens32 scope link metric 1000
Надо проверить, есть ли смысл в этом маршруте. Если нет, вынести нафиг.

Bash
1
2
3
user@v02-dev-airflow-001:~$ ip r
default via 192.168.20.254 dev ens32 proto static metric 100 
192.168.20.0/22 dev ens32 proto kernel scope link src 192.168.21.140 metric 100
ИМХА, вот к такому виду надо привести. Хоть постгресу это не поможет, зато порядок будет. А в настройках сервера БД надо изменить адресацию, на которой он будет слушать порт. Если нужен доступ отовсюду, то чего-то-там-листен-адрес = "*"
0
5 / 4 / 2
Регистрация: 30.05.2022
Сообщений: 58
20.06.2023, 19:38  [ТС] 12
Лучший ответ Сообщение было отмечено Maks как решение

Решение

Спасибо всем за помощь!

Изначально задача была в том, чтобы суметь достучаться до бызы Postgres по порту 5432 из вне (внутри локальной сети).

Для этого нужно было убедиться, что данный порт не заблокирован фаерволом и далее внести изменения в конфигурационные файлы Postgres.
Ниже список команд, которые я использовал для настройки Postgres
1. Находим расположение первого конфигурационного файла postgresql.conf
Код
su - postgres -c "psql -c 'SHOW config_file;'"
2. С помощь текстового редактора nano открываем этот файл
Код
sudo nano /etc/postgresql/13/main/postgresql.conf
3. Находим блок настрок
Код
#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------
4. Изменяем значение параметра listen_addresses на '*'. По умолчанию данный параметр имеет значение 'localhost'
Код
listen_addresses = '*'
5. Сохраняем изменения
Код
Нажимаем сочетание клавиш Ctrl+X, а далее Y. То есть выходим из файла с сохранением
6. рестарт postgres
Код
sudo service postgresql restart
7. Нахождение второго конфигурационного файла pg_hba.conf. Специальной команды я не нашел, поэтому последовательно использовал команды: cd и ls
cd - перейти в папку , ls - посмотреть содержимое папки
Код
cd etc
затем
Код
ls
чтобы узнать ее подпапки.
Таким образом я добрался до нужного мне файла
/etc/postgresql/13/main/pg_hba.conf
8. Открываем в текстовом редакторе nano для редактирования pg_hba.conf
Код
sudo nano /etc/postgresql/13/main/pg_hba.conf
9. Добавляем в конце файла новую строку вида:
host dbyagrtest uyagr 192.168.20.81/22 password
dbyagrtest - имя базы
uyagr - имя пользователя
192.168.20.81/22 - хост с которого будут идти запросы к postgres
10. Сохраняем изменения
Код
Нажимаем сочетание клавиш Ctrl+X, а далее Y. То есть выходим из файла с сохранением
11. рестарт postgres
Код
sudo service postgresql restart
0
1038 / 321 / 70
Регистрация: 30.08.2017
Сообщений: 2,070
20.06.2023, 23:07 13
всё правильно, только не nano, а vim
не папки и подпапки, а каталоги и подкаталоги или директории и поддиректории
и не service, а systectl
0
Модератор
Эксперт по компьютерным сетямЭксперт HardwareЭксперт Windows
8669 / 4380 / 552
Регистрация: 13.03.2013
Сообщений: 15,972
Записей в блоге: 16
21.06.2023, 06:56 14
Цитата Сообщение от _sg2 Посмотреть сообщение
только не nano, а vim
И то, и другое текстовые редакторы, поэтому тут как кому угодно (лично я за "nano").
0
Kubuntovod
21.06.2023, 07:48
  #15

Не по теме:

Цитата Сообщение от _sg2 Посмотреть сообщение
всё правильно, только не nano, а vim
Та хоть mcedit :) В vim не только лишь все могут распальцовывать.

0
Эксперт по компьютерным сетямЭксперт NIX
13358 / 7490 / 820
Регистрация: 09.09.2009
Сообщений: 29,286
21.06.2023, 09:48 16
Цитата Сообщение от _sg2 Посмотреть сообщение
и не service, а systectl
не вмер Данило, болячка задавила

и,
Цитата Сообщение от yagrus2 Посмотреть сообщение
192.168.20.81/22 - хост с которого будут идти запросы к postgres
...зачем маска, если указан конкретный айпишник?
0
21.06.2023, 09:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
21.06.2023, 09:48
Помогаю со студенческими работами здесь

Как проверить открыт порт или закрыт
Привет! Подскажите как проверить на АРМ открыт порт или закрыт например (110), желательно ч/з cmd?

Как проверить, открыт или закрыт порт по внешнему IP?
Доброго утрица всем... Собственно вопрос в шапке... Нужно проверить порт(закрыт он или открыт) по...

Изменить порт 5432 на 5433
Нужно изменить порт 5432 на 5433 Как это можно сделать? Пытался изменить параметр в файле...

Возникает ошибка HostNotFoundError [SequelizeHostNotFoundError]: getaddrinfo ENOTFOUND 5432 при подключении к PostgreSQL
Здравствуйте! Нужно присоединиться к базе PostgreSQL через NodeJS. Файл index.js: ...

Открыть порт 4444 в брэндмауэре. Антивируса нет. провайдером порт открыт
Подскажите как открыть данный порт,все делал как тут...

Как открыть порт для telnet?
Добрый день, изучил тему по iptables, пока новичок в этом деле. На сервере 2 сетевые карты: lan...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru