`
radzhang
  • 浏览: 307734 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

centos 下安装postgres的远程连接问题

 
阅读更多

按照postgres官网的步骤,yum安装postgresql 9.4成功。

配置文件pg_hba.conf和postgresql.conf也更改了远程连接需要改的地方。

然后远程用pgadmin就是无法连接。关闭centos的防火墙service iptables stop后,就能连接了。

防火墙也添加了

-A INPUT -m state --state NEW -m tcp -p tcp --dport 5432 -j ACCEPT

还是不行。

后来改成

-A INPUT  -p tcp -m tcp --dport 5432 -j ACCEPT

然后service iptables restart,就能远程连接了。

看来和防火墙的--state NEW 是否是 

4)基于状态的匹配扩展(连接跟踪)
每个网络连接包括以下信息:源地址、目标地址、源端口、目的端口,称为套接字对(socket pairs);协议类型、连接状态(TCP协议)
和超时时间等。防火墙把这些信息称为状态(stateful)。状态包过滤防火墙能在内存中维护一个跟踪状态的表,比简单包过滤防火墙具有更大的安全性,命令格式如下: 
iptables -m state –-state [!]state [,state,state,state]
其中,state表是一个逗号分割的列表,用来指定连接状态,4种:
>NEW: 该包想要开始一个新的连接(重新连接或连接重定向)
>RELATED:该包是属于某个已经建立的连接所建立的新连接。举例:
FTP的数据传输连接和控制连接之间就是RELATED关系。
>ESTABLISHED:该包属于某个已经建立的连接。
>INVALID:该包不匹配于任何连接,通常这些包被DROP。
例如:
(1)在INPUT链添加一条规则,匹配已经建立的连接或由已经建立的连接所建立的新连接。即匹配所有的TCP回应包。
#iptables -A INPUT -m state –state RELATED,ESTABLISHED

有关,以后再研究

 

在CentOS中,iptables规则是从一个文件(/etc/sysconfig/iptables)中,从上到下读取配置的,后一条的规则能覆盖(override)前一条规则,例如默认规则下有2条拒绝规则:

-A INPUT -j REJECT --reject-with icmp-host-prohibited   

-A FORWARD -j REJECT --reject-with icmp-host-prohibited

这两条规则的含义是拒绝其他不符合规则的数据包,并且给被拒绝的主机发送一条icmp host prohibited的消息。并且这两条规则可以认为是iptables对默认规则的补充,因为在这些默认规则之前,有:INPUT ACCEPT [0:0]这样的规则,这些规则表示默认全部允许。

 

那说了这么多,到底要表达什么呢?不知道有没有这样的印象,就是在CentOS中直接使用iptables命令插入一个规则,并没有起作用,原因就是它默认被插入到了REJECT规则的下面?例如执行“iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 8088 -j ACCEPT”却发现不好用,原因是它插入到“-A INPUT -j REJECT --reject-with icmp-host-prohibited”的下面,要想好用,那必须插入到它的前面,例如执行“iptables -I INPUT -p tcp -m state --state NEW -m tcp --dport 8088 -j ACCEPT”,这样它就会被添加到INPUT链的最前端,也就起到预期的作用了。

分享到:
评论

相关推荐

    centos7离线安装postgres10和postgis

    9. **配置安全**:默认情况下,PostgreSQL不允许远程连接。如果需要远程访问,修改`/var/lib/pgsql/10/data/pg_hba.conf`并重启服务。 通过以上步骤,你就成功地在CentOS 7上离线安装了PostgreSQL 10和PostGIS。这...

    postgres9.6 离线安装部署(centos7.x)

    最后,你可以使用 `psql` 客户端或者任何其他 PostgreSQL 客户端工具测试远程连接,确保一切正常工作。 离线安装 PostgreSQL 9.6 在 CentOS 7.x 上的过程就是这样,每个步骤都是确保数据库服务能够正确、安全地运行...

    用于说明在 CentOS 下安装 PGSQL

    根据给定文件的信息,我们可以总结出以下关于在CentOS下安装PostgreSQL的关键知识点: ### 一、PostgreSQL简介 PostgreSQL是一种开源的对象关系型数据库系统,它提供了强大的数据存储与检索功能,支持复杂的SQL...

    CentOS6平台下PostgreSQL数据库的安装

    在本文中,我们将深入探讨如何在CentOS 6平台上安装和配置PostgreSQL数据库,并了解如何在Windows环境下使用数据库管理工具pgAdmin访问这个数据库。PostgreSQL是一个开源的关系型数据库管理系统(RDBMS),它以其...

    Linux centos7 postgresql12 离线安装包

    在Linux CentOS7系统中安装PostgreSQL 12数据库是一个常见的任务,特别是在没有互联网连接或网络环境受限的情况下,离线安装包成为了唯一的选择。本指南将详细介绍如何使用离线安装包在CentOS7上安装PostgreSQL 12。...

    Centos 6的postgresql安装

    #### 七、修改配置文件以允许远程连接 1. **编辑postgresql.conf文件**: ```bash # vi /var/lib/pgsql/9.4/data/postgresql.conf ``` 将以下行中的`localhost`替换为`*`: ```conf listen_addresses = '*' ...

    CentOS7 安装 PostgreSQL11的方法步骤

    如果你的服务器在云环境中,记得在阿里云的安全组规则中打开PostgreSQL端口,通常为5432,以便通过Navicat或其他客户端工具进行远程连接。 8. **连接数据库和修改密码**: 作为`postgres`用户登录,并在`psql`...

    timescaledb2.3.1+pg11.7 for Centos7安装包及依赖包

    在CentOS7操作系统环境下,安装这两个组件需要遵循一定的步骤。本文将详细介绍如何安装TimescaleDB 2.3.1和PostgreSQL 11.7,并解决其依赖问题。 首先,我们需要确保系统已经安装了PostgreSQL的基础环境。在CentOS7...

    CentOS 7下安装PostgreSQL 9.6的教程分享

    默认情况下,PostgreSQL服务是运行在`postgres`用户下,并且不允许远程连接。要进行远程访问,你需要编辑`/var/lib/pgsql/9.6/data/pg_hba.conf`文件,允许指定IP或所有IP的连接,并在`/var/lib/pgsql/9.6/data/...

    Linux CentOS 7安装PostgreSQL9.3图文教程

    在Linux CentOS 7环境下安装PostgreSQL 9.3是一个常见的任务,尤其对于那些需要搭建数据库服务器的用户来说。本文将详细讲解如何通过二进制安装包来安装这个关系型数据库管理系统。 首先,确保你的系统已经更新到...

    postgreSQL pgsql13.5 windows安装与 Linux 安装 及 常见命令 教程

    - 修改`/var/lib/pgsql/13/data/pg_hba.conf`,允许远程连接。 - 修改`/var/lib/pgsql/13/data/postgresql.conf`,将监听地址设置为0.0.0.0,启用端口5432。 7. **重启数据库** ``` systemctl restart ...

    PGSQL for CentOS7 install script

    **PGSQL for CentOS7 安装脚本** 在Linux环境中,PostgreSQL(通常简称为PGSQL)是一种功能强大、开源的关系型数据库管理系统。对于初学者和频繁使用PGSQL的用户,掌握其安装过程至关重要。本安装脚本是为CentOS 7...

    centos 7.9 离线部署postgresql 14+

    为了允许远程连接,我们需要编辑`pg_hba.conf`和`postgresql.conf`文件。在`pg_hba.conf`中添加或修改如下行: ```conf host all all 0.0.0.0/0 md5 ``` 在`postgresql.conf`中,找到`listen_addresses`行,将其改...

    postgresql离线安装包及依赖库

    离线安装包通常是为了在没有网络连接或网络环境不稳定的情况下安装软件,避免了下载大量数据的问题。 在“postgresql离线安装包及依赖库”中,包含的主要内容可能有以下几个方面: 1. PostgreSQL安装包:安装包包...

    基于linux的postgresql数据库部署以及PostGIS安装

    在 CentOS 7.5 环境下,我们可以使用以下命令来安装 PostgreSQL: ``` yum install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm ``` 然后,我们可以...

    timescaledb2.3.0+pg12.2 for Centos7安装包及依赖包

    配置PostgreSQL允许远程连接(如果需要的话)并在防火墙中打开5432端口: ```bash sudo vi /var/lib/pgsql/12/data/pg_hba.conf # 添加或修改远程连接规则 sudo vi /var/lib/pgsql/12/data/postgresql.conf # 修改...

    00 PostgreSQL_9_yum安装

    在`/var/lib/pgsql/9.6/data/postgresql.conf`中修改监听端口为5432,允许远程连接。 2.2.3 开启5432端口: 使用iptables命令开启5432端口,并保存和重启iptables服务以应用更改。 2.3 开机启动PostgreSQL服务:...

    Postgresql连接oracle驱动并实现读写

    本文档将详细介绍如何在CentOS 6.2环境下通过PostgreSQL 9.5.6使用`oracle_fdw`驱动程序来连接Oracle 11.2客户端,并实现数据的读写操作。`oracle_fdw`是PostgreSQL的一个外键数据类型扩展,它允许PostgreSQL服务器...

    Postgresql开启远程访问的步骤全纪录

    在某些情况下,如文中提到的 CentOS 7 上安装的 PostgreSQL 9.4,路径可能是 `/etc/postgresql/9.4/main/pg_hba.conf`。如果找不到,可以使用 SQL 命令 `show hba_file;` 来查询实际路径。 3. **重启 PostgreSQL ...

Global site tag (gtag.js) - Google Analytics