2017-02-21 6 views
0

После изучения GUI для Postgresql я нашел настольный клиент pgadmin 4 действительным.Разрешить доступ к Postgresql с любого компьютера

Я использую сервер Ubuntu 16.04 (капля на цифровом океане) и брандмауэр iptables.

Как разрешить доступ с удаленных компьютеров? Мои компьютеры с установленным pgadmin имеют динамический ip.

+0

Вы используете это в облаке или в своей локальной сети? Насколько вы контролируете свою локальную сеть? – Bronanaza

+0

Это в облаке, на цифровой капельке океана. Корневой доступ. Клиент pgadmin 4 установлен только на локальных компьютерах Windows. –

+1

с точки зрения брандмауэра, открыть порт 5432. Что касается ссылки на него с помощью gui (я использую postico), то основные данные, которые вам нужны, - это хост и логин. DO должен предоставить вам последовательный способ ссылаться на ваш компьютер, будь то IP-адрес или как на AWS, даст вам хост, такой как ec2.amazon-west-2-sdfasdf-324345asdf.aws.com. использовать это. – Bronanaza

ответ

0

Я хотел подключиться к моему облаку, где размещалась база данных Postgresql с удаленных настольных компьютеров с клиентом, таким как pgadmin.

Для достижения этой цели я открыл порт 5432 в IPTables следующих команд:

iptables -I INPUT 1 -m tcp -p tcp --dport 5432 -j ACCEPT 
service iptables save 
service iptables restart 

я разрешен доступ из любого места в Postgresql как так:

nano /etc/postgresql/9.5/main/postgresql.conf 

Edit listen_address так:

listen_addresses = '*' 

сохранить и закрыть редактор nano и выполнить команду postgresql restart

service postgresql restart 
1

Хотите ли вы администрировать Postgresql из локальной сети или вы хотите разрешить другим пользователям в широком мире подключаться к вашему серверу Postgresql?

Для обеспечения доступа к серверу для администрирования его в одной подсети очень просто. Разрешить пользователям в широком мире доступ к вашему серверу неразумно.

Чтобы разрешить удаленный доступ: Вам необходимо отредактировать файл pg_HBA.conf. По умолчанию он позволяет локально локальному серверу подключаться к базе данных. Это настройка безопасности.

Следующий отрывок из моего собственного сервера Postgresql:

# IPv4 local connections: 
host all    all    127.0.0.1/32   md5 

Это говорит о том, что только позволяют хозяевам, которые соответствуют 127.0.0.1/32, чтобы получить доступ к своему серверу.

Если вы хотите, чтобы все компьютеры в подсети, чтобы получить доступ к серверу Postgresql вы можете сделать что-то вроде следующего:

# IPv4 local connections: 
host all    all    192.168.0.1/24   md5 

Приведенный выше пример поможет вам идти, но было бы разумно пойти и кратко прочитайте документацию postgresql для файла pg_hba.conf.

Если вы были особенно безрассудны и безответственны и наслаждаетесь перспективой жить опасно и с регулярными интервалами страха и отвращения, вы бы использовали следующую строку в своем файле pg_hba.conf, хотя я всерьез советовался против нее.

# IPv4 local connections: 
host all    all    0.0.0.0/0   md5 

В основном это говорит: «Кто-нибудь из любой может получить доступ к своему серверу Postgresql» Я представил это просто как пример того, насколько тщательно вы должны быть.

The documentation for the current version of Postgresql 9.6 can be found here Предыдущие версии также доступны рядом с этой ссылкой, но в случае pg_hba.conf вещи, похоже, не изменились между версиями.

Смежные вопросы