我目前保护 PHPmyadmin (PMA) 特别是在我的ubuntu-nginx-https
环境中免受暴力攻击 (BFA) 的方法是以下一项或多项:
1)将 PMA 目录的位置更改为有线且难以猜测的位置。
2)从永久IP登录。
3)通过公认的 VPN 登录(这是根据下面的评论进行的编辑)。
4)在单独的会话中临时运行 PMA tmux
:
cat <<-"PHPMYADMIN" > /opt/pma.sh
#!/bin/bash
find /var/www/html -iname '*phpmyadmin*' -exec rm -rf {} \;
cd /var/www/html && wget https://www.phpmyadmin.net/downloads/phpMyAdmin-latest-all-languages.zip
find /var/www/html -type f -iname '*phpmyadmin*.zip' -exec unzip {} \;
find /var/www/html -type d -iname 'phpmyadmin-*' -exec mv {} phpmyadmin \;
sleep 2h
find /var/www/html -iname '*phpmyadmin*' -exec rm -rf {} \;
tmux kill-session
PHPMYADMIN
chmod +x /opt/pma.sh
cat <<-"BASHRC" >> /etc/bash.bashrc
alias pma="tmux new-session -d 'bash /opt/pma.sh'"
BASHRC
source /etc/bash.bashrc
然后:
pma # execute script and use pma for 2 hours.
为什么我不习惯使用这些方式
如果有人发现有线的、不直观的 PMA 路径,它仍然可以尝试暴力破解它,该怎么办?
我负担不起。有时我可能会在公寓之间搬家。
这可能是一个不错的选择,尽管对于这个目的来说可能会让人不知所措(在这个时代我没有其他VPN用途)。
这个脚本相当繁重,并且延长了我使用的已经很长的 Nginx 服务器环境设置 (NSES) 脚本。
我的问题
我还需要做些什么来保护 PMA 在我的环境中免受暴力攻击ubuntu-nginx-https
?
答案1
该文档有一个关于“保护你的 phpMyAdmin 安装”,您应该参考该内容以了解更多详细信息。
我最喜欢的:
- 更改为不明显的目录名称是大大减少暴力攻击的简单方法。攻击者尝试了各种各样的方法,从 /phpmyadmin/ 到 /phpMyAdmin-4.7.7/ 等等,但如果您选择了对您有意义但对于机器人来说不明显的尝试,那么您就会被真正减少你的攻击向量。
- 使用 phpMyAdmin 4.8.0 中的身份验证日志记录(*参见脚注),您可以让 Fail2Ban 等专门工具进行检测和阻止。
- 您可以启用双因素身份验证,从 phpMyAdmin 4.8.0 * 开始。
- 使用验证码会大大降低暴力攻击的有效性。看这和这用于配置指令。
* 在我撰写本文时,4.8.0 尚未发布,但开发快照总体上相当稳定。