Linux如何开放和关闭端口_Linux端口开放与关闭攻略

梦枫吖_8406

梦枫吖_8406

2026-04-04

635人浏览

原创

linux端口控制需协同防火墙规则、服务监听及外部拦截排查:先用systemctl或iptables确认firewalld/ufw/iptables类型,再按对应命令永久开放端口并reload,最后验证服务监听、云安全组和selinux。

linux如何开放和关闭端口_linux端口开放与关闭攻略

Linux 开放或关闭端口,本质不是“操作端口本身”,而是控制防火墙规则 + 确保服务监听 + 排除外部拦截。直接改 /etc/services 或只跑 nc -lp 不起作用,也留不下持久配置。

怎么确认当前用的是 firewalld 还是 ufw?

不同发行版默认防火墙不同,命令混用会失败或无响应:

  • sudo systemctl status firewalld —— CentOS/RHEL/Fedora 常见,返回 active (running) 表示启用
  • sudo systemctl status ufw —— Ubuntu/Debian 默认,ufw status 输出 Status: active 才算生效
  • sudo iptables -L -n —— 若前两者都未运行,可能直连 iptables,但无服务管理,规则重启即丢

注意:firewalld 和 ufw 同时启用会导致规则冲突,建议停掉一个:sudo systemctl stop ufw 或 sudo systemctl stop firewalld。

firewalld 开放/关闭端口必须加 --permanent 且 reload

不加 --permanent 的操作仅临时生效(重启或 reload 后消失);不执行 firewall-cmd --reload,规则根本不进内核。

  • 开放 TCP 8080:sudo firewall-cmd --permanent --add-port=8080/tcp
  • 开放 UDP 53:sudo firewall-cmd --permanent --add-port=53/udp
  • 关闭已添加的端口:sudo firewall-cmd --permanent --remove-port=8080/tcp
  • 立即生效:sudo firewall-cmd --reload
  • 验证是否在规则中:sudo firewall-cmd --list-ports(只列端口),或 sudo firewall-cmd --list-all(含 zone、service、rich rules)

常见坑:误写成 --add-port=8080(缺 /tcp 或 /udp),firewalld 会静默忽略,--list-ports 里看不到,也不报错。

ufw 允许/删除规则要匹配协议才可靠

sudo ufw allow 8080 默认允许 TCP+UDP,但很多服务(如 HTTP)只走 TCP,显式指定更安全,也避免后续排查困惑。

  • 明确只开 TCP:sudo ufw allow 8080/tcp
  • 删规则不能只写端口:sudo ufw delete allow 8080/tcp(必须和添加时协议一致)
  • 查编号再删(适合批量或模糊规则):sudo ufw status numbered → 记下编号 → sudo ufw delete N
  • 查看完整规则:sudo ufw status verbose(含日志、跟踪状态)

注意:ufw 没有 “永久/临时” 概念,所有规则写入配置即持久,但必须 sudo ufw enable 才真正启动防火墙服务——首次启用会提示是否继续,别直接回车跳过。

开了防火墙端口,telnet 还连不上?检查这三处

防火墙只是其中一环,漏掉任一环节都会表现为“端口打不开”:

  • 服务没监听:sudo ss -tlnp | grep :8080 或 sudo lsof -i :8080,无输出说明进程根本没 bind 该端口(比如 Redis 默认 bind 127.0.0.1,需改 redis.conf 中的 bind 行)
  • 云平台拦截:阿里云、腾讯云、AWS 控制台里的“安全组”必须单独放行对应端口,和本地防火墙无关
  • SELinux 阻断(RHEL/CentOS):sudo setenforce 0 临时设为 permissive 模式测试;若恢复连通,说明需调整 SELinux 策略,而非关防火墙

真正验证通断,别只在本机 telnet 127.0.0.1 8080,从另一台机器跑:nc -zv your-server-ip 8080,才能反映真实网络路径。

热门游戏推荐
热门游戏推荐

海量精品小游戏合集,无需安装即点即玩,休闲益智、动作闯关应有尽有,秒开即玩,轻松解压,快乐停不下来

下载

相关标签:

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

相关专题

更多
数据库Delete用法
数据库Delete用法

数据库Delete用法:1、删除单条记录;2、删除多条记录;3、删除所有记录;4、删除特定条件的记录。更多关于数据库Delete的内容,大家可以访问下面的文章。

2023.11.13

2751

4

drop和delete的区别
drop和delete的区别

drop和delete的区别:1、功能与用途;2、操作对象;3、可逆性;4、空间释放;5、执行速度与效率;6、与其他命令的交互;7、影响的持久性;8、语法和执行;9、触发器与约束;10、事务处理。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.12.29

845

3

常用的数据库软件
常用的数据库软件

常用的数据库软件有MySQL、Oracle、SQL Server、PostgreSQL、MongoDB、Redis、Cassandra、Hadoop、Spark和Amazon DynamoDB。更多关于数据库软件的内容详情请看本专题下面的文章。php中文网欢迎大家前来学习。

2023.11.02

4349

19

内存数据库有哪些
内存数据库有哪些

内存数据库有Redis、Memcached、Apache Ignite、VoltDB、TimesTen、H2 Database、Aerospike、Oracle TimesTen In-Memory Database、SAP HANA和ache Cassandra。更多关于内存数据库相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

2023.11.14

3855

11

mongodb和redis哪个读取速度快
mongodb和redis哪个读取速度快

redis 的读取速度比 mongodb 更快。原因包括:1. redis 使用简单的键值存储,而 mongodb 存储 json 格式的数据,需要解析和反序列化。2. redis 使用哈希表快速查找数据,而 mongodb 使用 b-tree 索引。因此,redis 在需要高性能读取操作的应用程序中是一个更好的选择。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.04.02

7032

6

redis怎么做缓存服务器
redis怎么做缓存服务器

redis 作为缓存服务器的答案:redis 是一款开源、高性能、分布式的键值存储,可作为缓存服务器使用。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.04.07

623

6

redis怎么解决数据一致性
redis怎么解决数据一致性

redis 提供了两种一致性模型,以维护副本数据一致性:强一致性 (sync) 确保写操作仅在复制到所有从节点后才完成;最终一致性 (async) 则在主节点上写操作后认为已完成,牺牲一致性换取性能。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.04.07

756

6

mysql和redis怎么保证双写一致性
mysql和redis怎么保证双写一致性

确保 mysql 和 redis 双写一致性的技术包括:1、事务性更新:同时更新 mysql 和 redis,保证一致性;2、主从复制:mysql 主服务器更改同步到 redis 从服务器;3、基于事件的更新:mysql 记录更改并发送到 redis等等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.04.07

6722

6

redis缓存一般存些什么数据
redis缓存一般存些什么数据

redis缓存中存储的数据类型包括:字符串、哈希、列表、集合、有序集合、位图、地理空间数据和hyperloglog。这些数据类型适用于存储各种数据,从简单信息到复杂对象和地理位置。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2024.04.07

1160

6

热门下载

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

精品课程

更多
热门推荐
/
最新课程
phpStudy极速入门视频教程
phpStudy极速入门视频教程

共6课时 | 54.6万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时 | 133.4万人学习