赞
踩
PostgreSQL数据库设置密码验证失败延迟时间可以通过安装auth_delay扩展插件来实现,该设置主要是防止暴力破解,在验证失败后, 会延迟一段时间后,才能继续验证。
auth_delay扩展插件就包含在PostgreSQL数据库的源码安装包中,所以你需要先下载与你数据库版本一致的安装包。
安装包下载地址:http://www.postgresql.org/ftp/source/
# 以postgresql-14.7版本为例,解压安装包
tar -zxvf postgresql-14.7.tar.gz
解压后的postgresql-14.7/contrib/auth_delay目录就是auth_delay插件的文件目录
进入postgresql的源安装包文件夹,进入contrib目录,找到auth_delay文件夹,进入并进行安装。
# 安装命令
make && make install
打开${PGDATA?}/postgresql.conf文件,修改shared_preload_libraries参数以包含’auth_delay’,同时找到auth_delay.milliseconds参数,设置延迟时间,单位为毫秒,以下示例5000代表5秒,若文件中没有该参数,添加即可。修改后,需要重启数据库才能生效。
注意:auth_delay认证失败之前等待的毫秒数,缺省是0。以下示例修改表示在一次认证失败后,将延迟5秒中才能继续下一次认证。该选项可以增加暴力破解数据库服务器的密码难度,但它并不能防止拒绝服务攻击,甚至可能恶化它们,因为报告验证失败之前等待的过程将损耗连接槽位。
#增加配置示例
auth_delay.milliseconds='5000'
# 注意自己的配置文件路径
vi /pgsql/postgresql/data/postgresql.conf
使用psql命令进行登录验证。
psql -U admin1
除了需要在postgresql.conf配置文件中装载auth_delay模块,还需要增加auth_delay.milliseconds配置参数,否则该扩展模块的功能无法体现。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。