0


运维系列(亲测有效):PostgreSQL默认密码详解(在不知道用户名密码的情况下查看数据库)

PostgreSQL默认密码详解


PostgreSQL默认密码详解

1、pgsql默认密码

  1. PostgreSQL

在安装时默认密码设置为“

  1. postgres

”,给数据库安全带来了隐患。因此,在安装

  1. PostgreSQL

之后,最好更改初始密码,以提高数据库的安全性。

下面是一个更改初始密码的示例:

  1. # 进入PostgreSQL Shell(psql)> sudo -u postgres psql
  1. # 更改密码
  2. postgres=# ALTER USER postgres WITH PASSWORD 'new_password';

2、postgresql更改密码

更改

  1. PostgreSQL用户密码

的方法已经在第一部分中介绍过,可以使用ALTER USER语句更改任何用户的密码。 但是,某些情况下,用户可能忘记了他们的密码或无法使用超级用户(如

  1. postgres

)更改密码。 在这种情况下,您可以使用以下步骤更改postgres用户的密码:

1. 停止PostgreSQL服务器;

  1. # 停止PostgreSQL服务> sudo systemctl stop postgresql

2. 编辑pg_hba.conf文件,允许本地访问

  1. $ sudo vim /var/lib/pgsql/data/pg_hba.conf

在文件的最后添加以下内容:

  1. #添加如下内容即可:
  2. host allall127.0.0.1/32 md5

3. 以身份验证的方式启动PostgreSQL;

  1. # 以身份验证的方式启动PostgreSQL> sudo PGSETUP_INITDB_OPTIONS="--auth-host=md5"/usr/pgsql-13/bin/pg_ctl start-D /var/lib/pgsql/13/data-l logfile

4. 使用以下命令更改postgres用户的密码。

  1. > psql -U postgres
  1. > \password postgres

输入新密码并按

  1. Enter

键,之后要求再次输入新密码以确认。 登录的密码现在已更改为您输入的新密码。

3、设置PostgreSQL数据库密码

以下演示如何设置postgresql数据库密码和超级用户postgres的密码。

1. 重新启动PostgreSQL,并使用以下命令更改postgres用户的密码。

  1. > sudo systemctl restart postgresql
  1. > sudo -u postgres psql
  1. >ALTERUSER postgres with encrypted password 'your-password';

2. 修改pg_hba.conf以允许远程连接;

  1. > sudo vim /var/lib/pgsql/13/data/pg_hba.conf

在文件最后添加以下内容:

  1. # 添加如下内容:
  2. host allall0.0.0.0/0 md5

3. 修改postgresql.conf文件以允许远程连接

  1. > sudo vim /var/lib/pgsql/13/data/postgresql.conf

找到听连接字符串,其可如以下所示:

  1. #监听地址
  2. listen_addresses ='localhost'

修改为以下内容

  1. listen_addresses ='*'

4. 重启PostgreSQL。

  1. > sudo systemctl restart postgresql

4、忘记postgresql密码,怎么办

如果您忘记了

  1. postgres

用户的密码,那我们可以通过以下步骤重置。

1. 编辑pg_hba.conf文件,允许本地访问

  1. $ sudo vim /usr/pgsql-14/data/pg_hba.conf

在文件的最后添加以下内容:

  1. host allall127.0.0.1/32 trust

2. 停止PostgreSQL服务器

  1. > sudo systemctl stop postgresql

3. 以不需要密码的方式启动PostgreSQL

  1. > sudo systemctl start postgresql
  1. > sudo -i -u postgres
  1. $ psql

4. 使用以下命令更改postgres用户的密码。

  1. ALTERUSER postgres with encrypted password 'your-password';

5. 修改pg_hba.conf以禁用无密码访问

  1. $ sudo vim /var/lib/pgsql/data/pg_hba.conf

将文件中所有的

  1. localallall trust
  2. host allall127.0.0.1/32 trust

替换为如下所示:

  1. localallall md5
  2. host allall127.0.0.1/32 md5

6. 重新启动PostgreSQL

  1. > sudo systemctl restart postgresql

5、postgresql源码加密

  1. PostgreSQL

支持数据和传输功能的加密。 在某些情况下,如包含敏感数据的生产环境中,使用加密功能可以确保数据不会被未经授权的人访问。

启用

  1. PostgreSQL SSL

  1. # 修改postgresql.conf文件以启用SSL
  2. listen_addresses ='localhost'
  3. ssl =on
  4. ssl_ciphers ='HIGH:MEDIUM:+3DES:!aNULL'
  5. ssl_ca_file ='/etc/ssl/certs/ca-certificates.crt'
  6. ssl_cert_file ='/etc/ssl/certs/ssl-cert-snakeoil.pem'
  7. ssl_key_file ='/etc/ssl/private/ssl-cert-snakeoil.key'
  1. # 重启PostgreSQL服务器
  2. sudo systemctl restart postgresql

七、查看postgresql用户密码

可以在

  1. PostgreSQL Shell

中使用以下命令:

  1. SELECT usename, passwd FROM pg_shadow;

除此之外,您还可以使用以下命令查看指定用户的密码:

  1. SELECT passwd FROM pg_shadow WHERE usename='username';

后言:

小编不知道用户名密码,甚至不知道相关服务怎么看,这个服务是其他软件自带的,只知道服务起来了(可以看那个软件的status),用户名全靠猜,默认用户名也没有

在这里插入图片描述


梧桐

PostgreSQL默认密码详解


本文转载自: https://blog.csdn.net/weixin_54626591/article/details/137817560
版权归原作者 坦笑&&life 所有, 如有侵权,请联系我们删除。

“运维系列(亲测有效):PostgreSQL默认密码详解(在不知道用户名密码的情况下查看数据库)”的评论:

还没有评论