【发布时间】:2011-11-25 12:03:29
【问题描述】:
我在我的 Linux 操作系统中安装了 postgressql 8.4-91 版本。 在转到安装它的目录时,我能够在目录中找到 psql 。 我有 2 个问题。
- 在输入 ./psql 时,它要求输入密码并且不接受任何密码。
- 在 typibf psql 上,我收到“找不到命令”
【问题讨论】:
标签: linux postgresql operating-system
我在我的 Linux 操作系统中安装了 postgressql 8.4-91 版本。 在转到安装它的目录时,我能够在目录中找到 psql 。 我有 2 个问题。
【问题讨论】:
标签: linux postgresql operating-system
第二个很简单。大多数安全的 Linux 系统不会在路径中包含.(当前目录)(即$PATH)。
这避免了在您的目录中提供ls 脚本的攻击媒介,如果有人愚蠢到在其路径中ls 的实际位置之前有.,该脚本就会运行。
如果您真的希望能够在没有点的情况下运行它,最安全的选择是设置一个别名,例如:
alias pg='./psql'
然后使用pg 运行它。我建议反对将. 放入您的$PATH 变量中,至少在共享机器上。如果你是唯一一个能够在你的机器上乱搞的人,那么你可能会安全地做到这一点。
首先,您可能可以通过编辑pg_hba.conf 文件来摆脱身份验证,使用alter user(或add user)设置密码然后重新打开身份验证。
或者你可以在你的开发环境中运行没有身份验证,就像我们很多人一样:-)
【讨论】:
$PATH 环境变量,而不是命令行。