如何在Ubuntu服务器上通过UFW规则限制phpMyAdmin端口访问?

风杰小哥_8288

风杰小哥_8288

2026-07-24

746人浏览

原创

应先确认phpMyAdmin实际监听端口(如888或8080),再执行sudo ufw default deny incoming,随后逐条添加sudo ufw allow from IP to any port X,最后sudo ufw enable && sudo ufw reload;务必同步开放SSH端口防锁机,并用sudo ufw status verbose验证规则生效。

只允许特定IP访问phpMyAdmin端口

默认安装的phpmyadmin通常走apache/nginx代理,监听在80/443端口下(即通过 /phpmyadmin 路径访问),但很多用户会单独改用非标准端口(如888、8080)直接暴露服务——这时必须用ufw限制来源ip,否则等于把数据库入口敞开。

关键不是“能不能加规则”,而是规则是否生效且不误杀SSH。常见错误是执行了 sudo ufw allow from 192.168.1.100 to any port 888 却忘了先 deny 888/tcp,导致其他IP仍能连上。

  • 先确认phpMyAdmin实际监听端口:查 /etc/apache2/ports.conf 或 ss -tlnp | grep :888
  • 禁止所有IP访问该端口:sudo ufw deny 888/tcp
  • 再逐条放行可信IP:sudo ufw allow from 203.0.113.42 to any port 888
  • 务必保留SSH端口开放:sudo ufw allow 22/tcp(否则可能锁死)
  • 启用并重载:sudo ufw enable && sudo ufw reload

ufw规则顺序影响实际拦截效果

UFW底层用iptables,规则按添加顺序匹配,**第一条匹配即生效,后续忽略**。很多人加了一堆 allow from ...,但没意识到默认策略是 deny incoming,而UFW在deny前会隐式插入系统服务规则(如SSH),所以你加的allow规则必须在deny之前起效——但UFW不支持手动调序,只能靠添加时机控制。

正确做法是:清空现有规则 → 设定默认策略 → 添加allow → 最后加deny兜底。否则容易出现“规则写了却没拦住”的假象。

  • 查看当前规则及编号:sudo ufw status numbered
  • 删除某条规则(比如编号3):sudo ufw delete 3
  • 设默认入站策略为拒绝:sudo ufw default deny incoming
  • 此时再添加 allow from ... port 888,它就会排在默认deny之前

端口变更后ufw没更新导致白名单失效

如果你把phpMyAdmin从888换到8080,但只改了Apache配置,忘了同步UFW规则,旧的 allow from ... port 888 就完全无效——新端口8080默认被deny incoming挡住,连本机curl都会失败。

btpanel phpsite 宝塔面板PHP网站
btpanel phpsite 宝塔面板PHP网站

宝塔面板 PHP 网站管理:站点创建、删除、启停、PHP 版本切换、域名管理、SSL证书管理、伪静态管理、数据库管理

下载

这不是“规则不生效”,而是规则根本没覆盖目标端口。尤其在宝塔等面板中,端口常被隐藏在面板设置里,容易漏掉UFW同步。

  • 检查当前监听端口:sudo ss -tlnp | grep -E ':(888|8080|80)'
  • 确认UFW是否放行该端口:sudo ufw status | grep 8080
  • 若无输出,说明该端口未被显式允许,即使你允许过888也无关
  • 补加规则后必须 reload:sudo ufw allow from 198.51.100.25 to any port 8080 && sudo ufw reload

ufw verbose模式才能看清真实匹配路径

sudo ufw status 只显示端口和协议,看不出规则是否真在拦截流量。比如你看到 888/tcp ALLOW IN Anywhere,但实际访问仍超时,问题可能出在云服务商安全组或NAT网关上——而UFW根本没机会处理那个包。

用 verbose 模式才能看到规则类型(是IPv4还是IPv6)、接口(是eth0还是docker0)、甚至源地址范围,这对排查“规则写了但没生效”特别关键。

  • 运行:sudo ufw status verbose
  • 重点看 “To” 列是否含 888/tcp,“From”列是否是你期望的IP段
  • 如果 “Logging” 显示 on,可查日志:sudo tail -f /var/log/ufw.log | grep 888
  • 若日志无记录,说明流量压根没到UFW——去查云平台安全组或本地路由

实际限制phpMyAdmin访问,难点不在加几条命令,而在于理解UFW只是网络栈中的一环。它不感知HTTP路径、不校验登录态、也不管你是用域名还是IP访问——它只认IP+端口+协议。任何绕过端口直连的方案(比如反向代理、SSH隧道)都得另配规则,不能指望一条 allow from 通吃。

php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!

相关文章

PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

ubuntu phpmyadmin php

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
php文件怎么打开
php文件怎么打开

打开php文件步骤:1、选择文本编辑器;2、在选择的文本编辑器中,创建一个新的文件,并将其保存为.php文件;3、在创建的PHP文件中,编写PHP代码;4、要在本地计算机上运行PHP文件,需要设置一个服务器环境;5、安装服务器环境后,需要将PHP文件放入服务器目录中;6、一旦将PHP文件放入服务器目录中,就可以通过浏览器来运行它。

2023.09.01

11584

6

php怎么取出数组的前几个元素
php怎么取出数组的前几个元素

取出php数组的前几个元素的方法有使用array_slice()函数、使用array_splice()函数、使用循环遍历、使用array_slice()函数和array_values()函数等。本专题为大家提供php数组相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.11

6681

5

php反序列化失败怎么办
php反序列化失败怎么办

php反序列化失败的解决办法检查序列化数据。检查类定义、检查错误日志、更新PHP版本和应用安全措施等。本专题为大家提供php反序列化相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.11

2175

5

php怎么连接mssql数据库
php怎么连接mssql数据库

连接方法:1、通过mssql_系列函数;2、通过sqlsrv_系列函数;3、通过odbc方式连接;4、通过PDO方式;5、通过COM方式连接。想了解php怎么连接mssql数据库的详细内容,可以访问下面的文章。

2023.10.23

4228

4

php连接mssql数据库的方法
php连接mssql数据库的方法

php连接mssql数据库的方法有使用PHP的MSSQL扩展、使用PDO等。想了解更多php连接mssql数据库相关内容,可以阅读本专题下面的文章。

2023.10.23

4954

6

html怎么上传
html怎么上传

html通过使用HTML表单、JavaScript和PHP上传。更多关于html的问题详细请看本专题下面的文章。php中文网欢迎大家前来学习。

2023.11.03

3891

9

PHP出现乱码怎么解决
PHP出现乱码怎么解决

PHP出现乱码可以通过修改PHP文件头部的字符编码设置、检查PHP文件的编码格式、检查数据库连接设置和检查HTML页面的字符编码设置来解决。更多关于php乱码的问题详情请看本专题下面的文章。php中文网欢迎大家前来学习。

2023.11.09

5597

8

php文件怎么在手机上打开
php文件怎么在手机上打开

php文件在手机上打开需要在手机上搭建一个能够运行php的服务器环境,并将php文件上传到服务器上。再在手机上的浏览器中输入服务器的IP地址或域名,加上php文件的路径,即可打开php文件并查看其内容。更多关于php相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

2023.11.13

4382

8

sprintf函数用法详解
sprintf函数用法详解

sprintf函数的用法:1、格式化字符串;2、指定输出宽度和精度;3、返回值。更多关于sprintf函数用法详解的内容,大家可以阅读下面的文章。

2023.11.27

12322

4

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程